44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
test run
|
|
target aarch64
|
|
target x86_64 machinst
|
|
|
|
function %ireduce_128_64(i64, i64) -> i64 {
|
|
block0(v0: i64, v1: i64):
|
|
v2 = iconcat v0, v1
|
|
v3 = ireduce.i64 v2
|
|
return v3
|
|
}
|
|
; run: %ireduce_128_64(0, 0) == 0
|
|
; run: %ireduce_128_64(-1, -1) == -1
|
|
; run: %ireduce_128_64(0xC0FFEEEE_DECAFFFF, 0xDECAFFFF_C0FFEEEE) == 0xC0FFEEEE_DECAFFFF
|
|
|
|
function %ireduce_128_32(i64, i64) -> i32 {
|
|
block0(v0: i64, v1: i64):
|
|
v2 = iconcat v0, v1
|
|
v3 = ireduce.i32 v2
|
|
return v3
|
|
}
|
|
; run: %ireduce_128_32(0, 0) == 0
|
|
; run: %ireduce_128_32(-1, -1) == -1
|
|
; run: %ireduce_128_32(0xC0FFEEEE_DECAFFFF, 0xDECAFFFF_C0FFEEEE) == 0xDECAFFFF
|
|
|
|
function %ireduce_128_16(i64, i64) -> i16 {
|
|
block0(v0: i64, v1: i64):
|
|
v2 = iconcat v0, v1
|
|
v3 = ireduce.i16 v2
|
|
return v3
|
|
}
|
|
; run: %ireduce_128_16(0, 0) == 0
|
|
; run: %ireduce_128_16(-1, -1) == -1
|
|
; run: %ireduce_128_16(0xC0FFEEEE_DECAFFFF, 0xDECAFFFF_C0FFEEEE) == 0xFFFF
|
|
|
|
function %ireduce_128_8(i64, i64) -> i8 {
|
|
block0(v0: i64, v1: i64):
|
|
v2 = iconcat v0, v1
|
|
v3 = ireduce.i8 v2
|
|
return v3
|
|
}
|
|
; run: %ireduce_128_8(0, 0) == 0
|
|
; run: %ireduce_128_8(-1, -1) == -1
|
|
; run: %ireduce_128_8(0xC0FFEEEE_DECAFFFF, 0xDECAFFFF_C0FFEEEE) == 0xFF
|