_self_host_vreduce_min_test.nx source
↩ module page · 14 lines · 398 B
1// Minimal smoke for vreduce_min: just call it and return modulo 100.
2import "nx_syscalls.nx"
3
4func main() -> i64 {
5 let a_raw: *u8 = sys_mmap(64)
6 let a: *i64 = a_raw as *i64
7 a[0] = 0x0004000300020001
8 a[1] = 0x0008000700060005
9 a[2] = 0x000c000b000a0009
10 a[3] = 0x0010000f000e000d
11 // min of [1..16] = 1
12 let r: i64 = __simd_vreduce_min_i16_x16(a as *i64)
13 return r
14}