summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/issue_91633.bar.built.after.mir
blob: 88a383015b0914f08b20fc792c005885951ebc72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// MIR for `bar` after built

fn bar(_1: Box<[T]>) -> () {
    debug it => _1;                      // in scope 0 at $DIR/issue_91633.rs:+0:12: +0:14
    let mut _0: ();                      // return place in scope 0 at $DIR/issue_91633.rs:+1:2: +1:2
    let mut _2: &<[T] as std::ops::Index<usize>>::Output; // in scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
    let mut _3: &[T];                    // in scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
    scope 1 {
    }

    bb0: {
        StorageLive(_2);                 // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
        StorageLive(_3);                 // scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
        _3 = &(*_1);                     // scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
        _2 = <[T] as Index<usize>>::index(move _3, const 0_usize) -> [return: bb1, unwind: bb3]; // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
                                         // mir::Constant
                                         // + span: $DIR/issue_91633.rs:15:14: 15:19
                                         // + literal: Const { ty: for<'a> fn(&'a [T], usize) -> &'a <[T] as Index<usize>>::Output {<[T] as Index<usize>>::index}, val: Value(<ZST>) }
    }

    bb1: {
        StorageDead(_3);                 // scope 0 at $DIR/issue_91633.rs:+4:18: +4:19
        PlaceMention((*_2));             // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
        StorageDead(_2);                 // scope 0 at $DIR/issue_91633.rs:+4:19: +4:20
        _0 = const ();                   // scope 0 at $DIR/issue_91633.rs:+3:2: +5:3
        drop(_1) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/issue_91633.rs:+5:2: +5:3
    }

    bb2: {
        return;                          // scope 0 at $DIR/issue_91633.rs:+5:3: +5:3
    }

    bb3 (cleanup): {
        drop(_1) -> [return: bb4, unwind terminate]; // scope 0 at $DIR/issue_91633.rs:+5:2: +5:3
    }

    bb4 (cleanup): {
        resume;                          // scope 0 at $DIR/issue_91633.rs:+0:1: +5:3
    }
}