cranelift: Expand i128 extend testcases

This commit is contained in:
Afonso Bordado
2021-06-20 09:26:09 +01:00
parent 7ce46043dc
commit da4daa6f32

View File

@@ -4,26 +4,23 @@ test run
target x86_64 machinst target x86_64 machinst
target x86_64 legacy target x86_64 legacy
function %i128_uextend() -> b1 { function %i128_uextend(i64) -> i64, i64 {
block0: block0(v0: i64):
v0 = iconst.i64 0xffff_ffff_eeee_0000
v1 = uextend.i128 v0 v1 = uextend.i128 v0
v2, v3 = isplit v1 v2, v3 = isplit v1
v4 = icmp_imm eq v2, 0xffff_ffff_eeee_0000 return v2, v3
v5 = icmp_imm eq v3, 0
v6 = band v4, v5
return v6
} }
; run ; run: %i128_uextend(0) == [0, 0]
; run: %i128_uextend(-1) == [-1, 0]
; run: %i128_uextend(0xffff_ffff_eeee_0000) == [0xffff_ffff_eeee_0000, 0]
function %i128_sextend() -> b1 { function %i128_sextend(i64) -> i64, i64 {
block0: block0(v0: i64):
v0 = iconst.i64 0xffff_ffff_eeee_0000
v1 = sextend.i128 v0 v1 = sextend.i128 v0
v2, v3 = isplit v1 v2, v3 = isplit v1
v4 = icmp_imm eq v2, 0xffff_ffff_eeee_0000 return v2, v3
v5 = icmp_imm eq v3, 0xffff_ffff_ffff_ffff
v6 = band v4, v5
return v6
} }
; run ; run: %i128_sextend(0) == [0, 0]
; run: %i128_sextend(-1) == [-1, -1]
; run: %i128_sextend(0x7fff_ffff_ffff_ffff) == [0x7fff_ffff_ffff_ffff, 0x0000_0000_0000_0000]
; run: %i128_sextend(0xffff_ffff_eeee_0000) == [0xffff_ffff_eeee_0000, 0xffff_ffff_ffff_ffff]