Skip to content

Commit 2412899

Browse files
committed
Update some disas tests
1 parent 6ffa923 commit 2412899

File tree

6 files changed

+715
-635
lines changed

6 files changed

+715
-635
lines changed

tests/disas/gc/drc/externref-globals.wat

Lines changed: 85 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -23,53 +23,57 @@
2323
;; stack_limit = gv2
2424
;;
2525
;; block0(v0: i64, v1: i64):
26-
;; v45 = iconst.i64 80
27-
;; @0034 v4 = iadd v0, v45 ; v45 = 80
26+
;; v49 = iconst.i64 80
27+
;; @0034 v4 = iadd v0, v49 ; v49 = 80
2828
;; @0034 v5 = load.i32 notrap aligned v4
29-
;; v46 = stack_addr.i64 ss0
30-
;; store notrap v5, v46
31-
;; v48 = iconst.i32 0
32-
;; @0034 v6 = icmp eq v5, v48 ; v48 = 0
33-
;; @0034 brif v6, block5, block2
29+
;; v50 = stack_addr.i64 ss0
30+
;; store notrap v5, v50
31+
;; v52 = iconst.i32 1
32+
;; @0034 v6 = band v5, v52 ; v52 = 1
33+
;; v54 = iconst.i32 0
34+
;; @0034 v7 = icmp eq v5, v54 ; v54 = 0
35+
;; @0034 v8 = uextend.i32 v7
36+
;; @0034 v9 = bor v6, v8
37+
;; @0034 brif v9, block5, block2
3438
;;
3539
;; block2:
36-
;; @0034 v8 = load.i64 notrap aligned readonly v0+56
37-
;; @0034 v9 = load.i64 notrap aligned v8
38-
;; @0034 v10 = load.i64 notrap aligned v8+8
39-
;; @0034 v11 = icmp eq v9, v10
40-
;; @0034 brif v11, block3, block4
40+
;; @0034 v11 = load.i64 notrap aligned readonly v0+56
41+
;; @0034 v12 = load.i64 notrap aligned v11
42+
;; @0034 v13 = load.i64 notrap aligned v11+8
43+
;; @0034 v14 = icmp eq v12, v13
44+
;; @0034 brif v14, block3, block4
4145
;;
4246
;; block4:
43-
;; @0034 v16 = uextend.i64 v5
44-
;; @0034 v17 = iconst.i64 8
45-
;; @0034 v18 = uadd_overflow_trap v16, v17, user1 ; v17 = 8
46-
;; @0034 v20 = uadd_overflow_trap v18, v17, user1 ; v17 = 8
47-
;; @0034 v15 = load.i64 notrap aligned readonly can_move v0+48
48-
;; @0034 v21 = icmp ule v20, v15
49-
;; @0034 trapz v21, user1
50-
;; @0034 v13 = load.i64 notrap aligned readonly can_move v0+40
51-
;; @0034 v22 = iadd v13, v18
52-
;; @0034 v23 = load.i64 notrap aligned v22
53-
;; v50 = iconst.i64 1
54-
;; @0034 v24 = iadd v23, v50 ; v50 = 1
55-
;; @0034 store notrap aligned v24, v22
56-
;; v41 = load.i32 notrap v46
57-
;; @0034 store notrap aligned v41, v9
58-
;; v53 = iconst.i64 4
59-
;; @0034 v36 = iadd.i64 v9, v53 ; v53 = 4
60-
;; @0034 store notrap aligned v36, v8
47+
;; @0034 v19 = uextend.i64 v5
48+
;; @0034 v20 = iconst.i64 8
49+
;; @0034 v21 = uadd_overflow_trap v19, v20, user1 ; v20 = 8
50+
;; @0034 v23 = uadd_overflow_trap v21, v20, user1 ; v20 = 8
51+
;; @0034 v18 = load.i64 notrap aligned readonly can_move v0+48
52+
;; @0034 v24 = icmp ule v23, v18
53+
;; @0034 trapz v24, user1
54+
;; @0034 v16 = load.i64 notrap aligned readonly can_move v0+40
55+
;; @0034 v25 = iadd v16, v21
56+
;; @0034 v26 = load.i64 notrap aligned v25
57+
;; v56 = iconst.i64 1
58+
;; @0034 v27 = iadd v26, v56 ; v56 = 1
59+
;; @0034 store notrap aligned v27, v25
60+
;; v44 = load.i32 notrap v50
61+
;; @0034 store notrap aligned v44, v12
62+
;; v59 = iconst.i64 4
63+
;; @0034 v39 = iadd.i64 v12, v59 ; v59 = 4
64+
;; @0034 store notrap aligned v39, v11
6165
;; @0034 jump block5
6266
;;
6367
;; block3 cold:
64-
;; @0034 v38 = call fn0(v0, v5), stack_map=[i32 @ ss0+0]
68+
;; @0034 v41 = call fn0(v0, v5), stack_map=[i32 @ ss0+0]
6569
;; @0034 jump block5
6670
;;
6771
;; block5:
68-
;; v39 = load.i32 notrap v46
72+
;; v42 = load.i32 notrap v50
6973
;; @0036 jump block1
7074
;;
7175
;; block1:
72-
;; @0036 return v39
76+
;; @0036 return v42
7377
;; }
7478
;;
7579
;; function u0:1(i64 vmctx, i64, i32) tail {
@@ -82,60 +86,68 @@
8286
;; stack_limit = gv2
8387
;;
8488
;; block0(v0: i64, v1: i64, v2: i32):
85-
;; v58 = iconst.i64 80
86-
;; @003b v4 = iadd v0, v58 ; v58 = 80
89+
;; v64 = iconst.i64 80
90+
;; @003b v4 = iadd v0, v64 ; v64 = 80
8791
;; @003b v5 = load.i32 notrap aligned v4
88-
;; v59 = iconst.i32 0
89-
;; @003b v6 = icmp eq v2, v59 ; v59 = 0
90-
;; @003b brif v6, block3, block2
92+
;; v65 = iconst.i32 1
93+
;; @003b v6 = band v2, v65 ; v65 = 1
94+
;; v66 = iconst.i32 0
95+
;; @003b v7 = icmp eq v2, v66 ; v66 = 0
96+
;; @003b v8 = uextend.i32 v7
97+
;; @003b v9 = bor v6, v8
98+
;; @003b brif v9, block3, block2
9199
;;
92100
;; block2:
93-
;; @003b v11 = uextend.i64 v2
94-
;; @003b v37 = iconst.i64 8
95-
;; @003b v13 = uadd_overflow_trap v11, v37, user1 ; v37 = 8
96-
;; @003b v15 = uadd_overflow_trap v13, v37, user1 ; v37 = 8
97-
;; @003b v35 = load.i64 notrap aligned readonly can_move v0+48
98-
;; @003b v16 = icmp ule v15, v35
99-
;; @003b trapz v16, user1
100-
;; @003b v33 = load.i64 notrap aligned readonly can_move v0+40
101-
;; @003b v17 = iadd v33, v13
102-
;; @003b v18 = load.i64 notrap aligned v17
103-
;; v60 = iconst.i64 1
104-
;; @003b v19 = iadd v18, v60 ; v60 = 1
105-
;; @003b store notrap aligned v19, v17
101+
;; @003b v14 = uextend.i64 v2
102+
;; @003b v43 = iconst.i64 8
103+
;; @003b v16 = uadd_overflow_trap v14, v43, user1 ; v43 = 8
104+
;; @003b v18 = uadd_overflow_trap v16, v43, user1 ; v43 = 8
105+
;; @003b v41 = load.i64 notrap aligned readonly can_move v0+48
106+
;; @003b v19 = icmp ule v18, v41
107+
;; @003b trapz v19, user1
108+
;; @003b v39 = load.i64 notrap aligned readonly can_move v0+40
109+
;; @003b v20 = iadd v39, v16
110+
;; @003b v21 = load.i64 notrap aligned v20
111+
;; v67 = iconst.i64 1
112+
;; @003b v22 = iadd v21, v67 ; v67 = 1
113+
;; @003b store notrap aligned v22, v20
106114
;; @003b jump block3
107115
;;
108116
;; block3:
109-
;; v64 = iadd.i64 v0, v58 ; v58 = 80
110-
;; @003b store.i32 notrap aligned v2, v64
111-
;; v65 = iconst.i32 0
112-
;; v66 = icmp.i32 eq v5, v65 ; v65 = 0
113-
;; @003b brif v66, block7, block4
117+
;; v72 = iadd.i64 v0, v64 ; v64 = 80
118+
;; @003b store.i32 notrap aligned v2, v72
119+
;; v73 = iconst.i32 1
120+
;; v74 = band.i32 v5, v73 ; v73 = 1
121+
;; v75 = iconst.i32 0
122+
;; v76 = icmp.i32 eq v5, v75 ; v75 = 0
123+
;; @003b v36 = uextend.i32 v76
124+
;; @003b v37 = bor v74, v36
125+
;; @003b brif v37, block7, block4
114126
;;
115127
;; block4:
116-
;; @003b v36 = uextend.i64 v5
117-
;; v67 = iconst.i64 8
118-
;; @003b v38 = uadd_overflow_trap v36, v67, user1 ; v67 = 8
119-
;; @003b v40 = uadd_overflow_trap v38, v67, user1 ; v67 = 8
120-
;; v68 = load.i64 notrap aligned readonly can_move v0+48
121-
;; @003b v41 = icmp ule v40, v68
122-
;; @003b trapz v41, user1
123-
;; v69 = load.i64 notrap aligned readonly can_move v0+40
124-
;; @003b v42 = iadd v69, v38
125-
;; @003b v43 = load.i64 notrap aligned v42
126-
;; v62 = iconst.i64 -1
127-
;; @003b v44 = iadd v43, v62 ; v62 = -1
128-
;; v63 = iconst.i64 0
129-
;; @003b v45 = icmp eq v44, v63 ; v63 = 0
130-
;; @003b brif v45, block5, block6
128+
;; @003b v42 = uextend.i64 v5
129+
;; v77 = iconst.i64 8
130+
;; @003b v44 = uadd_overflow_trap v42, v77, user1 ; v77 = 8
131+
;; @003b v46 = uadd_overflow_trap v44, v77, user1 ; v77 = 8
132+
;; v78 = load.i64 notrap aligned readonly can_move v0+48
133+
;; @003b v47 = icmp ule v46, v78
134+
;; @003b trapz v47, user1
135+
;; v79 = load.i64 notrap aligned readonly can_move v0+40
136+
;; @003b v48 = iadd v79, v44
137+
;; @003b v49 = load.i64 notrap aligned v48
138+
;; v70 = iconst.i64 -1
139+
;; @003b v50 = iadd v49, v70 ; v70 = -1
140+
;; v71 = iconst.i64 0
141+
;; @003b v51 = icmp eq v50, v71 ; v71 = 0
142+
;; @003b brif v51, block5, block6
131143
;;
132144
;; block5 cold:
133145
;; @003b call fn0(v0, v5)
134146
;; @003b jump block7
135147
;;
136148
;; block6:
137-
;; v70 = iadd.i64 v43, v62 ; v62 = -1
138-
;; @003b store notrap aligned v70, v42
149+
;; v80 = iadd.i64 v49, v70 ; v70 = -1
150+
;; @003b store notrap aligned v80, v48
139151
;; @003b jump block7
140152
;;
141153
;; block7:

0 commit comments

Comments
 (0)