Files
wasmtime/cranelift/filetests/filetests/isa/s390x/traps.clif
Trevor Elliott 8abfe928d6 Reuse the DominatorTree postorder travesal in BlockLoweringOrder (#5843)
* Rework the blockorder module to reuse the dom tree's cfg postorder

* Update domtree tests

* Treat br_table with an empty jump table as multiple block exits

* Bless tests

* Change branch_idx to succ_idx and fix the comment
2023-02-23 22:05:20 +00:00

128 lines
1.8 KiB
Plaintext

test compile precise-output
target s390x
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; TRAP/RESUMABLE_TRAP
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function %trap() {
block0:
trap user0
}
; VCode:
; block0:
; trap
;
; Disassembled:
; block0: ; offset 0x0
; .byte 0x00, 0x00 ; trap: user0
function %resumable_trap() {
block0:
trap user0
}
; VCode:
; block0:
; trap
;
; Disassembled:
; block0: ; offset 0x0
; .byte 0x00, 0x00 ; trap: user0
function %trapz(i64) {
block0(v0: i64):
v1 = iconst.i64 42
v2 = icmp eq v0, v1
trapz v2, user0
return
}
; VCode:
; block0:
; clgfi %r2, 42
; jge label2 ; jg label1
; block2:
; br %r14
; block1:
; trap
;
; Disassembled:
; block0: ; offset 0x0
; clgfi %r2, 0x2a
; jgne 0xe
; block1: ; offset 0xc
; br %r14
; block2: ; offset 0xe
; .byte 0x00, 0x00 ; trap: user0
function %trapnz(i64) {
block0(v0: i64):
v1 = iconst.i64 42
v2 = icmp eq v0, v1
trapnz v2, user0
return
}
; VCode:
; block0:
; clgfi %r2, 42
; jge label2 ; jg label1
; block1:
; br %r14
; block2:
; trap
;
; Disassembled:
; block0: ; offset 0x0
; clgfi %r2, 0x2a
; jge 0xe
; block1: ; offset 0xc
; br %r14
; block2: ; offset 0xe
; .byte 0x00, 0x00 ; trap: user0
function %resumable_trapnz(i64) {
block0(v0: i64):
v1 = iconst.i64 42
v2 = icmp eq v0, v1
trapnz v2, user0
return
}
; VCode:
; block0:
; clgfi %r2, 42
; jge label2 ; jg label1
; block1:
; br %r14
; block2:
; trap
;
; Disassembled:
; block0: ; offset 0x0
; clgfi %r2, 0x2a
; jge 0xe
; block1: ; offset 0xc
; br %r14
; block2: ; offset 0xe
; .byte 0x00, 0x00 ; trap: user0
function %h() {
block0:
debugtrap
return
}
; VCode:
; block0:
; debugtrap
; br %r14
;
; Disassembled:
; block0: ; offset 0x0
; .byte 0x00, 0x01
; br %r14