|
| 1 | +digraph block { |
| 2 | + N0[label="entry"]; |
| 3 | + N1[label="exit"]; |
| 4 | + N2[label="expr 24"]; |
| 5 | + N3[label="local mut x"]; |
| 6 | + N4[label="expr 24"]; |
| 7 | + N5[label="local mut y"]; |
| 8 | + N6[label="expr 24"]; |
| 9 | + N7[label="local mut z"]; |
| 10 | + N8[label="(dummy_node)"]; |
| 11 | + N9[label="expr loop {\l if x == 0 { break ; \"unreachable\"; }\l x -= 1;\l loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l }\l}\l"]; |
| 12 | + N10[label="expr x"]; |
| 13 | + N11[label="expr 0"]; |
| 14 | + N12[label="expr x == 0"]; |
| 15 | + N13[label="expr break"]; |
| 16 | + N14[label="(dummy_node)"]; |
| 17 | + N15[label="expr \"unreachable\""]; |
| 18 | + N16[label="block { break ; \"unreachable\"; }"]; |
| 19 | + N17[label="expr if x == 0 { break ; \"unreachable\"; }"]; |
| 20 | + N18[label="expr 1"]; |
| 21 | + N19[label="expr x"]; |
| 22 | + N20[label="expr x -= 1"]; |
| 23 | + N21[label="(dummy_node)"]; |
| 24 | + N22[label="expr loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l}\l"]; |
| 25 | + N23[label="expr y"]; |
| 26 | + N24[label="expr 0"]; |
| 27 | + N25[label="expr y == 0"]; |
| 28 | + N26[label="expr break"]; |
| 29 | + N27[label="(dummy_node)"]; |
| 30 | + N28[label="expr \"unreachable\""]; |
| 31 | + N29[label="block { break ; \"unreachable\"; }"]; |
| 32 | + N30[label="expr if y == 0 { break ; \"unreachable\"; }"]; |
| 33 | + N31[label="expr 1"]; |
| 34 | + N32[label="expr y"]; |
| 35 | + N33[label="expr y -= 1"]; |
| 36 | + N34[label="(dummy_node)"]; |
| 37 | + N35[label="expr loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }"]; |
| 38 | + N36[label="expr z"]; |
| 39 | + N37[label="expr 0"]; |
| 40 | + N38[label="expr z == 0"]; |
| 41 | + N39[label="expr break"]; |
| 42 | + N40[label="(dummy_node)"]; |
| 43 | + N41[label="expr \"unreachable\""]; |
| 44 | + N42[label="block { break ; \"unreachable\"; }"]; |
| 45 | + N43[label="expr if z == 0 { break ; \"unreachable\"; }"]; |
| 46 | + N44[label="expr 1"]; |
| 47 | + N45[label="expr z"]; |
| 48 | + N46[label="expr z -= 1"]; |
| 49 | + N47[label="block { if z == 0 { break ; \"unreachable\"; } z -= 1; }"]; |
| 50 | + N48[label="expr x"]; |
| 51 | + N49[label="expr 10"]; |
| 52 | + N50[label="expr x > 10"]; |
| 53 | + N51[label="expr return"]; |
| 54 | + N52[label="(dummy_node)"]; |
| 55 | + N53[label="expr \"unreachable\""]; |
| 56 | + N54[label="block { return; \"unreachable\"; }"]; |
| 57 | + N55[label="expr if x > 10 { return; \"unreachable\"; }"]; |
| 58 | + N56[label="block {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l}\l"]; |
| 59 | + N57[label="block {\l if x == 0 { break ; \"unreachable\"; }\l x -= 1;\l loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l }\l}\l"]; |
| 60 | + N58[label="block {\l let mut x = 24;\l let mut y = 24;\l let mut z = 24;\l loop {\l if x == 0 { break ; \"unreachable\"; }\l x -= 1;\l loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l }\l }\l}\l"]; |
| 61 | + N0 -> N2; |
| 62 | + N2 -> N3; |
| 63 | + N3 -> N4; |
| 64 | + N4 -> N5; |
| 65 | + N5 -> N6; |
| 66 | + N6 -> N7; |
| 67 | + N7 -> N8; |
| 68 | + N8 -> N10; |
| 69 | + N10 -> N11; |
| 70 | + N11 -> N12; |
| 71 | + N12 -> N13; |
| 72 | + N13 -> N9[label="exiting scope_0 expr break,\lexiting scope_1 stmt break ;,\lexiting scope_2 block { break ; \"unreachable\"; },\lexiting scope_3 expr if x == 0 { break ; \"unreachable\"; },\lexiting scope_4 stmt if x == 0 { break ; \"unreachable\"; },\lexiting scope_5 block {\l if x == 0 { break ; \"unreachable\"; }\l x -= 1;\l loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l }\l}\l"]; |
| 73 | + N14 -> N15; |
| 74 | + N15 -> N16; |
| 75 | + N12 -> N17; |
| 76 | + N16 -> N17; |
| 77 | + N17 -> N18; |
| 78 | + N18 -> N19; |
| 79 | + N19 -> N20; |
| 80 | + N20 -> N21; |
| 81 | + N21 -> N23; |
| 82 | + N23 -> N24; |
| 83 | + N24 -> N25; |
| 84 | + N25 -> N26; |
| 85 | + N26 -> N22[label="exiting scope_0 expr break,\lexiting scope_1 stmt break ;,\lexiting scope_2 block { break ; \"unreachable\"; },\lexiting scope_3 expr if y == 0 { break ; \"unreachable\"; },\lexiting scope_4 stmt if y == 0 { break ; \"unreachable\"; },\lexiting scope_5 block {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l}\l"]; |
| 86 | + N27 -> N28; |
| 87 | + N28 -> N29; |
| 88 | + N25 -> N30; |
| 89 | + N29 -> N30; |
| 90 | + N30 -> N31; |
| 91 | + N31 -> N32; |
| 92 | + N32 -> N33; |
| 93 | + N33 -> N34; |
| 94 | + N34 -> N36; |
| 95 | + N36 -> N37; |
| 96 | + N37 -> N38; |
| 97 | + N38 -> N39; |
| 98 | + N39 -> N35[label="exiting scope_0 expr break,\lexiting scope_1 stmt break ;,\lexiting scope_2 block { break ; \"unreachable\"; },\lexiting scope_3 expr if z == 0 { break ; \"unreachable\"; },\lexiting scope_4 stmt if z == 0 { break ; \"unreachable\"; },\lexiting scope_5 block { if z == 0 { break ; \"unreachable\"; } z -= 1; }"]; |
| 99 | + N40 -> N41; |
| 100 | + N41 -> N42; |
| 101 | + N38 -> N43; |
| 102 | + N42 -> N43; |
| 103 | + N43 -> N44; |
| 104 | + N44 -> N45; |
| 105 | + N45 -> N46; |
| 106 | + N46 -> N47; |
| 107 | + N47 -> N34; |
| 108 | + N35 -> N48; |
| 109 | + N48 -> N49; |
| 110 | + N49 -> N50; |
| 111 | + N50 -> N51; |
| 112 | + N51 -> N1[label="exiting scope_0 expr loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l}\l,\lexiting scope_1 expr loop {\l if x == 0 { break ; \"unreachable\"; }\l x -= 1;\l loop {\l if y == 0 { break ; \"unreachable\"; }\l y -= 1;\l loop { if z == 0 { break ; \"unreachable\"; } z -= 1; }\l if x > 10 { return; \"unreachable\"; }\l }\l}\l"]; |
| 113 | + N52 -> N53; |
| 114 | + N53 -> N54; |
| 115 | + N50 -> N55; |
| 116 | + N54 -> N55; |
| 117 | + N55 -> N56; |
| 118 | + N56 -> N21; |
| 119 | + N22 -> N57; |
| 120 | + N57 -> N8; |
| 121 | + N9 -> N58; |
| 122 | + N58 -> N1; |
| 123 | +} |
0 commit comments