33 lines
1.0 KiB
Plaintext
33 lines
1.0 KiB
Plaintext
; Test the legalization of function signatures.
|
|
test legalizer
|
|
set is_64bit
|
|
isa intel
|
|
|
|
; regex: V=v\d+
|
|
|
|
function %f() {
|
|
sig0 = (i32) -> i32 native
|
|
; check: sig0 = (i32 [%rdi]) -> i32 [%rax] native
|
|
|
|
sig1 = (i64) -> b1 native
|
|
; check: sig1 = (i64 [%rdi]) -> b1 [%rax] native
|
|
|
|
sig2 = (f32, i64) -> f64 native
|
|
; check: sig2 = (f32 [%xmm0], i64 [%rdi]) -> f64 [%xmm0] native
|
|
|
|
ebb0:
|
|
return
|
|
}
|
|
|
|
function %pass_stack_int64(i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64 vmctx) spiderwasm {
|
|
sig0 = (i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64 vmctx) spiderwasm
|
|
fn0 = sig0 u0:0
|
|
|
|
ebb0(v0: i64, v1: i64, v2: i64, v3: i64, v4: i64, v5: i64, v6: i64, v7: i64, v8: i64, v9: i64, v10: i64, v11: i64, v12: i64, v13: i64, v14: i64, v15: i64, v16: i64, v17: i64, v18: i64, v19: i64, v20: i64):
|
|
call fn0(v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20)
|
|
jump ebb1
|
|
|
|
ebb1:
|
|
return
|
|
}
|