rust/tests/mir-opt/sroa/simd_sroa.foo.ScalarReplacementOfAggregates.diff
Scott McMurray fe08ba0bae Re-block SRoA on SIMD types
Fixes 144621
2025-07-29 20:41:34 -07:00

33 lines
859 B
Diff

- // MIR for `foo` before ScalarReplacementOfAggregates
+ // MIR for `foo` after ScalarReplacementOfAggregates
fn foo(_1: &[Simd<u8, 16>], _2: Simd<u8, 16>) -> () {
debug simds => _1;
debug _unused => _2;
let mut _0: ();
let _3: std::simd::Simd<u8, 16>;
let _4: usize;
let mut _5: usize;
let mut _6: bool;
scope 1 {
debug a => _3;
}
bb0: {
StorageLive(_3);
StorageLive(_4);
_4 = const 0_usize;
_5 = PtrMetadata(copy _1);
_6 = Lt(copy _4, copy _5);
assert(move _6, "index out of bounds: the length is {} but the index is {}", move _5, copy _4) -> [success: bb1, unwind continue];
}
bb1: {
_3 = copy (*_1)[_4];
StorageDead(_4);
StorageDead(_3);
return;
}
}