]> git.proxmox.com Git - rustc.git/blob - tests/mir-opt/gvn.fn_pointers.GVN.panic-abort.diff
New upstream version 1.75.0+dfsg1
[rustc.git] / tests / mir-opt / gvn.fn_pointers.GVN.panic-abort.diff
1 - // MIR for `fn_pointers` before GVN
2 + // MIR for `fn_pointers` after GVN
3
4 fn fn_pointers() -> () {
5 let mut _0: ();
6 let _1: fn(u8) -> u8;
7 let _2: ();
8 let mut _3: fn(u8) -> u8;
9 let _5: ();
10 let mut _6: fn(u8) -> u8;
11 let mut _9: {closure@$DIR/gvn.rs:591:19: 591:21};
12 let _10: ();
13 let mut _11: fn();
14 let mut _13: {closure@$DIR/gvn.rs:591:19: 591:21};
15 let _14: ();
16 let mut _15: fn();
17 scope 1 {
18 debug f => _1;
19 let _4: fn(u8) -> u8;
20 scope 2 {
21 debug g => _4;
22 let _7: {closure@$DIR/gvn.rs:591:19: 591:21};
23 scope 3 {
24 debug closure => _7;
25 let _8: fn();
26 scope 4 {
27 debug cf => _8;
28 let _12: fn();
29 scope 5 {
30 debug cg => _12;
31 }
32 }
33 }
34 }
35 }
36
37 bb0: {
38 - StorageLive(_1);
39 + nop;
40 _1 = identity::<u8> as fn(u8) -> u8 (PointerCoercion(ReifyFnPointer));
41 StorageLive(_2);
42 StorageLive(_3);
43 _3 = _1;
44 - _2 = opaque::<fn(u8) -> u8>(move _3) -> [return: bb1, unwind unreachable];
45 + _2 = opaque::<fn(u8) -> u8>(_1) -> [return: bb1, unwind unreachable];
46 }
47
48 bb1: {
49 StorageDead(_3);
50 StorageDead(_2);
51 - StorageLive(_4);
52 + nop;
53 _4 = identity::<u8> as fn(u8) -> u8 (PointerCoercion(ReifyFnPointer));
54 StorageLive(_5);
55 StorageLive(_6);
56 _6 = _4;
57 - _5 = opaque::<fn(u8) -> u8>(move _6) -> [return: bb2, unwind unreachable];
58 + _5 = opaque::<fn(u8) -> u8>(_4) -> [return: bb2, unwind unreachable];
59 }
60
61 bb2: {
62 StorageDead(_6);
63 StorageDead(_5);
64 - StorageLive(_7);
65 - _7 = {closure@$DIR/gvn.rs:591:19: 591:21};
66 - StorageLive(_8);
67 + nop;
68 + _7 = const ZeroSized: {closure@$DIR/gvn.rs:591:19: 591:21};
69 + nop;
70 StorageLive(_9);
71 - _9 = _7;
72 - _8 = move _9 as fn() (PointerCoercion(ClosureFnPointer(Normal)));
73 + _9 = const ZeroSized: {closure@$DIR/gvn.rs:591:19: 591:21};
74 + _8 = const ZeroSized: {closure@$DIR/gvn.rs:591:19: 591:21} as fn() (PointerCoercion(ClosureFnPointer(Normal)));
75 StorageDead(_9);
76 StorageLive(_10);
77 StorageLive(_11);
78 _11 = _8;
79 - _10 = opaque::<fn()>(move _11) -> [return: bb3, unwind unreachable];
80 + _10 = opaque::<fn()>(_8) -> [return: bb3, unwind unreachable];
81 }
82
83 bb3: {
84 StorageDead(_11);
85 StorageDead(_10);
86 - StorageLive(_12);
87 + nop;
88 StorageLive(_13);
89 - _13 = _7;
90 - _12 = move _13 as fn() (PointerCoercion(ClosureFnPointer(Normal)));
91 + _13 = const ZeroSized: {closure@$DIR/gvn.rs:591:19: 591:21};
92 + _12 = const ZeroSized: {closure@$DIR/gvn.rs:591:19: 591:21} as fn() (PointerCoercion(ClosureFnPointer(Normal)));
93 StorageDead(_13);
94 StorageLive(_14);
95 StorageLive(_15);
96 _15 = _12;
97 - _14 = opaque::<fn()>(move _15) -> [return: bb4, unwind unreachable];
98 + _14 = opaque::<fn()>(_12) -> [return: bb4, unwind unreachable];
99 }
100
101 bb4: {
102 StorageDead(_15);
103 StorageDead(_14);
104 _0 = const ();
105 - StorageDead(_12);
106 - StorageDead(_8);
107 - StorageDead(_7);
108 - StorageDead(_4);
109 - StorageDead(_1);
110 + nop;
111 + nop;
112 + nop;
113 + nop;
114 + nop;
115 return;
116 }
117 }
118