537 {
538
539
540 uint32_t a[4] = {0x40000000,
as_u32(-0x40000000), 0x7FFFFFFF, 0x00000001};
541 uint32_t b[4] = {0x40000000, 0x40000000, 0x00000002, 0x7FFFFFFF};
542 uint32_t output[4] = {0};
543 store_u32_4(output, mulhi32_i32_4(load_u32_4(a), load_u32_4(b)));
544 if (output[0] != 0x10000000) return false;
545 if (
as_i32(output[1]) !=
as_i32(0xF0000000))
return false;
546 if (output[2] != 0x00000000) return false;
547 if (output[3] != 0x00000000) return false;
548 return true;
549}
uint32_t as_u32(int32_t v)
int32_t as_i32(uint32_t v)