49 lines
1.9 KiB
Plaintext
49 lines
1.9 KiB
Plaintext
test run
|
|
set enable_llvm_abi_extensions=true
|
|
target aarch64
|
|
target x86_64 machinst
|
|
|
|
function %ctz_i128(i128) -> i128 {
|
|
block0(v0: i128):
|
|
v1 = ctz v0
|
|
return v1
|
|
}
|
|
; run: %ctz_i128(0x00000000_00000000_00000000_00000000) == 128
|
|
; run: %ctz_i128(0x00000000_00000000_FFFFFFFF_FFFFFFFF) == 0
|
|
; run: %ctz_i128(0xFFFFFFFF_FFFFFFFF_00000000_00000000) == 64
|
|
; run: %ctz_i128(0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFF) == 0
|
|
; run: %ctz_i128(0xF0000000_00000000_FFFFFFFF_00000000) == 32
|
|
; run: %ctz_i128(0xFF000000_00000000_F0000000_00000000) == 60
|
|
; run: %ctz_i128(0x00000000_00000000_00000001_00000000) == 32
|
|
; run: %ctz_i128(0x00000001_00000000_00000000_00000000) == 96
|
|
; run: %ctz_i128(0x00000001_00000000_00000000_00010000) == 16
|
|
; run: %ctz_i128(0x00000000_00000000_00000000_00010000) == 16
|
|
|
|
function %clz_i128(i128) -> i128 {
|
|
block0(v0: i128):
|
|
v1 = clz v0
|
|
return v1
|
|
}
|
|
; run: %clz_i128(0x00000000_00000000_00000000_00000000) == 128
|
|
; run: %clz_i128(0x00000000_00000000_FFFFFFFF_FFFFFFFF) == 64
|
|
; run: %clz_i128(0xFFFFFFFF_FFFFFFFF_00000000_00000000) == 0
|
|
; run: %clz_i128(0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFF) == 0
|
|
; run: %clz_i128(0x40000000_00000000_FFFFFFFF_FFFFFFFF) == 1
|
|
; run: %clz_i128(0x20000000_00000000_FFFFFFFF_FFFFFFFF) == 2
|
|
; run: %clz_i128(0x00000000_80000000_00000000_00000000) == 32
|
|
; run: %clz_i128(0x00000001_00000000_00000000_00000000) == 31
|
|
; run: %clz_i128(0x00000001_00000000_00000000_00010000) == 31
|
|
; run: %clz_i128(0x00000000_00000000_00000000_00010000) == 111
|
|
|
|
function %popcnt_i128(i128) -> i128 {
|
|
block0(v0: i128):
|
|
v1 = popcnt v0
|
|
return v1
|
|
}
|
|
; run: %popcnt_i128(0x00000000_00000000_00000000_00000000) == 0
|
|
; run: %popcnt_i128(0x00000000_00000000_FFFFFFFF_FFFFFFFF) == 64
|
|
; run: %popcnt_i128(0xFFFFFFFF_FFFFFFFF_00000000_00000000) == 64
|
|
; run: %popcnt_i128(0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFF) == 128
|
|
; run: %popcnt_i128(0x55555555_55555555_55555555_55555555) == 64
|
|
; run: %popcnt_i128(0xDECAFFFF_C0FFEEEE_C0FFEEEE_DECAFFFF) == 96
|