Files
wasmtime/cranelift/filetests/filetests/runtests/i128-extend-2.clif

65 lines
1.9 KiB
Plaintext

test run
set enable_llvm_abi_extensions=true
target aarch64
target x86_64 machinst
; TODO: Merge this file with i128-extend once the x86 legacy backend is removed
function %i128_uextend_i32(i32) -> i128 {
block0(v0: i32):
v1 = uextend.i128 v0
return v1
}
; run: %i128_uextend_i32(0) == 0
; run: %i128_uextend_i32(-1) == 0x00000000_00000000_00000000_ffffffff
; run: %i128_uextend_i32(0xffff_eeee) == 0x00000000_00000000_00000000_ffffeeee
function %i128_sextend_i32(i32) -> i128 {
block0(v0: i32):
v1 = sextend.i128 v0
return v1
}
; run: %i128_sextend_i32(0) == 0
; run: %i128_sextend_i32(-1) == -1
; run: %i128_sextend_i32(0x7fff_ffff) == 0x00000000_00000000_00000000_7fffffff
; run: %i128_sextend_i32(0xffff_eeee) == 0xffffffff_ffffffff_ffffffff_ffff_eeee
function %i128_uextend_i16(i16) -> i128 {
block0(v0: i16):
v1 = uextend.i128 v0
return v1
}
; run: %i128_uextend_i16(0) == 0
; run: %i128_uextend_i16(-1) == 0x00000000_00000000_00000000_0000ffff
; run: %i128_uextend_i16(0xffee) == 0x00000000_00000000_00000000_0000ffee
function %i128_sextend_i16(i16) -> i128 {
block0(v0: i16):
v1 = sextend.i128 v0
return v1
}
; run: %i128_sextend_i16(0) == 0
; run: %i128_sextend_i16(-1) == -1
; run: %i128_sextend_i16(0x7fff) == 0x00000000_00000000_00000000_00007fff
; run: %i128_sextend_i16(0xffee) == 0xffffffff_ffffffff_ffffffff_ffffffee
function %i128_uextend_i8(i8) -> i128 {
block0(v0: i8):
v1 = uextend.i128 v0
return v1
}
; run: %i128_uextend_i8(0) == 0
; run: %i128_uextend_i8(-1) == 0x00000000_00000000_00000000_000000ff
; run: %i128_uextend_i8(0xfe) == 0x00000000_00000000_00000000_000000fe
function %i128_sextend_i8(i8) -> i128 {
block0(v0: i8):
v1 = sextend.i128 v0
return v1
}
; run: %i128_sextend_i8(0) == 0
; run: %i128_sextend_i8(-1) == -1
; run: %i128_sextend_i8(0x7f) == 0x00000000_00000000_00000000_0000007f
; run: %i128_sextend_i8(0xfe) == 0xffffffff_ffffffff_ffffffff_fffffffe