|
1 | 1 | - // MIR for `cand` before EnumSizeOpt
|
2 | 2 | + // MIR for `cand` after EnumSizeOpt
|
3 | 3 |
|
4 |
| - fn cand() -> () { |
5 |
| - let mut _0: (); // return place in scope 0 at $DIR/enum_opt.rs:+0:15: +0:15 |
| 4 | + fn cand() -> Candidate { |
| 5 | + let mut _0: Candidate; // return place in scope 0 at $DIR/enum_opt.rs:+0:18: +0:27 |
6 | 6 | let mut _1: Candidate; // in scope 0 at $DIR/enum_opt.rs:+1:7: +1:12
|
7 | 7 | let mut _2: Candidate; // in scope 0 at $DIR/enum_opt.rs:+2:7: +2:34
|
8 |
| - let mut _3: [u64; 1024]; // in scope 0 at $DIR/enum_opt.rs:+2:24: +2:33 |
| 8 | + let mut _3: [u8; 8196]; // in scope 0 at $DIR/enum_opt.rs:+2:24: +2:33 |
9 | 9 | + let mut _4: [usize; 2]; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
10 | 10 | + let mut _5: isize; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
11 | 11 | + let mut _6: usize; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
|
14 | 14 | + let mut _9: *mut u8; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
15 | 15 | + let mut _10: *const Candidate; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
16 | 16 | + let mut _11: *const u8; // in scope 0 at $DIR/enum_opt.rs:+2:3: +2:34
|
| 17 | ++ let mut _12: [usize; 2]; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 18 | ++ let mut _13: isize; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 19 | ++ let mut _14: usize; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 20 | ++ let mut _15: usize; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 21 | ++ let mut _16: *mut Candidate; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 22 | ++ let mut _17: *mut u8; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 23 | ++ let mut _18: *const Candidate; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 24 | ++ let mut _19: *const u8; // in scope 0 at $DIR/enum_opt.rs:+3:3: +3:4 |
17 | 25 | scope 1 {
|
18 | 26 | debug a => _1; // in scope 1 at $DIR/enum_opt.rs:+1:7: +1:12
|
19 | 27 | }
|
20 | 28 |
|
21 | 29 | bb0: {
|
22 | 30 | StorageLive(_1); // scope 0 at $DIR/enum_opt.rs:+1:7: +1:12
|
23 |
| - Deinit(_1); // scope 0 at $DIR/enum_opt.rs:+1:15: +1:34 |
24 |
| - ((_1 as Small).0: u8) = const 1_u8; // scope 0 at $DIR/enum_opt.rs:+1:15: +1:34 |
25 |
| - discriminant(_1) = 0; // scope 0 at $DIR/enum_opt.rs:+1:15: +1:34 |
| 31 | + _1 = Candidate::Small(const 1_u8); // scope 0 at $DIR/enum_opt.rs:+1:15: +1:34 |
26 | 32 | StorageLive(_2); // scope 1 at $DIR/enum_opt.rs:+2:7: +2:34
|
27 | 33 | StorageLive(_3); // scope 1 at $DIR/enum_opt.rs:+2:24: +2:33
|
28 |
| - _3 = [const 1_u64; 1024]; // scope 1 at $DIR/enum_opt.rs:+2:24: +2:33 |
29 |
| - Deinit(_2); // scope 1 at $DIR/enum_opt.rs:+2:7: +2:34 |
30 |
| - ((_2 as Large).0: [u64; 1024]) = move _3; // scope 1 at $DIR/enum_opt.rs:+2:7: +2:34 |
31 |
| - discriminant(_2) = 1; // scope 1 at $DIR/enum_opt.rs:+2:7: +2:34 |
| 34 | + _3 = [const 1_u8; 8196]; // scope 1 at $DIR/enum_opt.rs:+2:24: +2:33 |
| 35 | + _2 = Candidate::Large(move _3); // scope 1 at $DIR/enum_opt.rs:+2:7: +2:34 |
32 | 36 | StorageDead(_3); // scope 1 at $DIR/enum_opt.rs:+2:33: +2:34
|
33 | 37 | - _1 = move _2; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
34 | 38 | + StorageLive(_4); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
35 |
| -+ _4 = const [2_usize, 8196_usize]; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34 |
| 39 | ++ _4 = const [2_usize, 8197_usize]; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34 |
36 | 40 | + _5 = discriminant(_2); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
37 | 41 | + _6 = _5 as usize (IntToInt); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
38 | 42 | + _7 = _4[_6]; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
39 | 43 | + _8 = &raw mut _1; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
40 | 44 | + _9 = _8 as *mut u8 (PtrToPtr); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
41 | 45 | + _10 = &raw const _2; // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
42 | 46 | + _11 = _10 as *const u8 (PtrToPtr); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
| 47 | ++ Deinit(_8); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34 |
43 | 48 | + copy_nonoverlapping(dst = _9, src = _11, count = _7); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
44 | 49 | + StorageDead(_4); // scope 1 at $DIR/enum_opt.rs:+2:3: +2:34
|
45 | 50 | StorageDead(_2); // scope 1 at $DIR/enum_opt.rs:+2:33: +2:34
|
46 |
| - _0 = const (); // scope 0 at $DIR/enum_opt.rs:+0:15: +3:2 |
47 |
| - StorageDead(_1); // scope 0 at $DIR/enum_opt.rs:+3:1: +3:2 |
48 |
| - return; // scope 0 at $DIR/enum_opt.rs:+3:2: +3:2 |
| 51 | +- _0 = move _1; // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 52 | ++ StorageLive(_12); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 53 | ++ _12 = const [2_usize, 8197_usize]; // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 54 | ++ _13 = discriminant(_1); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 55 | ++ _14 = _13 as usize (IntToInt); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 56 | ++ _15 = _12[_14]; // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 57 | ++ _16 = &raw mut _0; // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 58 | ++ _17 = _16 as *mut u8 (PtrToPtr); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 59 | ++ _18 = &raw const _1; // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 60 | ++ _19 = _18 as *const u8 (PtrToPtr); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 61 | ++ Deinit(_16); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 62 | ++ copy_nonoverlapping(dst = _17, src = _19, count = _15); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 63 | ++ StorageDead(_12); // scope 1 at $DIR/enum_opt.rs:+3:3: +3:4 |
| 64 | + StorageDead(_1); // scope 0 at $DIR/enum_opt.rs:+4:1: +4:2 |
| 65 | + return; // scope 0 at $DIR/enum_opt.rs:+4:2: +4:2 |
49 | 66 | }
|
50 | 67 | }
|
51 | 68 |
|
0 commit comments