]>
Commit | Line | Data |
---|---|---|
1 | // MIR for `main` after SimplifyCfg-initial | |
2 | ||
3 | fn main() -> () { | |
4 | let mut _0: (); // return place in scope 0 at $DIR/issue-38669.rs:4:11: 4:11 | |
5 | let mut _1: bool; // in scope 0 at $DIR/issue-38669.rs:5:9: 5:25 | |
6 | let mut _2: (); // in scope 0 at $DIR/issue-38669.rs:4:1: 12:2 | |
7 | let _3: (); // in scope 0 at $DIR/issue-38669.rs:7:9: 9:10 | |
8 | let mut _4: bool; // in scope 0 at $DIR/issue-38669.rs:7:12: 7:24 | |
9 | let mut _5: !; // in scope 0 at $DIR/issue-38669.rs:7:25: 9:10 | |
10 | scope 1 { | |
11 | debug should_break => _1; // in scope 1 at $DIR/issue-38669.rs:5:9: 5:25 | |
12 | } | |
13 | ||
14 | bb0: { | |
15 | StorageLive(_1); // scope 0 at $DIR/issue-38669.rs:5:9: 5:25 | |
16 | _1 = const false; // scope 0 at $DIR/issue-38669.rs:5:28: 5:33 | |
17 | // ty::Const | |
18 | // + ty: bool | |
19 | // + val: Value(Scalar(0x00)) | |
20 | // mir::Constant | |
21 | // + span: $DIR/issue-38669.rs:5:28: 5:33 | |
22 | // + literal: Const { ty: bool, val: Value(Scalar(0x00)) } | |
23 | FakeRead(ForLet, _1); // scope 0 at $DIR/issue-38669.rs:5:9: 5:25 | |
24 | goto -> bb2; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 | |
25 | } | |
26 | ||
27 | bb1 (cleanup): { | |
28 | resume; // scope 0 at $DIR/issue-38669.rs:4:1: 12:2 | |
29 | } | |
30 | ||
31 | bb2: { | |
32 | falseUnwind -> [real: bb3, cleanup: bb1]; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 | |
33 | } | |
34 | ||
35 | bb3: { | |
36 | StorageLive(_3); // scope 1 at $DIR/issue-38669.rs:7:9: 9:10 | |
37 | StorageLive(_4); // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 | |
38 | _4 = _1; // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 | |
39 | FakeRead(ForMatchedPlace, _4); // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 | |
40 | switchInt(_4) -> [false: bb5, otherwise: bb4]; // scope 1 at $DIR/issue-38669.rs:7:9: 9:10 | |
41 | } | |
42 | ||
43 | bb4: { | |
44 | falseEdge -> [real: bb6, imaginary: bb5]; // scope 1 at $DIR/issue-38669.rs:7:9: 9:10 | |
45 | } | |
46 | ||
47 | bb5: { | |
48 | _3 = const (); // scope 1 at $DIR/issue-38669.rs:7:9: 9:10 | |
49 | // ty::Const | |
50 | // + ty: () | |
51 | // + val: Value(Scalar(<ZST>)) | |
52 | // mir::Constant | |
53 | // + span: $DIR/issue-38669.rs:7:9: 9:10 | |
54 | // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) } | |
55 | StorageDead(_4); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 | |
56 | StorageDead(_3); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 | |
57 | _1 = const true; // scope 1 at $DIR/issue-38669.rs:10:9: 10:28 | |
58 | // ty::Const | |
59 | // + ty: bool | |
60 | // + val: Value(Scalar(0x01)) | |
61 | // mir::Constant | |
62 | // + span: $DIR/issue-38669.rs:10:24: 10:28 | |
63 | // + literal: Const { ty: bool, val: Value(Scalar(0x01)) } | |
64 | _2 = const (); // scope 1 at $DIR/issue-38669.rs:6:10: 11:6 | |
65 | // ty::Const | |
66 | // + ty: () | |
67 | // + val: Value(Scalar(<ZST>)) | |
68 | // mir::Constant | |
69 | // + span: $DIR/issue-38669.rs:6:10: 11:6 | |
70 | // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) } | |
71 | goto -> bb2; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 | |
72 | } | |
73 | ||
74 | bb6: { | |
75 | _0 = const (); // scope 1 at $DIR/issue-38669.rs:8:13: 8:18 | |
76 | // ty::Const | |
77 | // + ty: () | |
78 | // + val: Value(Scalar(<ZST>)) | |
79 | // mir::Constant | |
80 | // + span: $DIR/issue-38669.rs:8:13: 8:18 | |
81 | // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) } | |
82 | StorageDead(_4); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 | |
83 | StorageDead(_3); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 | |
84 | StorageDead(_1); // scope 0 at $DIR/issue-38669.rs:12:1: 12:2 | |
85 | return; // scope 0 at $DIR/issue-38669.rs:12:2: 12:2 | |
86 | } | |
87 | } |