Update filetests
This commit is contained in:
@@ -296,22 +296,6 @@ block0(v0: i128):
|
|||||||
; nextln: ldp fp, lr, [sp], #16
|
; nextln: ldp fp, lr, [sp], #16
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_store_slot_offset(i128) {
|
|
||||||
ss0 = explicit_slot 16, offset 16
|
|
||||||
|
|
||||||
block0(v0: i128):
|
|
||||||
stack_store.i128 v0, ss0
|
|
||||||
return
|
|
||||||
}
|
|
||||||
; check: stp fp, lr, [sp, #-16]!
|
|
||||||
; nextln: mov fp, sp
|
|
||||||
; nextln: sub sp, sp, #16
|
|
||||||
; nextln: mov x2, sp
|
|
||||||
; nextln: stp x0, x1, [x2]
|
|
||||||
; nextln: add sp, sp, #16
|
|
||||||
; nextln: ldp fp, lr, [sp], #16
|
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_store_inst_offset(i128) {
|
function %i128_stack_store_inst_offset(i128) {
|
||||||
ss0 = explicit_slot 16
|
ss0 = explicit_slot 16
|
||||||
ss1 = explicit_slot 16
|
ss1 = explicit_slot 16
|
||||||
@@ -374,26 +358,6 @@ block0:
|
|||||||
; nextln: ret
|
; nextln: ret
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_load_slot_offset() -> i128 {
|
|
||||||
ss0 = explicit_slot 16, offset 16
|
|
||||||
|
|
||||||
block0:
|
|
||||||
v0 = stack_load.i128 ss0
|
|
||||||
return v0
|
|
||||||
}
|
|
||||||
; check: stp fp, lr, [sp, #-16]!
|
|
||||||
; nextln: mov fp, sp
|
|
||||||
; nextln: sub sp, sp, #16
|
|
||||||
; nextln: mov x0, sp
|
|
||||||
; nextln: ldp x1, x0, [x0]
|
|
||||||
; nextln: mov x2, x0
|
|
||||||
; nextln: mov x0, x1
|
|
||||||
; nextln: mov x1, x2
|
|
||||||
; nextln: add sp, sp, #16
|
|
||||||
; nextln: ldp fp, lr, [sp], #16
|
|
||||||
; nextln: ret
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_load_inst_offset() -> i128 {
|
function %i128_stack_load_inst_offset() -> i128 {
|
||||||
ss0 = explicit_slot 16
|
ss0 = explicit_slot 16
|
||||||
|
|||||||
@@ -123,11 +123,8 @@ block0(v90: i32, v91: f32):
|
|||||||
|
|
||||||
; Stack slot references
|
; Stack slot references
|
||||||
function %stack() {
|
function %stack() {
|
||||||
ss10 = spill_slot 8
|
ss10 = explicit_slot 8
|
||||||
ss2 = explicit_slot 4
|
ss2 = explicit_slot 4
|
||||||
ss3 = incoming_arg 4, offset 8
|
|
||||||
ss4 = outgoing_arg 4
|
|
||||||
ss5 = emergency_slot 4
|
|
||||||
|
|
||||||
block0:
|
block0:
|
||||||
v1 = stack_load.i32 ss10
|
v1 = stack_load.i32 ss10
|
||||||
@@ -137,10 +134,7 @@ block0:
|
|||||||
}
|
}
|
||||||
; sameln: function %stack() fast {
|
; sameln: function %stack() fast {
|
||||||
; check: ss2 = explicit_slot 4
|
; check: ss2 = explicit_slot 4
|
||||||
; check: ss3 = incoming_arg 4, offset 8
|
; check: ss10 = explicit_slot 8
|
||||||
; check: ss4 = outgoing_arg 4
|
|
||||||
; check: ss5 = emergency_slot 4
|
|
||||||
; check: ss10 = spill_slot 8
|
|
||||||
|
|
||||||
; check: block0:
|
; check: block0:
|
||||||
; nextln: v1 = stack_load.i32 ss10
|
; nextln: v1 = stack_load.i32 ss10
|
||||||
|
|||||||
@@ -22,25 +22,6 @@ block0(v0: i128):
|
|||||||
; run: %i128_stack_store_load(0xDECAFFFF_C0FFEEEE_C0FFEEEE_DECAFFFF) == true
|
; run: %i128_stack_store_load(0xDECAFFFF_C0FFEEEE_C0FFEEEE_DECAFFFF) == true
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_store_load_offset(i128) -> b1 {
|
|
||||||
ss0 = explicit_slot 16, offset 16
|
|
||||||
|
|
||||||
block0(v0: i128):
|
|
||||||
stack_store.i128 v0, ss0
|
|
||||||
v1 = stack_load.i128 ss0
|
|
||||||
|
|
||||||
v2 = icmp.i128 eq v0, v1
|
|
||||||
return v2
|
|
||||||
}
|
|
||||||
; run: %i128_stack_store_load_offset(0) == true
|
|
||||||
; run: %i128_stack_store_load_offset(-1) == true
|
|
||||||
; run: %i128_stack_store_load_offset(0x00000000_00000000_FFFFFFFF_FFFFFFFF) == true
|
|
||||||
; run: %i128_stack_store_load_offset(0xFFFFFFFF_FFFFFFFF_00000000_00000000) == true
|
|
||||||
; run: %i128_stack_store_load_offset(0xFEDCBA98_76543210_01234567_89ABCDEF) == true
|
|
||||||
; run: %i128_stack_store_load_offset(0xA00A00A0_0A00A00A_06060606_06060606) == true
|
|
||||||
; run: %i128_stack_store_load_offset(0xDECAFFFF_C0FFEEEE_C0FFEEEE_DECAFFFF) == true
|
|
||||||
|
|
||||||
|
|
||||||
function %i128_stack_store_load_inst_offset(i128) -> b1 {
|
function %i128_stack_store_load_inst_offset(i128) -> b1 {
|
||||||
ss0 = explicit_slot 16
|
ss0 = explicit_slot 16
|
||||||
ss1 = explicit_slot 16
|
ss1 = explicit_slot 16
|
||||||
|
|||||||
@@ -17,18 +17,6 @@ block0(v0: i64):
|
|||||||
; run: %stack_simple(-1) == -1
|
; run: %stack_simple(-1) == -1
|
||||||
|
|
||||||
|
|
||||||
function %slot_offset(i64) -> i64 {
|
|
||||||
ss0 = explicit_slot 8, offset 8
|
|
||||||
|
|
||||||
block0(v0: i64):
|
|
||||||
stack_store.i64 v0, ss0
|
|
||||||
v1 = stack_load.i64 ss0
|
|
||||||
return v1
|
|
||||||
}
|
|
||||||
; run: %slot_offset(0) == 0
|
|
||||||
; run: %slot_offset(1) == 1
|
|
||||||
; run: %slot_offset(-1) == -1
|
|
||||||
|
|
||||||
function %stack_offset(i64) -> i64 {
|
function %stack_offset(i64) -> i64 {
|
||||||
ss0 = explicit_slot 16
|
ss0 = explicit_slot 16
|
||||||
|
|
||||||
@@ -89,7 +77,7 @@ block0(v0: i8, v1: i64):
|
|||||||
|
|
||||||
|
|
||||||
function %multi_slot_offset_writes(i8, i64) -> i8, i64 {
|
function %multi_slot_offset_writes(i8, i64) -> i8, i64 {
|
||||||
ss0 = explicit_slot 8, offset 8
|
ss0 = explicit_slot 8
|
||||||
ss1 = explicit_slot 8
|
ss1 = explicit_slot 8
|
||||||
|
|
||||||
block0(v0: i8, v1: i64):
|
block0(v0: i8, v1: i64):
|
||||||
@@ -102,21 +90,6 @@ block0(v0: i8, v1: i64):
|
|||||||
; run: %multi_slot_offse(0, 1) == [0, 1]
|
; run: %multi_slot_offse(0, 1) == [0, 1]
|
||||||
; run: %multi_slot_offse(1, 2) == [1, 2]
|
; run: %multi_slot_offse(1, 2) == [1, 2]
|
||||||
|
|
||||||
function %slot_offset_negative(i64, i64) -> i64, i64 {
|
|
||||||
ss0 = explicit_slot 8
|
|
||||||
ss1 = explicit_slot 8, offset -8
|
|
||||||
|
|
||||||
block0(v0: i64, v1: i64):
|
|
||||||
stack_store.i64 v0, ss0
|
|
||||||
stack_store.i64 v1, ss1
|
|
||||||
v2 = stack_load.i64 ss0
|
|
||||||
v3 = stack_load.i64 ss1
|
|
||||||
return v2, v3
|
|
||||||
}
|
|
||||||
; run: %slot_offset_nega(0, 1) == [0, 1]
|
|
||||||
; run: %slot_offset_nega(2, 3) == [2, 3]
|
|
||||||
|
|
||||||
|
|
||||||
function %huge_slots(i64) -> i64 {
|
function %huge_slots(i64) -> i64 {
|
||||||
ss0 = explicit_slot 1048576 ; 1MB Slot
|
ss0 = explicit_slot 1048576 ; 1MB Slot
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user