Skip to content

Commit

Permalink
Update disas tests
Browse files Browse the repository at this point in the history
  • Loading branch information
fitzgen committed Sep 21, 2024
1 parent 15965fa commit 3bb1841
Show file tree
Hide file tree
Showing 186 changed files with 1,961 additions and 2,091 deletions.
2 changes: 1 addition & 1 deletion cranelift/filetests/filetests/isa/pulley64/trap.clif
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ block1:
block2:
v2 = iconst.i64 0
trapnz v2, user0
return
Return
}

; VCode:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,33 +48,23 @@
;; @0047 v7 = load.i64 notrap aligned v0+104
;; @0047 v6 = uextend.i64 v2
;; @0047 v8 = icmp ugt v6, v7
;; @0047 brif v8, block2, block3
;;
;; block2 cold:
;; @0047 trap heap_oob
;;
;; block3:
;; @0047 trapnz v8, heap_oob
;; @0047 v9 = load.i64 notrap aligned checked v0+96
;; @0047 v10 = iadd v9, v6
;; @0047 v11 = load.i32 little heap v10
;; @004c brif.i8 v8, block4, block5
;;
;; block4 cold:
;; @004c trap heap_oob
;;
;; block5:
;; @004c v13 = load.i64 notrap aligned v0+104
;; @004c v14 = icmp ugt v6, v13
;; @004c trapnz v14, heap_oob
;; @004c v15 = load.i64 notrap aligned checked v0+96
;; @004c v16 = iadd v15, v6
;; @004c v17 = iconst.i64 4
;; @004c v18 = iadd.i64 v10, v17 ; v17 = 4
;; @004c v18 = iadd v16, v17 ; v17 = 4
;; @004c v19 = load.i32 little heap v18
;; @0051 v21 = iconst.i64 0x0010_0003
;; @0051 v22 = uadd_overflow_trap.i64 v6, v21, heap_oob ; v21 = 0x0010_0003
;; @0051 v24 = icmp ugt v22, v7
;; @0051 brif v24, block6, block7
;;
;; block6 cold:
;; @0051 trap heap_oob
;;
;; block7:
;; @0051 v22 = uadd_overflow_trap v6, v21, heap_oob ; v21 = 0x0010_0003
;; @0051 v23 = load.i64 notrap aligned v0+104
;; @0051 v24 = icmp ugt v22, v23
;; @0051 trapnz v24, heap_oob
;; @0051 v25 = load.i64 notrap aligned checked v0+96
;; @0051 v26 = iadd v25, v6
;; @0051 v27 = iconst.i64 0x000f_ffff
Expand All @@ -99,38 +89,28 @@
;; @005d v7 = load.i64 notrap aligned v0+104
;; @005d v6 = uextend.i64 v2
;; @005d v8 = icmp ugt v6, v7
;; @005d brif v8, block2, block3
;;
;; block2 cold:
;; @005d trap heap_oob
;;
;; block3:
;; @005d trapnz v8, heap_oob
;; @005d v9 = load.i64 notrap aligned checked v0+96
;; @005d v10 = iadd v9, v6
;; @005d store.i32 little heap v3, v10
;; @0064 brif.i8 v8, block4, block5
;;
;; block4 cold:
;; @0064 trap heap_oob
;;
;; block5:
;; @005d store little heap v3, v10
;; @0064 v12 = load.i64 notrap aligned v0+104
;; @0064 v13 = icmp ugt v6, v12
;; @0064 trapnz v13, heap_oob
;; @0064 v14 = load.i64 notrap aligned checked v0+96
;; @0064 v15 = iadd v14, v6
;; @0064 v16 = iconst.i64 4
;; @0064 v17 = iadd.i64 v10, v16 ; v16 = 4
;; @0064 store.i32 little heap v4, v17
;; @0064 v17 = iadd v15, v16 ; v16 = 4
;; @0064 store little heap v4, v17
;; @006b v19 = iconst.i64 0x0010_0003
;; @006b v20 = uadd_overflow_trap.i64 v6, v19, heap_oob ; v19 = 0x0010_0003
;; @006b v22 = icmp ugt v20, v7
;; @006b brif v22, block6, block7
;;
;; block6 cold:
;; @006b trap heap_oob
;;
;; block7:
;; @006b v20 = uadd_overflow_trap v6, v19, heap_oob ; v19 = 0x0010_0003
;; @006b v21 = load.i64 notrap aligned v0+104
;; @006b v22 = icmp ugt v20, v21
;; @006b trapnz v22, heap_oob
;; @006b v23 = load.i64 notrap aligned checked v0+96
;; @006b v24 = iadd v23, v6
;; @006b v25 = iconst.i64 0x000f_ffff
;; @006b v26 = iadd v24, v25 ; v25 = 0x000f_ffff
;; @006b store.i32 little heap v5, v26
;; @006b store little heap v5, v26
;; @0070 jump block1
;;
;; block1:
Expand Down
4 changes: 2 additions & 2 deletions tests/disas/epoch-interruption-x86.wat
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,12 @@
;; jae 0x64
;; jmp 0x46
;; 57: movq %r13, %rdi
;; callq 0xdf
;; callq 0xf3
;; jmp 0x46
;; 64: movq 0x10(%r12), %rax
;; cmpq %rax, %rdi
;; jb 0x46
;; 72: movq %r13, %rdi
;; callq 0xdf
;; callq 0xf3
;; jmp 0x46
;; 7f: ud2
53 changes: 11 additions & 42 deletions tests/disas/gc/externref-globals.wat
Original file line number Diff line number Diff line change
Expand Up @@ -46,30 +46,19 @@
;; @0034 v19 = uadd_overflow_trap v17, v16, user65535 ; v16 = 8
;; @0034 v14 = load.i64 notrap aligned readonly v0+48
;; @0034 v20 = icmp ult v19, v14
;; @0034 brif v20, block7, block6
;;
;; block6 cold:
;; @0034 trap user65535
;;
;; block7:
;; @0034 trapz v20, user65535
;; @0034 v13 = load.i64 notrap aligned readonly v0+40
;; @0034 v21 = iadd v13, v17
;; @0034 v22 = load.i64 notrap aligned v21
;; v40 = load.i32 notrap v44
;; @0034 v27 = uextend.i64 v40
;; v54 = iconst.i64 8
;; @0034 v29 = uadd_overflow_trap v27, v54, user65535 ; v54 = 8
;; @0034 v31 = uadd_overflow_trap v29, v54, user65535 ; v54 = 8
;; @0034 v29 = uadd_overflow_trap v27, v16, user65535 ; v16 = 8
;; @0034 v31 = uadd_overflow_trap v29, v16, user65535 ; v16 = 8
;; @0034 v32 = icmp ult v31, v14
;; @0034 brif v32, block9, block8
;;
;; block8 cold:
;; @0034 trap user65535
;;
;; block9:
;; @0034 trapz v32, user65535
;; v48 = iconst.i64 1
;; @0034 v23 = iadd.i64 v22, v48 ; v48 = 1
;; @0034 v33 = iadd.i64 v13, v29
;; @0034 v23 = iadd v22, v48 ; v48 = 1
;; @0034 v33 = iadd v13, v29
;; @0034 store notrap aligned v23, v33
;; v39 = load.i32 notrap v44
;; @0034 store notrap aligned v39, v9
Expand Down Expand Up @@ -114,23 +103,13 @@
;; @003b v14 = uadd_overflow_trap v12, v34, user65535 ; v34 = 8
;; @003b v32 = load.i64 notrap aligned readonly v0+48
;; @003b v15 = icmp ult v14, v32
;; @003b brif v15, block9, block8
;;
;; block8 cold:
;; @003b trap user65535
;;
;; block9:
;; @003b trapz v15, user65535
;; @003b v31 = load.i64 notrap aligned readonly v0+40
;; @003b v16 = iadd v31, v12
;; @003b v17 = load.i64 notrap aligned v16
;; @003b brif.i8 v15, block11, block10
;;
;; block10 cold:
;; @003b trap user65535
;;
;; block11:
;; @003b trapz v15, user65535
;; v56 = iconst.i64 1
;; @003b v18 = iadd.i64 v17, v56 ; v56 = 1
;; @003b v18 = iadd v17, v56 ; v56 = 1
;; @003b store notrap aligned v18, v16
;; @003b jump block3
;;
Expand All @@ -148,12 +127,7 @@
;; @003b v37 = uadd_overflow_trap v35, v63, user65535 ; v63 = 8
;; v64 = load.i64 notrap aligned readonly v0+48
;; @003b v38 = icmp ult v37, v64
;; @003b brif v38, block13, block12
;;
;; block12 cold:
;; @003b trap user65535
;;
;; block13:
;; @003b trapz v38, user65535
;; v65 = load.i64 notrap aligned readonly v0+40
;; @003b v39 = iadd v65, v35
;; @003b v40 = load.i64 notrap aligned v39
Expand All @@ -168,12 +142,7 @@
;; @003b jump block7
;;
;; block6:
;; @003b brif.i8 v38, block15, block14
;;
;; block14 cold:
;; @003b trap user65535
;;
;; block15:
;; @003b trapz.i8 v38, user65535
;; v66 = iadd.i64 v40, v58 ; v58 = -1
;; @003b store notrap aligned v66, v39
;; @003b jump block7
Expand Down
83 changes: 16 additions & 67 deletions tests/disas/gc/struct-get.wat
Original file line number Diff line number Diff line change
Expand Up @@ -31,25 +31,15 @@
;; stack_limit = gv2
;;
;; block0(v0: i64, v1: i64, v2: i32):
;; @0033 brif v2, block3, block2
;;
;; block2 cold:
;; @0033 trap null_reference
;;
;; block3:
;; @0033 trapz v2, null_reference
;; @0033 v7 = uextend.i64 v2
;; @0033 v8 = iconst.i64 16
;; @0033 v9 = uadd_overflow_trap v7, v8, user65535 ; v8 = 16
;; @0033 v10 = iconst.i64 4
;; @0033 v11 = uadd_overflow_trap v9, v10, user65535 ; v10 = 4
;; @0033 v6 = load.i64 notrap aligned readonly v0+48
;; @0033 v12 = icmp ult v11, v6
;; @0033 brif v12, block5, block4
;;
;; block4 cold:
;; @0033 trap user65535
;;
;; block5:
;; @0033 trapz v12, user65535
;; @0033 v5 = load.i64 notrap aligned readonly v0+40
;; @0033 v13 = iadd v5, v9
;; @0033 v14 = load.f32 notrap aligned v13
Expand All @@ -67,25 +57,15 @@
;; stack_limit = gv2
;;
;; block0(v0: i64, v1: i64, v2: i32):
;; @003c brif v2, block3, block2
;;
;; block2 cold:
;; @003c trap null_reference
;;
;; block3:
;; @003c trapz v2, null_reference
;; @003c v7 = uextend.i64 v2
;; @003c v8 = iconst.i64 20
;; @003c v9 = uadd_overflow_trap v7, v8, user65535 ; v8 = 20
;; @003c v10 = iconst.i64 1
;; @003c v11 = uadd_overflow_trap v9, v10, user65535 ; v10 = 1
;; @003c v6 = load.i64 notrap aligned readonly v0+48
;; @003c v12 = icmp ult v11, v6
;; @003c brif v12, block5, block4
;;
;; block4 cold:
;; @003c trap user65535
;;
;; block5:
;; @003c trapz v12, user65535
;; @003c v5 = load.i64 notrap aligned readonly v0+40
;; @003c v13 = iadd v5, v9
;; @003c v14 = load.i8 notrap aligned v13
Expand All @@ -104,25 +84,15 @@
;; stack_limit = gv2
;;
;; block0(v0: i64, v1: i64, v2: i32):
;; @0045 brif v2, block3, block2
;;
;; block2 cold:
;; @0045 trap null_reference
;;
;; block3:
;; @0045 trapz v2, null_reference
;; @0045 v7 = uextend.i64 v2
;; @0045 v8 = iconst.i64 20
;; @0045 v9 = uadd_overflow_trap v7, v8, user65535 ; v8 = 20
;; @0045 v10 = iconst.i64 1
;; @0045 v11 = uadd_overflow_trap v9, v10, user65535 ; v10 = 1
;; @0045 v6 = load.i64 notrap aligned readonly v0+48
;; @0045 v12 = icmp ult v11, v6
;; @0045 brif v12, block5, block4
;;
;; block4 cold:
;; @0045 trap user65535
;;
;; block5:
;; @0045 trapz v12, user65535
;; @0045 v5 = load.i64 notrap aligned readonly v0+40
;; @0045 v13 = iadd v5, v9
;; @0045 v14 = load.i8 notrap aligned v13
Expand All @@ -144,25 +114,15 @@
;; stack_limit = gv2
;;
;; block0(v0: i64, v1: i64, v2: i32):
;; @004e brif v2, block7, block6
;;
;; block6 cold:
;; @004e trap null_reference
;;
;; block7:
;; @004e trapz v2, null_reference
;; @004e v7 = uextend.i64 v2
;; @004e v8 = iconst.i64 24
;; @004e v9 = uadd_overflow_trap v7, v8, user65535 ; v8 = 24
;; @004e v10 = iconst.i64 4
;; @004e v11 = uadd_overflow_trap v9, v10, user65535 ; v10 = 4
;; @004e v6 = load.i64 notrap aligned readonly v0+48
;; @004e v12 = icmp ult v11, v6
;; @004e brif v12, block9, block8
;;
;; block8 cold:
;; @004e trap user65535
;;
;; block9:
;; @004e trapz v12, user65535
;; @004e v5 = load.i64 notrap aligned readonly v0+40
;; @004e v13 = iadd v5, v9
;; @004e v14 = load.i32 notrap aligned v13
Expand All @@ -187,35 +147,24 @@
;; @004e v28 = uadd_overflow_trap v26, v27, user65535 ; v27 = 8
;; @004e v30 = uadd_overflow_trap v28, v27, user65535 ; v27 = 8
;; @004e v31 = icmp ult v30, v6
;; @004e brif v31, block11, block10
;;
;; block10 cold:
;; @004e trap user65535
;;
;; block11:
;; @004e trapz v31, user65535
;; @004e v32 = iadd.i64 v5, v28
;; @004e v33 = load.i64 notrap aligned v32
;; v51 = load.i32 notrap v54
;; @004e v38 = uextend.i64 v51
;; v64 = iconst.i64 8
;; @004e v40 = uadd_overflow_trap v38, v64, user65535 ; v64 = 8
;; @004e v42 = uadd_overflow_trap v40, v64, user65535 ; v64 = 8
;; @004e v40 = uadd_overflow_trap v38, v27, user65535 ; v27 = 8
;; @004e v42 = uadd_overflow_trap v40, v27, user65535 ; v27 = 8
;; @004e v43 = icmp ult v42, v6
;; @004e brif v43, block13, block12
;;
;; block12 cold:
;; @004e trap user65535
;;
;; block13:
;; @004e trapz v43, user65535
;; v58 = iconst.i64 1
;; @004e v34 = iadd.i64 v33, v58 ; v58 = 1
;; @004e v34 = iadd v33, v58 ; v58 = 1
;; @004e v44 = iadd.i64 v5, v40
;; @004e store notrap aligned v34, v44
;; v50 = load.i32 notrap v54
;; @004e store notrap aligned v50, v20
;; v65 = iconst.i64 4
;; v66 = iadd.i64 v20, v65 ; v65 = 4
;; @004e store notrap aligned v66, v19
;; v64 = iconst.i64 4
;; v65 = iadd.i64 v20, v64 ; v64 = 4
;; @004e store notrap aligned v65, v19
;; @004e jump block5
;;
;; block3 cold:
Expand Down
Loading

0 comments on commit 3bb1841

Please sign in to comment.