blob: f6381d78a554b4316ca735748e341b90fa7a0d88 [file] [log] [blame] [edit]
{
"name": "Mir_0_3",
"kind": "Digraph",
"nodes": [
{
"label": "bb0",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb0",
"stmts": [
"StorageLive(_1)",
"_1 = Vec::<i32>::new()"
]
},
{
"label": "bb1",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb1",
"stmts": [
"resume"
]
},
{
"label": "bb2",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb2",
"stmts": [
"StorageLive(_2)", "StorageLive(_3)", "(_3.0: i32) = const 1_i32", "(_3.1: i32) = const 10_i32",
"_2 = <std::ops::Range<i32> as IntoIterator>::into_iter(move _3)"
]
},
{
"label": "bb3",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb3",
"stmts": [
"StorageDead(_3)", "StorageLive(_4)", "_4 = move _2",
"goto"
]
},
{
"label": "bb4",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb4",
"stmts": [
"drop(_1)"
]
},
{
"label": "bb5",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb5",
"stmts": [
"StorageLive(_5)", "StorageLive(_6)", "StorageLive(_7)", "StorageLive(_8)", "_8 = &mut _4", "_7 = &mut (*_8)",
"_6 = <std::ops::Range<i32> as Iterator>::next(move _7)"
]
},
{
"label": "bb6",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb6",
"stmts": [
"StorageDead(_7)", "_9 = discriminant(_6)",
"switchInt(move _9)"
]
},
{
"label": "bb7",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb7",
"stmts": [
"StorageDead(_8)", "StorageDead(_6)", "StorageDead(_5)", "StorageDead(_4)", "StorageDead(_2)", "StorageLive(_21)", "StorageLive(_22)", "(_22.0: i32) = const 1_i32", "(_22.1: i32) = const 10_i32",
"_21 = <std::ops::Range<i32> as IntoIterator>::into_iter(move _22)"
]
},
{
"label": "bb8",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb8",
"stmts": [
"unreachable"
]
},
{
"label": "bb9",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb9",
"stmts": [
"StorageLive(_10)", "_10 = ((_6 as Some).0: i32)", "StorageLive(_11)", "_11 = _10", "_5 = move _11", "StorageDead(_11)", "StorageDead(_10)", "StorageDead(_8)", "StorageDead(_6)", "StorageLive(_12)", "_12 = _5", "StorageLive(_13)", "StorageLive(_14)", "_14 = _12", "_15 = const false", "_16 = Eq(_14, const i32::MIN)", "_17 = BitAnd(move _15, move _16)",
"assert(!move _17, \"attempt to compute the remainder of `{} % {}` which would overflow\", _14, const 2_i32)"
]
},
{
"label": "bb10",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb10",
"stmts": [
"_13 = Rem(move _14, const 2_i32)", "StorageDead(_14)",
"switchInt(move _13)"
]
},
{
"label": "bb11",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb11",
"stmts": [
"StorageDead(_13)",
"goto"
]
},
{
"label": "bb12",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb12",
"stmts": [
"StorageDead(_13)", "StorageLive(_18)", "StorageLive(_19)", "_19 = &mut _1", "StorageLive(_20)", "_20 = _12",
"_18 = Vec::<i32>::push(move _19, move _20)"
]
},
{
"label": "bb13",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb13",
"stmts": [
"StorageDead(_20)", "StorageDead(_19)", "StorageDead(_18)",
"goto"
]
},
{
"label": "bb14",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb14",
"stmts": [
"StorageDead(_12)", "StorageDead(_5)",
"goto"
]
},
{
"label": "bb15",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb15",
"stmts": [
"StorageDead(_22)", "StorageLive(_23)", "_23 = move _21",
"goto"
]
},
{
"label": "bb16",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb16",
"stmts": [
"StorageLive(_24)", "StorageLive(_25)", "StorageLive(_26)", "StorageLive(_27)", "_27 = &mut _23", "_26 = &mut (*_27)",
"_25 = <std::ops::Range<i32> as Iterator>::next(move _26)"
]
},
{
"label": "bb17",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb17",
"stmts": [
"StorageDead(_26)", "_28 = discriminant(_25)",
"switchInt(move _28)"
]
},
{
"label": "bb18",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb18",
"stmts": [
"_0 = const ()", "StorageDead(_27)", "StorageDead(_25)", "StorageDead(_24)", "StorageDead(_23)", "StorageDead(_21)",
"drop(_1)"
]
},
{
"label": "bb19",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb19",
"stmts": [
"unreachable"
]
},
{
"label": "bb20",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb20",
"stmts": [
"StorageLive(_29)", "_29 = ((_25 as Some).0: i32)", "StorageLive(_30)", "_30 = _29", "_24 = move _30", "StorageDead(_30)", "StorageDead(_29)", "StorageDead(_27)", "StorageDead(_25)", "StorageLive(_31)", "_31 = _24", "StorageLive(_32)", "StorageLive(_33)", "_33 = _31", "_34 = const false", "_35 = Eq(_33, const i32::MIN)", "_36 = BitAnd(move _34, move _35)",
"assert(!move _36, \"attempt to compute the remainder of `{} % {}` which would overflow\", _33, const 3_i32)"
]
},
{
"label": "bb21",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb21",
"stmts": [
"_32 = Rem(move _33, const 3_i32)", "StorageDead(_33)",
"switchInt(move _32)"
]
},
{
"label": "bb22",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb22",
"stmts": [
"StorageDead(_32)",
"goto"
]
},
{
"label": "bb23",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb23",
"stmts": [
"StorageDead(_32)", "StorageLive(_37)", "StorageLive(_38)", "_38 = &mut _1", "StorageLive(_39)", "_39 = _31",
"_37 = Vec::<i32>::push(move _38, move _39)"
]
},
{
"label": "bb24",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb24",
"stmts": [
"StorageDead(_39)", "StorageDead(_38)", "StorageDead(_37)",
"goto"
]
},
{
"label": "bb25",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb25",
"stmts": [
"StorageDead(_31)", "StorageDead(_24)",
"goto"
]
},
{
"label": "bb26",
"style": {
"title_bg": null,
"last_stmt_sep": false
},
"title": "bb26",
"stmts": [
"StorageDead(_1)",
"return"
]
}
],
"edges": [
{
"from": "bb0",
"to": "bb2",
"label": "return"
},
{
"from": "bb2",
"to": "bb3",
"label": "return"
},
{
"from": "bb2",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb3",
"to": "bb5",
"label": ""
},
{
"from": "bb4",
"to": "bb1",
"label": "return"
},
{
"from": "bb5",
"to": "bb6",
"label": "return"
},
{
"from": "bb5",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb6",
"to": "bb7",
"label": "0_isize"
},
{
"from": "bb6",
"to": "bb9",
"label": "1_isize"
},
{
"from": "bb6",
"to": "bb8",
"label": "otherwise"
},
{
"from": "bb7",
"to": "bb15",
"label": "return"
},
{
"from": "bb7",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb9",
"to": "bb10",
"label": "success"
},
{
"from": "bb9",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb10",
"to": "bb12",
"label": "0_i32"
},
{
"from": "bb10",
"to": "bb11",
"label": "otherwise"
},
{
"from": "bb11",
"to": "bb14",
"label": ""
},
{
"from": "bb12",
"to": "bb13",
"label": "return"
},
{
"from": "bb12",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb13",
"to": "bb14",
"label": ""
},
{
"from": "bb14",
"to": "bb5",
"label": ""
},
{
"from": "bb15",
"to": "bb16",
"label": ""
},
{
"from": "bb16",
"to": "bb17",
"label": "return"
},
{
"from": "bb16",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb17",
"to": "bb18",
"label": "0_isize"
},
{
"from": "bb17",
"to": "bb20",
"label": "1_isize"
},
{
"from": "bb17",
"to": "bb19",
"label": "otherwise"
},
{
"from": "bb18",
"to": "bb26",
"label": "return"
},
{
"from": "bb20",
"to": "bb21",
"label": "success"
},
{
"from": "bb20",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb21",
"to": "bb23",
"label": "0_i32"
},
{
"from": "bb21",
"to": "bb22",
"label": "otherwise"
},
{
"from": "bb22",
"to": "bb25",
"label": ""
},
{
"from": "bb23",
"to": "bb24",
"label": "return"
},
{
"from": "bb23",
"to": "bb4",
"label": "unwind"
},
{
"from": "bb24",
"to": "bb25",
"label": ""
},
{
"from": "bb25",
"to": "bb16",
"label": ""
}
]
}