30 lines
675 B
Diff
30 lines
675 B
Diff
- // MIR for `borrowed` before GVN
|
|
+ // MIR for `borrowed` after GVN
|
|
|
|
fn borrowed(_1: T) -> () {
|
|
let mut _0: ();
|
|
let mut _2: T;
|
|
let mut _3: &T;
|
|
|
|
bb0: {
|
|
_2 = _1;
|
|
_3 = &_1;
|
|
_0 = opaque::<&T>(_3) -> [return: bb1, unwind unreachable];
|
|
}
|
|
|
|
bb1: {
|
|
- _0 = opaque::<T>(_2) -> [return: bb2, unwind unreachable];
|
|
+ _0 = opaque::<T>(_1) -> [return: bb2, unwind unreachable];
|
|
}
|
|
|
|
bb2: {
|
|
- _0 = opaque::<T>((*_3)) -> [return: bb3, unwind unreachable];
|
|
+ _0 = opaque::<T>(_1) -> [return: bb3, unwind unreachable];
|
|
}
|
|
|
|
bb3: {
|
|
return;
|
|
}
|
|
}
|
|
|