Files
wasmtime/cranelift/filetests/filetests/isa/x86/i128.clif

47 lines
1.0 KiB
Plaintext

test compile
target x86_64
function u0:0(i64, i64) -> i128 fast {
ebb0(v0: i64, v1: i64):
;check: ebb0(v0: i64 [%rdi], v1: i64 [%rsi], v3: i64 [%rbp]):
v2 = iconcat.i64 v0, v1
; check: regmove v0, %rdi -> %rax
; check: regmove v1, %rsi -> %rdx
return v2
; check: v4 = x86_pop.i64
; check: return v0, v1, v4
}
function u0:1(i128) -> i64, i64 fast {
ebb0(v0: i128):
; check: ebb0(v3: i64 [%rdi], v4: i64 [%rsi], v5: i64 [%rbp]):
v1, v2 = isplit v0
; check: regmove v3, %rdi -> %rax
; check: regmove v4, %rsi -> %rdx
return v1, v2
; check: v6 = x86_pop.i64
; check: return v3, v4, v6
}
function u0:2(i64, i128) fast {
; check: ebb0(v0: i64 [%rdi], v2: i64 [%rsi], v3: i64 [%rdx], v6: i64 [%rbp]):
ebb0(v0: i64, v1: i128):
; check: store v2, v0+8
; check: store v3, v0+16
store v1, v0+8
return
}
function u0:3(i64) -> i128 fast {
ebb0(v0: i64):
; check: v2 = load.i64 v0+8
; check: v3 = load.i64 v0+16
v1 = load.i128 v0+8
; check: return v2, v3, v5
return v1
}