2021-11-25 16:13:16 -06:00
|
|
|
#![feature(platform_intrinsics, repr_simd)]
|
|
|
|
|
|
|
|
extern "platform-intrinsic" {
|
|
|
|
pub(crate) fn simd_rem<T>(x: T, y: T) -> T;
|
|
|
|
}
|
|
|
|
|
|
|
|
#[repr(simd)]
|
|
|
|
#[allow(non_camel_case_types)]
|
|
|
|
struct i32x2(i32, i32);
|
|
|
|
|
2022-06-21 01:40:39 -05:00
|
|
|
fn main() {
|
|
|
|
unsafe {
|
|
|
|
let x = i32x2(1, 1);
|
|
|
|
let y = i32x2(1, 0);
|
2022-07-11 06:44:55 -05:00
|
|
|
simd_rem(x, y); //~ERROR: Undefined Behavior: calculating the remainder with a divisor of zero
|
2022-06-21 01:40:39 -05:00
|
|
|
}
|
|
|
|
}
|