* cranelift: Enable more SIMD tests * cranelift: Reorganize icmp tests * cranelift: Enable SIMD icmp tests for unsigned ops * cranelift: Cleanup trailing newlines
49 lines
1.3 KiB
Plaintext
49 lines
1.3 KiB
Plaintext
test interpret
|
|
test run
|
|
target x86_64
|
|
target aarch64
|
|
target s390x
|
|
|
|
function %simd_icmp_slt_i8(i8x16, i8x16) -> i8x16 {
|
|
block0(v0: i8x16, v1: i8x16):
|
|
v2 = icmp slt v0, v1
|
|
return v2
|
|
}
|
|
; run: %simd_icmp_slt_i8([0 1 -1 0 -5 1 0 0 0 0 0 0 0 0 0 0], [0 0 -1 1 -1 1 0 0 0 0 0 0 0 0 0 0]) == [0 0 0 -1 -1 0 0 0 0 0 0 0 0 0 0 0]
|
|
|
|
function %simd_icmp_slt_i16(i16x8, i16x8) -> i16x8 {
|
|
block0(v0: i16x8, v1: i16x8):
|
|
v2 = icmp slt v0, v1
|
|
return v2
|
|
}
|
|
; run: %simd_icmp_slt_i16([0 1 -1 0 -5 1 0 0], [0 0 -1 1 -1 1 0 0]) == [0 0 0 -1 -1 0 0 0]
|
|
|
|
function %simd_icmp_slt_i32(i32x4, i32x4) -> i32x4 {
|
|
block0(v0: i32x4, v1: i32x4):
|
|
v2 = icmp slt v0, v1
|
|
return v2
|
|
}
|
|
; run: %simd_icmp_slt_i32([0 1 -1 0], [0 0 -1 1]) == [0 0 0 -1]
|
|
; run: %simd_icmp_slt_i32([-5 1 0 0], [-1 1 0 0]) == [-1 0 0 0]
|
|
|
|
function %simd_icmp_slt_i64(i64x2, i64x2) -> i64x2 {
|
|
block0(v0: i64x2, v1: i64x2):
|
|
v2 = icmp slt v0, v1
|
|
return v2
|
|
}
|
|
; run: %simd_icmp_slt_i64([0 1], [0 0]) == [0 0]
|
|
; run: %simd_icmp_slt_i64([-1 0], [-1 1]) == [0 -1]
|
|
; run: %simd_icmp_slt_i64([-5 1], [-1 1]) == [-1 0]
|
|
; run: %simd_icmp_slt_i64([0 0], [0 0]) == [0 0]
|
|
|
|
|
|
function %icmp_slt_const_i32x4() -> i8 {
|
|
block0:
|
|
v0 = vconst.i32x4 [-1 1 1 1]
|
|
v1 = vconst.i32x4 [1 2 3 4]
|
|
v2 = icmp slt v0, v1
|
|
v8 = vall_true v2
|
|
return v8
|
|
}
|
|
; run: %icmp_slt_const_i32x4() == 1
|