]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/simplify-locals-removes-unused-consts.rs
Update const_forget.rs
[rust.git] / src / test / mir-opt / simplify-locals-removes-unused-consts.rs
1 // compile-flags: -C overflow-checks=no
2
3 fn use_zst(_: ((), ())) { }
4
5 struct Temp {
6     x: u8
7 }
8
9 fn use_u8(_: u8) { }
10
11 fn main() {
12     let ((), ()) = ((), ());
13     use_zst(((), ()));
14
15     use_u8((Temp { x : 40 }).x + 2);
16 }
17
18 // END RUST SOURCE
19
20 // START rustc.main.SimplifyLocals.before.mir
21 // let mut _0: ();
22 // let mut _1: ((), ());
23 // let mut _2: ();
24 // let mut _3: ();
25 // let _4: ();
26 // let mut _5: ((), ());
27 // let mut _6: ();
28 // let mut _7: ();
29 // let _8: ();
30 // let mut _9: u8;
31 // let mut _10: u8;
32 // let mut _11: Temp;
33 // scope 1 {
34 // }
35 // bb0: {
36 //   StorageLive(_1);
37 //   StorageLive(_2);
38 //   _2 = const Scalar(<ZST>) : ();
39 //   StorageLive(_3);
40 //   _3 = const Scalar(<ZST>) : ();
41 //   _1 = const Scalar(<ZST>) : ((), ());
42 //   StorageDead(_3);
43 //   StorageDead(_2);
44 //   StorageDead(_1);
45 //   StorageLive(_4);
46 //   StorageLive(_6);
47 //   _6 = const Scalar(<ZST>) : ();
48 //   StorageLive(_7);
49 //   _7 = const Scalar(<ZST>) : ();
50 //   StorageDead(_7);
51 //   StorageDead(_6);
52 //   _4 = const use_zst(const Scalar(<ZST>) : ((), ())) -> bb1;
53 // }
54 // bb1: {
55 //   StorageDead(_4);
56 //   StorageLive(_8);
57 //   StorageLive(_10);
58 //   StorageLive(_11);
59 //   _11 = const Scalar(0x28) : Temp;
60 //   _10 = const 40u8;
61 //   StorageDead(_10);
62 //   _8 = const use_u8(const 42u8) -> bb2;
63 // }
64 // bb2: {
65 //   StorageDead(_11);
66 //   StorageDead(_8);
67 //   return;
68 // }
69 // END rustc.main.SimplifyLocals.before.mir
70 // START rustc.main.SimplifyLocals.after.mir
71 // let mut _0: ();
72 // let _1: ();
73 // let _2: ();
74 // scope 1 {
75 // }
76 // bb0: {
77 //   StorageLive(_1);
78 //   _1 = const use_zst(const Scalar(<ZST>) : ((), ())) -> bb1;
79 // }
80 // bb1: {
81 //   StorageDead(_1);
82 //   StorageLive(_2);
83 //   _2 = const use_u8(const 42u8) -> bb2;
84 // }
85 // bb2: {
86 //   StorageDead(_2);
87 //   return;
88 // }
89 // END rustc.main.SimplifyLocals.after.mir