rust/tests/mir-opt/inline/inline_any_operand.bar.Inline.after.mir
2023-01-11 09:32:08 +00:00

37 lines
2.5 KiB
Rust

// MIR for `bar` after Inline
fn bar() -> bool {
let mut _0: bool; // return place in scope 0 at $DIR/inline_any_operand.rs:+0:13: +0:17
let _1: fn(i32, i32) -> bool {foo}; // in scope 0 at $DIR/inline_any_operand.rs:+1:9: +1:10
let mut _2: fn(i32, i32) -> bool {foo}; // in scope 0 at $DIR/inline_any_operand.rs:+2:5: +2:6
let mut _3: i32; // in scope 0 at $DIR/inline_any_operand.rs:+2:5: +2:13
let mut _4: i32; // in scope 0 at $DIR/inline_any_operand.rs:+2:5: +2:13
scope 1 {
debug f => _1; // in scope 1 at $DIR/inline_any_operand.rs:+1:9: +1:10
scope 2 (inlined foo) { // at $DIR/inline_any_operand.rs:12:5: 12:13
debug x => _3; // in scope 2 at $DIR/inline_any_operand.rs:16:8: 16:9
debug y => _4; // in scope 2 at $DIR/inline_any_operand.rs:16:16: 16:17
}
}
bb0: {
StorageLive(_1); // scope 0 at $DIR/inline_any_operand.rs:+1:9: +1:10
_1 = foo; // scope 0 at $DIR/inline_any_operand.rs:+1:13: +1:16
// mir::Constant
// + span: $DIR/inline_any_operand.rs:11:13: 11:16
// + literal: Const { ty: fn(i32, i32) -> bool {foo}, val: Value(<ZST>) }
StorageLive(_2); // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:6
_2 = _1; // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:6
StorageLive(_3); // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
_3 = const 1_i32; // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
StorageLive(_4); // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
_4 = const -1_i32; // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
_0 = Eq(move _3, move _4); // scope 2 at $DIR/inline_any_operand.rs:17:5: 17:11
StorageDead(_4); // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
StorageDead(_3); // scope 1 at $DIR/inline_any_operand.rs:+2:5: +2:13
StorageDead(_2); // scope 1 at $DIR/inline_any_operand.rs:+2:12: +2:13
StorageDead(_1); // scope 0 at $DIR/inline_any_operand.rs:+3:1: +3:2
return; // scope 0 at $DIR/inline_any_operand.rs:+3:2: +3:2
}
}