Chris Wailes | cd1aefd | 2023-07-13 13:36:21 -0700 | [diff] [blame^] | 1 | - // MIR for `reference_propagation_mut_ptr` before ReferencePropagation |
| 2 | + // MIR for `reference_propagation_mut_ptr` after ReferencePropagation |
| 3 | |
| 4 | fn reference_propagation_mut_ptr(_1: *mut T, _2: *mut T) -> () { |
| 5 | debug single => _1; // in scope 0 at $DIR/reference_prop.rs:+0:43: +0:49 |
| 6 | debug multiple => _2; // in scope 0 at $DIR/reference_prop.rs:+0:59: +0:71 |
| 7 | let mut _0: (); // return place in scope 0 at $DIR/reference_prop.rs:+0:81: +0:81 |
| 8 | let _3: (); // in scope 0 at $DIR/reference_prop.rs:+2:5: +7:6 |
| 9 | let _7: (); // in scope 0 at $DIR/reference_prop.rs:+6:9: +6:19 |
| 10 | let mut _8: (); // in scope 0 at $DIR/reference_prop.rs:+6:16: +6:18 |
| 11 | let _9: (); // in scope 0 at $DIR/reference_prop.rs:+10:5: +18:6 |
| 12 | let mut _13: *mut usize; // in scope 0 at $DIR/reference_prop.rs:+14:13: +14:24 |
| 13 | let _15: (); // in scope 0 at $DIR/reference_prop.rs:+17:9: +17:19 |
| 14 | let mut _16: (); // in scope 0 at $DIR/reference_prop.rs:+17:16: +17:18 |
| 15 | let _17: (); // in scope 0 at $DIR/reference_prop.rs:+21:5: +27:6 |
| 16 | let _22: (); // in scope 0 at $DIR/reference_prop.rs:+26:9: +26:18 |
| 17 | let mut _23: &*mut usize; // in scope 0 at $DIR/reference_prop.rs:+26:16: +26:17 |
| 18 | let _24: (); // in scope 0 at $DIR/reference_prop.rs:+30:5: +36:6 |
| 19 | let _29: (); // in scope 0 at $DIR/reference_prop.rs:+35:9: +35:18 |
| 20 | let mut _30: *mut *mut usize; // in scope 0 at $DIR/reference_prop.rs:+35:16: +35:17 |
| 21 | let _31: (); // in scope 0 at $DIR/reference_prop.rs:+39:5: +44:6 |
| 22 | let _35: (); // in scope 0 at $DIR/reference_prop.rs:+43:9: +43:18 |
| 23 | let mut _36: *mut usize; // in scope 0 at $DIR/reference_prop.rs:+43:16: +43:17 |
| 24 | let _37: (); // in scope 0 at $DIR/reference_prop.rs:+47:5: +57:6 |
| 25 | let _44: (); // in scope 0 at $DIR/reference_prop.rs:+56:9: +56:19 |
| 26 | let mut _45: *mut usize; // in scope 0 at $DIR/reference_prop.rs:+56:16: +56:18 |
| 27 | let _46: (); // in scope 0 at $DIR/reference_prop.rs:+60:5: +64:6 |
| 28 | let _49: (); // in scope 0 at $DIR/reference_prop.rs:+63:9: +63:19 |
| 29 | let mut _50: (); // in scope 0 at $DIR/reference_prop.rs:+63:16: +63:18 |
| 30 | let _51: (); // in scope 0 at $DIR/reference_prop.rs:+67:5: +72:6 |
| 31 | let mut _53: *mut T; // in scope 0 at $DIR/reference_prop.rs:+69:20: +69:36 |
| 32 | let _55: (); // in scope 0 at $DIR/reference_prop.rs:+71:9: +71:19 |
| 33 | let mut _56: (); // in scope 0 at $DIR/reference_prop.rs:+71:16: +71:18 |
| 34 | let _57: (); // in scope 0 at $DIR/reference_prop.rs:+75:5: +81:6 |
| 35 | let _62: (); // in scope 0 at $DIR/reference_prop.rs:+80:9: +80:19 |
| 36 | let mut _63: (); // in scope 0 at $DIR/reference_prop.rs:+80:16: +80:18 |
| 37 | let _68: (); // in scope 0 at $DIR/reference_prop.rs:+89:9: +89:19 |
| 38 | let mut _69: (); // in scope 0 at $DIR/reference_prop.rs:+89:16: +89:18 |
| 39 | scope 1 { |
| 40 | let mut _4: usize; // in scope 1 at $DIR/reference_prop.rs:+3:13: +3:18 |
| 41 | scope 2 { |
| 42 | debug a => _4; // in scope 2 at $DIR/reference_prop.rs:+3:13: +3:18 |
| 43 | let _5: *mut usize; // in scope 2 at $DIR/reference_prop.rs:+4:13: +4:14 |
| 44 | scope 3 { |
| 45 | - debug b => _5; // in scope 3 at $DIR/reference_prop.rs:+4:13: +4:14 |
| 46 | + debug b => &_4; // in scope 3 at $DIR/reference_prop.rs:+4:13: +4:14 |
| 47 | let _6: usize; // in scope 3 at $DIR/reference_prop.rs:+5:13: +5:14 |
| 48 | scope 4 { |
| 49 | debug c => _6; // in scope 4 at $DIR/reference_prop.rs:+5:13: +5:14 |
| 50 | } |
| 51 | } |
| 52 | } |
| 53 | } |
| 54 | scope 5 { |
| 55 | let mut _10: usize; // in scope 5 at $DIR/reference_prop.rs:+11:13: +11:18 |
| 56 | scope 6 { |
| 57 | debug a => _10; // in scope 6 at $DIR/reference_prop.rs:+11:13: +11:18 |
| 58 | let mut _11: usize; // in scope 6 at $DIR/reference_prop.rs:+12:13: +12:19 |
| 59 | scope 7 { |
| 60 | debug a2 => _11; // in scope 7 at $DIR/reference_prop.rs:+12:13: +12:19 |
| 61 | let mut _12: *mut usize; // in scope 7 at $DIR/reference_prop.rs:+13:13: +13:18 |
| 62 | scope 8 { |
| 63 | debug b => _12; // in scope 8 at $DIR/reference_prop.rs:+13:13: +13:18 |
| 64 | let _14: usize; // in scope 8 at $DIR/reference_prop.rs:+16:13: +16:14 |
| 65 | scope 9 { |
| 66 | debug c => _14; // in scope 9 at $DIR/reference_prop.rs:+16:13: +16:14 |
| 67 | } |
| 68 | } |
| 69 | } |
| 70 | } |
| 71 | } |
| 72 | scope 10 { |
| 73 | let mut _18: usize; // in scope 10 at $DIR/reference_prop.rs:+22:13: +22:18 |
| 74 | scope 11 { |
| 75 | debug a => _18; // in scope 11 at $DIR/reference_prop.rs:+22:13: +22:18 |
| 76 | let _19: *mut usize; // in scope 11 at $DIR/reference_prop.rs:+23:13: +23:14 |
| 77 | scope 12 { |
| 78 | debug b => _19; // in scope 12 at $DIR/reference_prop.rs:+23:13: +23:14 |
| 79 | let _20: &*mut usize; // in scope 12 at $DIR/reference_prop.rs:+24:13: +24:14 |
| 80 | scope 13 { |
| 81 | debug d => _20; // in scope 13 at $DIR/reference_prop.rs:+24:13: +24:14 |
| 82 | let _21: usize; // in scope 13 at $DIR/reference_prop.rs:+25:13: +25:14 |
| 83 | scope 14 { |
| 84 | debug c => _21; // in scope 14 at $DIR/reference_prop.rs:+25:13: +25:14 |
| 85 | } |
| 86 | } |
| 87 | } |
| 88 | } |
| 89 | } |
| 90 | scope 15 { |
| 91 | let mut _25: usize; // in scope 15 at $DIR/reference_prop.rs:+31:13: +31:18 |
| 92 | scope 16 { |
| 93 | debug a => _25; // in scope 16 at $DIR/reference_prop.rs:+31:13: +31:18 |
| 94 | let mut _26: *mut usize; // in scope 16 at $DIR/reference_prop.rs:+32:13: +32:18 |
| 95 | scope 17 { |
| 96 | debug b => _26; // in scope 17 at $DIR/reference_prop.rs:+32:13: +32:18 |
| 97 | let _27: *mut *mut usize; // in scope 17 at $DIR/reference_prop.rs:+33:13: +33:14 |
| 98 | scope 18 { |
| 99 | debug d => _27; // in scope 18 at $DIR/reference_prop.rs:+33:13: +33:14 |
| 100 | let _28: usize; // in scope 18 at $DIR/reference_prop.rs:+34:13: +34:14 |
| 101 | scope 19 { |
| 102 | debug c => _28; // in scope 19 at $DIR/reference_prop.rs:+34:13: +34:14 |
| 103 | } |
| 104 | } |
| 105 | } |
| 106 | } |
| 107 | } |
| 108 | scope 20 { |
| 109 | let mut _32: usize; // in scope 20 at $DIR/reference_prop.rs:+40:13: +40:18 |
| 110 | scope 21 { |
| 111 | debug a => _32; // in scope 21 at $DIR/reference_prop.rs:+40:13: +40:18 |
| 112 | let _33: *mut usize; // in scope 21 at $DIR/reference_prop.rs:+41:13: +41:14 |
| 113 | scope 22 { |
| 114 | debug b => _33; // in scope 22 at $DIR/reference_prop.rs:+41:13: +41:14 |
| 115 | let _34: usize; // in scope 22 at $DIR/reference_prop.rs:+42:13: +42:14 |
| 116 | scope 23 { |
| 117 | debug c => _34; // in scope 23 at $DIR/reference_prop.rs:+42:13: +42:14 |
| 118 | } |
| 119 | } |
| 120 | } |
| 121 | } |
| 122 | scope 24 { |
| 123 | let mut _38: usize; // in scope 24 at $DIR/reference_prop.rs:+48:13: +48:18 |
| 124 | scope 25 { |
| 125 | debug a => _38; // in scope 25 at $DIR/reference_prop.rs:+48:13: +48:18 |
| 126 | let _39: *mut usize; // in scope 25 at $DIR/reference_prop.rs:+49:13: +49:15 |
| 127 | scope 26 { |
| 128 | debug b1 => _39; // in scope 26 at $DIR/reference_prop.rs:+49:13: +49:15 |
| 129 | let _40: usize; // in scope 26 at $DIR/reference_prop.rs:+50:13: +50:14 |
| 130 | scope 27 { |
| 131 | debug c => _40; // in scope 27 at $DIR/reference_prop.rs:+50:13: +50:14 |
| 132 | let _41: *mut usize; // in scope 27 at $DIR/reference_prop.rs:+51:13: +51:15 |
| 133 | scope 28 { |
| 134 | debug b2 => _41; // in scope 28 at $DIR/reference_prop.rs:+51:13: +51:15 |
| 135 | let _42: usize; // in scope 28 at $DIR/reference_prop.rs:+52:13: +52:15 |
| 136 | scope 29 { |
| 137 | debug c2 => _42; // in scope 29 at $DIR/reference_prop.rs:+52:13: +52:15 |
| 138 | let _43: *mut usize; // in scope 29 at $DIR/reference_prop.rs:+53:13: +53:15 |
| 139 | scope 30 { |
| 140 | debug b3 => _43; // in scope 30 at $DIR/reference_prop.rs:+53:13: +53:15 |
| 141 | } |
| 142 | } |
| 143 | } |
| 144 | } |
| 145 | } |
| 146 | } |
| 147 | } |
| 148 | scope 31 { |
| 149 | let _47: *mut T; // in scope 31 at $DIR/reference_prop.rs:+61:13: +61:14 |
| 150 | scope 32 { |
| 151 | - debug a => _47; // in scope 32 at $DIR/reference_prop.rs:+61:13: +61:14 |
| 152 | + debug a => _1; // in scope 32 at $DIR/reference_prop.rs:+61:13: +61:14 |
| 153 | let _48: T; // in scope 32 at $DIR/reference_prop.rs:+62:13: +62:14 |
| 154 | scope 33 { |
| 155 | debug b => _48; // in scope 33 at $DIR/reference_prop.rs:+62:13: +62:14 |
| 156 | } |
| 157 | } |
| 158 | } |
| 159 | scope 34 { |
| 160 | let _52: *mut T; // in scope 34 at $DIR/reference_prop.rs:+68:13: +68:14 |
| 161 | scope 35 { |
| 162 | debug a => _52; // in scope 35 at $DIR/reference_prop.rs:+68:13: +68:14 |
| 163 | let _54: T; // in scope 35 at $DIR/reference_prop.rs:+70:13: +70:14 |
| 164 | scope 36 { |
| 165 | debug b => _54; // in scope 36 at $DIR/reference_prop.rs:+70:13: +70:14 |
| 166 | } |
| 167 | } |
| 168 | } |
| 169 | scope 37 { |
| 170 | let mut _58: usize; // in scope 37 at $DIR/reference_prop.rs:+76:13: +76:18 |
| 171 | scope 38 { |
| 172 | debug a => _58; // in scope 38 at $DIR/reference_prop.rs:+76:13: +76:18 |
| 173 | let _59: *mut usize; // in scope 38 at $DIR/reference_prop.rs:+77:13: +77:14 |
| 174 | scope 39 { |
| 175 | - debug b => _59; // in scope 39 at $DIR/reference_prop.rs:+77:13: +77:14 |
| 176 | + debug b => &_58; // in scope 39 at $DIR/reference_prop.rs:+77:13: +77:14 |
| 177 | let _60: &*mut usize; // in scope 39 at $DIR/reference_prop.rs:+78:13: +78:14 |
| 178 | scope 40 { |
| 179 | - debug d => _60; // in scope 40 at $DIR/reference_prop.rs:+78:13: +78:14 |
| 180 | + debug d => &&_58; // in scope 40 at $DIR/reference_prop.rs:+78:13: +78:14 |
| 181 | let _61: usize; // in scope 40 at $DIR/reference_prop.rs:+79:13: +79:14 |
| 182 | scope 41 { |
| 183 | debug c => _61; // in scope 41 at $DIR/reference_prop.rs:+79:13: +79:14 |
| 184 | } |
| 185 | } |
| 186 | } |
| 187 | } |
| 188 | } |
| 189 | scope 42 { |
| 190 | let mut _64: usize; // in scope 42 at $DIR/reference_prop.rs:+85:13: +85:18 |
| 191 | scope 43 { |
| 192 | debug a => _64; // in scope 43 at $DIR/reference_prop.rs:+85:13: +85:18 |
| 193 | let mut _65: *mut usize; // in scope 43 at $DIR/reference_prop.rs:+86:13: +86:18 |
| 194 | scope 44 { |
| 195 | - debug b => _65; // in scope 44 at $DIR/reference_prop.rs:+86:13: +86:18 |
| 196 | + debug b => &_64; // in scope 44 at $DIR/reference_prop.rs:+86:13: +86:18 |
| 197 | let _66: &mut *mut usize; // in scope 44 at $DIR/reference_prop.rs:+87:13: +87:14 |
| 198 | scope 45 { |
| 199 | - debug d => _66; // in scope 45 at $DIR/reference_prop.rs:+87:13: +87:14 |
| 200 | + debug d => &&_64; // in scope 45 at $DIR/reference_prop.rs:+87:13: +87:14 |
| 201 | let _67: usize; // in scope 45 at $DIR/reference_prop.rs:+88:13: +88:14 |
| 202 | scope 46 { |
| 203 | debug c => _67; // in scope 46 at $DIR/reference_prop.rs:+88:13: +88:14 |
| 204 | } |
| 205 | } |
| 206 | } |
| 207 | } |
| 208 | } |
| 209 | |
| 210 | bb0: { |
| 211 | - StorageLive(_3); // scope 0 at $DIR/reference_prop.rs:+2:5: +7:6 |
| 212 | StorageLive(_4); // scope 1 at $DIR/reference_prop.rs:+3:13: +3:18 |
| 213 | _4 = const 5_usize; // scope 1 at $DIR/reference_prop.rs:+3:21: +3:28 |
| 214 | - StorageLive(_5); // scope 2 at $DIR/reference_prop.rs:+4:13: +4:14 |
| 215 | - _5 = &raw mut _4; // scope 2 at $DIR/reference_prop.rs:+4:17: +4:27 |
| 216 | StorageLive(_6); // scope 3 at $DIR/reference_prop.rs:+5:13: +5:14 |
| 217 | - _6 = (*_5); // scope 3 at $DIR/reference_prop.rs:+5:17: +5:19 |
| 218 | + _6 = _4; // scope 3 at $DIR/reference_prop.rs:+5:17: +5:19 |
| 219 | StorageLive(_7); // scope 4 at $DIR/reference_prop.rs:+6:9: +6:19 |
| 220 | StorageLive(_8); // scope 4 at $DIR/reference_prop.rs:+6:16: +6:18 |
| 221 | _8 = (); // scope 4 at $DIR/reference_prop.rs:+6:16: +6:18 |
| 222 | _7 = opaque::<()>(move _8) -> bb1; // scope 4 at $DIR/reference_prop.rs:+6:9: +6:19 |
| 223 | // mir::Constant |
| 224 | // + span: $DIR/reference_prop.rs:304:9: 304:15 |
| 225 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 226 | } |
| 227 | |
| 228 | bb1: { |
| 229 | StorageDead(_8); // scope 4 at $DIR/reference_prop.rs:+6:18: +6:19 |
| 230 | StorageDead(_7); // scope 4 at $DIR/reference_prop.rs:+6:19: +6:20 |
| 231 | - _3 = const (); // scope 1 at $DIR/reference_prop.rs:+2:5: +7:6 |
| 232 | StorageDead(_6); // scope 3 at $DIR/reference_prop.rs:+7:5: +7:6 |
| 233 | - StorageDead(_5); // scope 2 at $DIR/reference_prop.rs:+7:5: +7:6 |
| 234 | StorageDead(_4); // scope 1 at $DIR/reference_prop.rs:+7:5: +7:6 |
| 235 | - StorageDead(_3); // scope 0 at $DIR/reference_prop.rs:+7:5: +7:6 |
| 236 | - StorageLive(_9); // scope 0 at $DIR/reference_prop.rs:+10:5: +18:6 |
| 237 | StorageLive(_10); // scope 5 at $DIR/reference_prop.rs:+11:13: +11:18 |
| 238 | _10 = const 5_usize; // scope 5 at $DIR/reference_prop.rs:+11:21: +11:28 |
| 239 | StorageLive(_11); // scope 6 at $DIR/reference_prop.rs:+12:13: +12:19 |
| 240 | _11 = const 7_usize; // scope 6 at $DIR/reference_prop.rs:+12:22: +12:29 |
| 241 | StorageLive(_12); // scope 7 at $DIR/reference_prop.rs:+13:13: +13:18 |
| 242 | _12 = &raw mut _10; // scope 7 at $DIR/reference_prop.rs:+13:21: +13:31 |
| 243 | StorageLive(_13); // scope 8 at $DIR/reference_prop.rs:+14:13: +14:24 |
| 244 | _13 = &raw mut _11; // scope 8 at $DIR/reference_prop.rs:+14:13: +14:24 |
| 245 | _12 = move _13; // scope 8 at $DIR/reference_prop.rs:+14:9: +14:24 |
| 246 | StorageDead(_13); // scope 8 at $DIR/reference_prop.rs:+14:23: +14:24 |
| 247 | StorageLive(_14); // scope 8 at $DIR/reference_prop.rs:+16:13: +16:14 |
| 248 | _14 = (*_12); // scope 8 at $DIR/reference_prop.rs:+16:17: +16:19 |
| 249 | StorageLive(_15); // scope 9 at $DIR/reference_prop.rs:+17:9: +17:19 |
| 250 | StorageLive(_16); // scope 9 at $DIR/reference_prop.rs:+17:16: +17:18 |
| 251 | _16 = (); // scope 9 at $DIR/reference_prop.rs:+17:16: +17:18 |
| 252 | _15 = opaque::<()>(move _16) -> bb2; // scope 9 at $DIR/reference_prop.rs:+17:9: +17:19 |
| 253 | // mir::Constant |
| 254 | // + span: $DIR/reference_prop.rs:315:9: 315:15 |
| 255 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 256 | } |
| 257 | |
| 258 | bb2: { |
| 259 | StorageDead(_16); // scope 9 at $DIR/reference_prop.rs:+17:18: +17:19 |
| 260 | StorageDead(_15); // scope 9 at $DIR/reference_prop.rs:+17:19: +17:20 |
| 261 | - _9 = const (); // scope 5 at $DIR/reference_prop.rs:+10:5: +18:6 |
| 262 | StorageDead(_14); // scope 8 at $DIR/reference_prop.rs:+18:5: +18:6 |
| 263 | StorageDead(_12); // scope 7 at $DIR/reference_prop.rs:+18:5: +18:6 |
| 264 | StorageDead(_11); // scope 6 at $DIR/reference_prop.rs:+18:5: +18:6 |
| 265 | StorageDead(_10); // scope 5 at $DIR/reference_prop.rs:+18:5: +18:6 |
| 266 | - StorageDead(_9); // scope 0 at $DIR/reference_prop.rs:+18:5: +18:6 |
| 267 | - StorageLive(_17); // scope 0 at $DIR/reference_prop.rs:+21:5: +27:6 |
| 268 | StorageLive(_18); // scope 10 at $DIR/reference_prop.rs:+22:13: +22:18 |
| 269 | _18 = const 5_usize; // scope 10 at $DIR/reference_prop.rs:+22:21: +22:28 |
| 270 | StorageLive(_19); // scope 11 at $DIR/reference_prop.rs:+23:13: +23:14 |
| 271 | _19 = &raw mut _18; // scope 11 at $DIR/reference_prop.rs:+23:17: +23:27 |
| 272 | StorageLive(_20); // scope 12 at $DIR/reference_prop.rs:+24:13: +24:14 |
| 273 | _20 = &_19; // scope 12 at $DIR/reference_prop.rs:+24:17: +24:19 |
| 274 | StorageLive(_21); // scope 13 at $DIR/reference_prop.rs:+25:13: +25:14 |
| 275 | _21 = (*_19); // scope 13 at $DIR/reference_prop.rs:+25:17: +25:19 |
| 276 | StorageLive(_22); // scope 14 at $DIR/reference_prop.rs:+26:9: +26:18 |
| 277 | StorageLive(_23); // scope 14 at $DIR/reference_prop.rs:+26:16: +26:17 |
| 278 | _23 = _20; // scope 14 at $DIR/reference_prop.rs:+26:16: +26:17 |
| 279 | _22 = opaque::<&*mut usize>(move _23) -> bb3; // scope 14 at $DIR/reference_prop.rs:+26:9: +26:18 |
| 280 | // mir::Constant |
| 281 | // + span: $DIR/reference_prop.rs:324:9: 324:15 |
| 282 | // + literal: Const { ty: fn(&*mut usize) {opaque::<&*mut usize>}, val: Value(<ZST>) } |
| 283 | } |
| 284 | |
| 285 | bb3: { |
| 286 | StorageDead(_23); // scope 14 at $DIR/reference_prop.rs:+26:17: +26:18 |
| 287 | StorageDead(_22); // scope 14 at $DIR/reference_prop.rs:+26:18: +26:19 |
| 288 | - _17 = const (); // scope 10 at $DIR/reference_prop.rs:+21:5: +27:6 |
| 289 | StorageDead(_21); // scope 13 at $DIR/reference_prop.rs:+27:5: +27:6 |
| 290 | StorageDead(_20); // scope 12 at $DIR/reference_prop.rs:+27:5: +27:6 |
| 291 | StorageDead(_19); // scope 11 at $DIR/reference_prop.rs:+27:5: +27:6 |
| 292 | StorageDead(_18); // scope 10 at $DIR/reference_prop.rs:+27:5: +27:6 |
| 293 | - StorageDead(_17); // scope 0 at $DIR/reference_prop.rs:+27:5: +27:6 |
| 294 | - StorageLive(_24); // scope 0 at $DIR/reference_prop.rs:+30:5: +36:6 |
| 295 | StorageLive(_25); // scope 15 at $DIR/reference_prop.rs:+31:13: +31:18 |
| 296 | _25 = const 5_usize; // scope 15 at $DIR/reference_prop.rs:+31:21: +31:28 |
| 297 | StorageLive(_26); // scope 16 at $DIR/reference_prop.rs:+32:13: +32:18 |
| 298 | _26 = &raw mut _25; // scope 16 at $DIR/reference_prop.rs:+32:21: +32:31 |
| 299 | StorageLive(_27); // scope 17 at $DIR/reference_prop.rs:+33:13: +33:14 |
| 300 | _27 = &raw mut _26; // scope 17 at $DIR/reference_prop.rs:+33:17: +33:27 |
| 301 | StorageLive(_28); // scope 18 at $DIR/reference_prop.rs:+34:13: +34:14 |
| 302 | _28 = (*_26); // scope 18 at $DIR/reference_prop.rs:+34:17: +34:19 |
| 303 | StorageLive(_29); // scope 19 at $DIR/reference_prop.rs:+35:9: +35:18 |
| 304 | StorageLive(_30); // scope 19 at $DIR/reference_prop.rs:+35:16: +35:17 |
| 305 | _30 = _27; // scope 19 at $DIR/reference_prop.rs:+35:16: +35:17 |
| 306 | _29 = opaque::<*mut *mut usize>(move _30) -> bb4; // scope 19 at $DIR/reference_prop.rs:+35:9: +35:18 |
| 307 | // mir::Constant |
| 308 | // + span: $DIR/reference_prop.rs:333:9: 333:15 |
| 309 | // + literal: Const { ty: fn(*mut *mut usize) {opaque::<*mut *mut usize>}, val: Value(<ZST>) } |
| 310 | } |
| 311 | |
| 312 | bb4: { |
| 313 | StorageDead(_30); // scope 19 at $DIR/reference_prop.rs:+35:17: +35:18 |
| 314 | StorageDead(_29); // scope 19 at $DIR/reference_prop.rs:+35:18: +35:19 |
| 315 | - _24 = const (); // scope 15 at $DIR/reference_prop.rs:+30:5: +36:6 |
| 316 | StorageDead(_28); // scope 18 at $DIR/reference_prop.rs:+36:5: +36:6 |
| 317 | StorageDead(_27); // scope 17 at $DIR/reference_prop.rs:+36:5: +36:6 |
| 318 | StorageDead(_26); // scope 16 at $DIR/reference_prop.rs:+36:5: +36:6 |
| 319 | StorageDead(_25); // scope 15 at $DIR/reference_prop.rs:+36:5: +36:6 |
| 320 | - StorageDead(_24); // scope 0 at $DIR/reference_prop.rs:+36:5: +36:6 |
| 321 | - StorageLive(_31); // scope 0 at $DIR/reference_prop.rs:+39:5: +44:6 |
| 322 | StorageLive(_32); // scope 20 at $DIR/reference_prop.rs:+40:13: +40:18 |
| 323 | _32 = const 7_usize; // scope 20 at $DIR/reference_prop.rs:+40:21: +40:28 |
| 324 | StorageLive(_33); // scope 21 at $DIR/reference_prop.rs:+41:13: +41:14 |
| 325 | _33 = &raw mut _32; // scope 21 at $DIR/reference_prop.rs:+41:17: +41:27 |
| 326 | StorageLive(_34); // scope 22 at $DIR/reference_prop.rs:+42:13: +42:14 |
| 327 | _34 = (*_33); // scope 22 at $DIR/reference_prop.rs:+42:17: +42:19 |
| 328 | StorageLive(_35); // scope 23 at $DIR/reference_prop.rs:+43:9: +43:18 |
| 329 | StorageLive(_36); // scope 23 at $DIR/reference_prop.rs:+43:16: +43:17 |
| 330 | _36 = _33; // scope 23 at $DIR/reference_prop.rs:+43:16: +43:17 |
| 331 | _35 = opaque::<*mut usize>(move _36) -> bb5; // scope 23 at $DIR/reference_prop.rs:+43:9: +43:18 |
| 332 | // mir::Constant |
| 333 | // + span: $DIR/reference_prop.rs:341:9: 341:15 |
| 334 | // + literal: Const { ty: fn(*mut usize) {opaque::<*mut usize>}, val: Value(<ZST>) } |
| 335 | } |
| 336 | |
| 337 | bb5: { |
| 338 | StorageDead(_36); // scope 23 at $DIR/reference_prop.rs:+43:17: +43:18 |
| 339 | StorageDead(_35); // scope 23 at $DIR/reference_prop.rs:+43:18: +43:19 |
| 340 | - _31 = const (); // scope 20 at $DIR/reference_prop.rs:+39:5: +44:6 |
| 341 | StorageDead(_34); // scope 22 at $DIR/reference_prop.rs:+44:5: +44:6 |
| 342 | StorageDead(_33); // scope 21 at $DIR/reference_prop.rs:+44:5: +44:6 |
| 343 | StorageDead(_32); // scope 20 at $DIR/reference_prop.rs:+44:5: +44:6 |
| 344 | - StorageDead(_31); // scope 0 at $DIR/reference_prop.rs:+44:5: +44:6 |
| 345 | - StorageLive(_37); // scope 0 at $DIR/reference_prop.rs:+47:5: +57:6 |
| 346 | StorageLive(_38); // scope 24 at $DIR/reference_prop.rs:+48:13: +48:18 |
| 347 | _38 = const 7_usize; // scope 24 at $DIR/reference_prop.rs:+48:21: +48:28 |
| 348 | StorageLive(_39); // scope 25 at $DIR/reference_prop.rs:+49:13: +49:15 |
| 349 | _39 = &raw mut _38; // scope 25 at $DIR/reference_prop.rs:+49:18: +49:28 |
| 350 | StorageLive(_40); // scope 26 at $DIR/reference_prop.rs:+50:13: +50:14 |
| 351 | _40 = (*_39); // scope 26 at $DIR/reference_prop.rs:+50:17: +50:20 |
| 352 | StorageLive(_41); // scope 27 at $DIR/reference_prop.rs:+51:13: +51:15 |
| 353 | _41 = _39; // scope 27 at $DIR/reference_prop.rs:+51:18: +51:20 |
| 354 | StorageLive(_42); // scope 28 at $DIR/reference_prop.rs:+52:13: +52:15 |
| 355 | _42 = (*_41); // scope 28 at $DIR/reference_prop.rs:+52:18: +52:21 |
| 356 | StorageLive(_43); // scope 29 at $DIR/reference_prop.rs:+53:13: +53:15 |
| 357 | _43 = _41; // scope 29 at $DIR/reference_prop.rs:+53:18: +53:20 |
| 358 | StorageLive(_44); // scope 30 at $DIR/reference_prop.rs:+56:9: +56:19 |
| 359 | StorageLive(_45); // scope 30 at $DIR/reference_prop.rs:+56:16: +56:18 |
| 360 | _45 = _43; // scope 30 at $DIR/reference_prop.rs:+56:16: +56:18 |
| 361 | _44 = opaque::<*mut usize>(move _45) -> bb6; // scope 30 at $DIR/reference_prop.rs:+56:9: +56:19 |
| 362 | // mir::Constant |
| 363 | // + span: $DIR/reference_prop.rs:354:9: 354:15 |
| 364 | // + literal: Const { ty: fn(*mut usize) {opaque::<*mut usize>}, val: Value(<ZST>) } |
| 365 | } |
| 366 | |
| 367 | bb6: { |
| 368 | StorageDead(_45); // scope 30 at $DIR/reference_prop.rs:+56:18: +56:19 |
| 369 | StorageDead(_44); // scope 30 at $DIR/reference_prop.rs:+56:19: +56:20 |
| 370 | - _37 = const (); // scope 24 at $DIR/reference_prop.rs:+47:5: +57:6 |
| 371 | StorageDead(_43); // scope 29 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 372 | StorageDead(_42); // scope 28 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 373 | StorageDead(_41); // scope 27 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 374 | StorageDead(_40); // scope 26 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 375 | StorageDead(_39); // scope 25 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 376 | StorageDead(_38); // scope 24 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 377 | - StorageDead(_37); // scope 0 at $DIR/reference_prop.rs:+57:5: +57:6 |
| 378 | - StorageLive(_46); // scope 0 at $DIR/reference_prop.rs:+60:5: +64:6 |
| 379 | - StorageLive(_47); // scope 31 at $DIR/reference_prop.rs:+61:13: +61:14 |
| 380 | - _47 = &raw mut (*_1); // scope 31 at $DIR/reference_prop.rs:+61:17: +61:33 |
| 381 | StorageLive(_48); // scope 32 at $DIR/reference_prop.rs:+62:13: +62:14 |
| 382 | - _48 = (*_47); // scope 32 at $DIR/reference_prop.rs:+62:17: +62:19 |
| 383 | + _48 = (*_1); // scope 32 at $DIR/reference_prop.rs:+62:17: +62:19 |
| 384 | StorageLive(_49); // scope 33 at $DIR/reference_prop.rs:+63:9: +63:19 |
| 385 | StorageLive(_50); // scope 33 at $DIR/reference_prop.rs:+63:16: +63:18 |
| 386 | _50 = (); // scope 33 at $DIR/reference_prop.rs:+63:16: +63:18 |
| 387 | _49 = opaque::<()>(move _50) -> bb7; // scope 33 at $DIR/reference_prop.rs:+63:9: +63:19 |
| 388 | // mir::Constant |
| 389 | // + span: $DIR/reference_prop.rs:361:9: 361:15 |
| 390 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 391 | } |
| 392 | |
| 393 | bb7: { |
| 394 | StorageDead(_50); // scope 33 at $DIR/reference_prop.rs:+63:18: +63:19 |
| 395 | StorageDead(_49); // scope 33 at $DIR/reference_prop.rs:+63:19: +63:20 |
| 396 | - _46 = const (); // scope 31 at $DIR/reference_prop.rs:+60:5: +64:6 |
| 397 | StorageDead(_48); // scope 32 at $DIR/reference_prop.rs:+64:5: +64:6 |
| 398 | - StorageDead(_47); // scope 31 at $DIR/reference_prop.rs:+64:5: +64:6 |
| 399 | - StorageDead(_46); // scope 0 at $DIR/reference_prop.rs:+64:5: +64:6 |
| 400 | - StorageLive(_51); // scope 0 at $DIR/reference_prop.rs:+67:5: +72:6 |
| 401 | StorageLive(_52); // scope 34 at $DIR/reference_prop.rs:+68:13: +68:14 |
| 402 | _52 = &raw mut (*_2); // scope 34 at $DIR/reference_prop.rs:+68:17: +68:35 |
| 403 | StorageLive(_53); // scope 35 at $DIR/reference_prop.rs:+69:20: +69:36 |
| 404 | _53 = &raw mut (*_1); // scope 35 at $DIR/reference_prop.rs:+69:20: +69:36 |
| 405 | _2 = move _53; // scope 35 at $DIR/reference_prop.rs:+69:9: +69:36 |
| 406 | StorageDead(_53); // scope 35 at $DIR/reference_prop.rs:+69:35: +69:36 |
| 407 | StorageLive(_54); // scope 35 at $DIR/reference_prop.rs:+70:13: +70:14 |
| 408 | _54 = (*_52); // scope 35 at $DIR/reference_prop.rs:+70:17: +70:19 |
| 409 | StorageLive(_55); // scope 36 at $DIR/reference_prop.rs:+71:9: +71:19 |
| 410 | StorageLive(_56); // scope 36 at $DIR/reference_prop.rs:+71:16: +71:18 |
| 411 | _56 = (); // scope 36 at $DIR/reference_prop.rs:+71:16: +71:18 |
| 412 | _55 = opaque::<()>(move _56) -> bb8; // scope 36 at $DIR/reference_prop.rs:+71:9: +71:19 |
| 413 | // mir::Constant |
| 414 | // + span: $DIR/reference_prop.rs:369:9: 369:15 |
| 415 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 416 | } |
| 417 | |
| 418 | bb8: { |
| 419 | StorageDead(_56); // scope 36 at $DIR/reference_prop.rs:+71:18: +71:19 |
| 420 | StorageDead(_55); // scope 36 at $DIR/reference_prop.rs:+71:19: +71:20 |
| 421 | - _51 = const (); // scope 34 at $DIR/reference_prop.rs:+67:5: +72:6 |
| 422 | StorageDead(_54); // scope 35 at $DIR/reference_prop.rs:+72:5: +72:6 |
| 423 | StorageDead(_52); // scope 34 at $DIR/reference_prop.rs:+72:5: +72:6 |
| 424 | - StorageDead(_51); // scope 0 at $DIR/reference_prop.rs:+72:5: +72:6 |
| 425 | - StorageLive(_57); // scope 0 at $DIR/reference_prop.rs:+75:5: +81:6 |
| 426 | StorageLive(_58); // scope 37 at $DIR/reference_prop.rs:+76:13: +76:18 |
| 427 | _58 = const 5_usize; // scope 37 at $DIR/reference_prop.rs:+76:21: +76:28 |
| 428 | - StorageLive(_59); // scope 38 at $DIR/reference_prop.rs:+77:13: +77:14 |
| 429 | - _59 = &raw mut _58; // scope 38 at $DIR/reference_prop.rs:+77:17: +77:27 |
| 430 | - StorageLive(_60); // scope 39 at $DIR/reference_prop.rs:+78:13: +78:14 |
| 431 | - _60 = &_59; // scope 39 at $DIR/reference_prop.rs:+78:17: +78:19 |
| 432 | StorageLive(_61); // scope 40 at $DIR/reference_prop.rs:+79:13: +79:14 |
| 433 | - _61 = (*_59); // scope 40 at $DIR/reference_prop.rs:+79:17: +79:19 |
| 434 | + _61 = _58; // scope 40 at $DIR/reference_prop.rs:+79:17: +79:19 |
| 435 | StorageLive(_62); // scope 41 at $DIR/reference_prop.rs:+80:9: +80:19 |
| 436 | StorageLive(_63); // scope 41 at $DIR/reference_prop.rs:+80:16: +80:18 |
| 437 | _63 = (); // scope 41 at $DIR/reference_prop.rs:+80:16: +80:18 |
| 438 | _62 = opaque::<()>(move _63) -> bb9; // scope 41 at $DIR/reference_prop.rs:+80:9: +80:19 |
| 439 | // mir::Constant |
| 440 | // + span: $DIR/reference_prop.rs:378:9: 378:15 |
| 441 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 442 | } |
| 443 | |
| 444 | bb9: { |
| 445 | StorageDead(_63); // scope 41 at $DIR/reference_prop.rs:+80:18: +80:19 |
| 446 | StorageDead(_62); // scope 41 at $DIR/reference_prop.rs:+80:19: +80:20 |
| 447 | - _57 = const (); // scope 37 at $DIR/reference_prop.rs:+75:5: +81:6 |
| 448 | StorageDead(_61); // scope 40 at $DIR/reference_prop.rs:+81:5: +81:6 |
| 449 | - StorageDead(_60); // scope 39 at $DIR/reference_prop.rs:+81:5: +81:6 |
| 450 | - StorageDead(_59); // scope 38 at $DIR/reference_prop.rs:+81:5: +81:6 |
| 451 | StorageDead(_58); // scope 37 at $DIR/reference_prop.rs:+81:5: +81:6 |
| 452 | - StorageDead(_57); // scope 0 at $DIR/reference_prop.rs:+81:5: +81:6 |
| 453 | StorageLive(_64); // scope 42 at $DIR/reference_prop.rs:+85:13: +85:18 |
| 454 | _64 = const 5_usize; // scope 42 at $DIR/reference_prop.rs:+85:21: +85:28 |
| 455 | - StorageLive(_65); // scope 43 at $DIR/reference_prop.rs:+86:13: +86:18 |
| 456 | - _65 = &raw mut _64; // scope 43 at $DIR/reference_prop.rs:+86:21: +86:31 |
| 457 | - StorageLive(_66); // scope 44 at $DIR/reference_prop.rs:+87:13: +87:14 |
| 458 | - _66 = &mut _65; // scope 44 at $DIR/reference_prop.rs:+87:17: +87:23 |
| 459 | StorageLive(_67); // scope 45 at $DIR/reference_prop.rs:+88:13: +88:14 |
| 460 | - _67 = (*_65); // scope 45 at $DIR/reference_prop.rs:+88:17: +88:19 |
| 461 | + _67 = _64; // scope 45 at $DIR/reference_prop.rs:+88:17: +88:19 |
| 462 | StorageLive(_68); // scope 46 at $DIR/reference_prop.rs:+89:9: +89:19 |
| 463 | StorageLive(_69); // scope 46 at $DIR/reference_prop.rs:+89:16: +89:18 |
| 464 | _69 = (); // scope 46 at $DIR/reference_prop.rs:+89:16: +89:18 |
| 465 | _68 = opaque::<()>(move _69) -> bb10; // scope 46 at $DIR/reference_prop.rs:+89:9: +89:19 |
| 466 | // mir::Constant |
| 467 | // + span: $DIR/reference_prop.rs:387:9: 387:15 |
| 468 | // + literal: Const { ty: fn(()) {opaque::<()>}, val: Value(<ZST>) } |
| 469 | } |
| 470 | |
| 471 | bb10: { |
| 472 | StorageDead(_69); // scope 46 at $DIR/reference_prop.rs:+89:18: +89:19 |
| 473 | StorageDead(_68); // scope 46 at $DIR/reference_prop.rs:+89:19: +89:20 |
| 474 | _0 = const (); // scope 42 at $DIR/reference_prop.rs:+84:5: +90:6 |
| 475 | StorageDead(_67); // scope 45 at $DIR/reference_prop.rs:+90:5: +90:6 |
| 476 | - StorageDead(_66); // scope 44 at $DIR/reference_prop.rs:+90:5: +90:6 |
| 477 | - StorageDead(_65); // scope 43 at $DIR/reference_prop.rs:+90:5: +90:6 |
| 478 | StorageDead(_64); // scope 42 at $DIR/reference_prop.rs:+90:5: +90:6 |
| 479 | return; // scope 0 at $DIR/reference_prop.rs:+91:2: +91:2 |
| 480 | } |
| 481 | } |
| 482 | |