Use BB-like EBB in filetests/regalloc/*.clif

This commit is contained in:
Nicolas B. Pierron
2019-06-28 19:09:41 +02:00
committed by Nicolas B. Pierron
parent a1a4b9bfb1
commit 8bfdfbe68b
9 changed files with 360 additions and 0 deletions

View File

@@ -12,6 +12,9 @@ ebb0(v0: i32):
; not: copy ; not: copy
; v0 is used by the branch and passed as an arg - that's no conflict. ; v0 is used by the branch and passed as an arg - that's no conflict.
brnz v0, ebb1(v0) brnz v0, ebb1(v0)
fallthrough ebb2
ebb2:
; v0 is live across the branch above. That's no conflict. ; v0 is live across the branch above. That's no conflict.
v1 = iadd_imm v0, 7 v1 = iadd_imm v0, 7
jump ebb1(v1) jump ebb1(v1)
@@ -26,6 +29,9 @@ ebb0(v0: i32):
; check: $(cp1=$V) = copy v0 ; check: $(cp1=$V) = copy v0
; nextln: brnz v0, ebb1($cp1) ; nextln: brnz v0, ebb1($cp1)
brnz v0, ebb1(v0) brnz v0, ebb1(v0)
fallthrough ebb2
ebb2:
; not: copy ; not: copy
v1 = iadd_imm v0, 7 v1 = iadd_imm v0, 7
jump ebb1(v1) jump ebb1(v1)
@@ -42,6 +48,9 @@ ebb0(v0: i32):
; check: $(cp1=$V) = copy v0 ; check: $(cp1=$V) = copy v0
; nextln: brnz v0, ebb1($cp1, v0) ; nextln: brnz v0, ebb1($cp1, v0)
brnz v0, ebb1(v0, v0) brnz v0, ebb1(v0, v0)
fallthrough ebb2
ebb2:
v1 = iadd_imm v0, 7 v1 = iadd_imm v0, 7
v2 = iadd_imm v1, 56 v2 = iadd_imm v1, 56
jump ebb1(v1, v2) jump ebb1(v1, v2)
@@ -59,6 +68,9 @@ ebb0(v0: i32):
; not: copy ; not: copy
; check: brnz v0, ebb1($cp0) ; check: brnz v0, ebb1($cp0)
brnz v0, ebb1(v0) brnz v0, ebb1(v0)
fallthrough ebb2
ebb2:
v1 = iadd_imm v0, 7 v1 = iadd_imm v0, 7
; v1 and v0 interfere here: ; v1 and v0 interfere here:
v2 = iadd_imm v0, 8 v2 = iadd_imm v0, 8
@@ -89,6 +101,9 @@ ebb1(v10: i32, v11: i32):
; not: copy ; not: copy
; check: brnz v13, ebb1($nv11b, v12) ; check: brnz v13, ebb1($nv11b, v12)
brnz v13, ebb1(v11, v12) brnz v13, ebb1(v11, v12)
fallthrough ebb2
ebb2:
return v12 return v12
} }
@@ -116,7 +131,13 @@ ebb0(v0: i32):
ebb2(v3: i32, v4: i32): ebb2(v3: i32, v4: i32):
brnz v3, ebb2(v3, v4) brnz v3, ebb2(v3, v4)
fallthrough ebb3
ebb3:
v5 = iconst.i32 1 v5 = iconst.i32 1
brnz v3, ebb2(v2, v5) brnz v3, ebb2(v2, v5)
fallthrough ebb4
ebb4:
return return
} }

View File

@@ -22,6 +22,9 @@ ebb0(v0: i64, v1: i32, v2: i32):
v6 = iconst.i32 0x4ffe v6 = iconst.i32 0x4ffe
v7 = icmp uge v5, v6 v7 = icmp uge v5, v6
brz v7, ebb1 brz v7, ebb1
fallthrough ebb100
ebb100:
trap heap_oob trap heap_oob
ebb1: ebb1:
@@ -35,6 +38,9 @@ ebb1:
v15 = iconst.i32 0x4ffe v15 = iconst.i32 0x4ffe
v16 = icmp.i32 uge v4, v15 v16 = icmp.i32 uge v4, v15
brz v16, ebb2 brz v16, ebb2
fallthrough ebb101
ebb101:
trap heap_oob trap heap_oob
ebb2: ebb2:
@@ -46,6 +52,9 @@ ebb2:
v21 = iconst.i32 0x4ffe v21 = iconst.i32 0x4ffe
v22 = icmp.i32 uge v2, v21 v22 = icmp.i32 uge v2, v21
brz v22, ebb3 brz v22, ebb3
fallthrough ebb102
ebb102:
trap heap_oob trap heap_oob
ebb3: ebb3:
@@ -60,15 +69,24 @@ ebb3:
v31 = icmp eq v29, v30 v31 = icmp eq v29, v30
v32 = bint.i32 v31 v32 = bint.i32 v31
brnz v32, ebb90(v14, v1) brnz v32, ebb90(v14, v1)
fallthrough ebb103
ebb103:
v33 = call fn0(v0, v1, v27) v33 = call fn0(v0, v1, v27)
v34 = iconst.i32 0 v34 = iconst.i32 0
v35 = iconst.i32 0 v35 = iconst.i32 0
v36 = icmp eq v33, v35 v36 = icmp eq v33, v35
v37 = bint.i32 v36 v37 = bint.i32 v36
brnz v37, ebb90(v14, v34) brnz v37, ebb90(v14, v34)
fallthrough ebb104
ebb104:
v38 = iconst.i32 0x4ffe v38 = iconst.i32 0x4ffe
v39 = icmp.i32 uge v2, v38 v39 = icmp.i32 uge v2, v38
brz v39, ebb4 brz v39, ebb4
fallthrough ebb105
ebb105:
trap heap_oob trap heap_oob
ebb4: ebb4:
@@ -81,9 +99,15 @@ ebb4:
v46 = icmp eq v44, v45 v46 = icmp eq v44, v45
v47 = bint.i32 v46 v47 = bint.i32 v46
brnz v47, ebb56(v33, v14) brnz v47, ebb56(v33, v14)
fallthrough ebb106
ebb106:
v48 = iconst.i32 0x4ffe v48 = iconst.i32 0x4ffe
v49 = icmp.i32 uge v33, v48 v49 = icmp.i32 uge v33, v48
brz v49, ebb5 brz v49, ebb5
fallthrough ebb107
ebb107:
trap heap_oob trap heap_oob
ebb5: ebb5:
@@ -96,9 +120,15 @@ ebb5:
v56 = icmp eq v54, v55 v56 = icmp eq v54, v55
v57 = bint.i32 v56 v57 = bint.i32 v56
brnz v57, ebb90(v14, v34) brnz v57, ebb90(v14, v34)
fallthrough ebb108
ebb108:
v58 = iconst.i32 0x4ffe v58 = iconst.i32 0x4ffe
v59 = icmp.i32 uge v2, v58 v59 = icmp.i32 uge v2, v58
brz v59, ebb6 brz v59, ebb6
fallthrough ebb109
ebb109:
trap heap_oob trap heap_oob
ebb6: ebb6:
@@ -111,9 +141,15 @@ ebb6:
v66 = icmp eq v64, v65 v66 = icmp eq v64, v65
v67 = bint.i32 v66 v67 = bint.i32 v66
brnz v67, ebb42 brnz v67, ebb42
fallthrough ebb110
ebb110:
v68 = iconst.i32 0x4ffe v68 = iconst.i32 0x4ffe
v69 = icmp.i32 uge v33, v68 v69 = icmp.i32 uge v33, v68
brz v69, ebb7 brz v69, ebb7
fallthrough ebb111
ebb111:
trap heap_oob trap heap_oob
ebb7: ebb7:
@@ -126,9 +162,15 @@ ebb7:
v76 = icmp eq v74, v75 v76 = icmp eq v74, v75
v77 = bint.i32 v76 v77 = bint.i32 v76
brnz v77, ebb90(v14, v34) brnz v77, ebb90(v14, v34)
fallthrough ebb112
ebb112:
v78 = iconst.i32 0x4ffe v78 = iconst.i32 0x4ffe
v79 = icmp.i32 uge v2, v78 v79 = icmp.i32 uge v2, v78
brz v79, ebb8 brz v79, ebb8
fallthrough ebb113
ebb113:
trap heap_oob trap heap_oob
ebb8: ebb8:
@@ -141,9 +183,15 @@ ebb8:
v86 = icmp eq v84, v85 v86 = icmp eq v84, v85
v87 = bint.i32 v86 v87 = bint.i32 v86
brnz v87, ebb46 brnz v87, ebb46
fallthrough ebb114
ebb114:
v88 = iconst.i32 0x4ffe v88 = iconst.i32 0x4ffe
v89 = icmp.i32 uge v33, v88 v89 = icmp.i32 uge v33, v88
brz v89, ebb9 brz v89, ebb9
fallthrough ebb115
ebb115:
trap heap_oob trap heap_oob
ebb9: ebb9:
@@ -156,9 +204,15 @@ ebb9:
v96 = icmp eq v94, v95 v96 = icmp eq v94, v95
v97 = bint.i32 v96 v97 = bint.i32 v96
brnz v97, ebb90(v14, v34) brnz v97, ebb90(v14, v34)
fallthrough ebb116
ebb116:
v98 = iconst.i32 0x4ffe v98 = iconst.i32 0x4ffe
v99 = icmp.i32 uge v2, v98 v99 = icmp.i32 uge v2, v98
brz v99, ebb10 brz v99, ebb10
fallthrough ebb117
ebb117:
trap heap_oob trap heap_oob
ebb10: ebb10:
@@ -171,6 +225,9 @@ ebb10:
v106 = icmp eq v104, v105 v106 = icmp eq v104, v105
v107 = bint.i32 v106 v107 = bint.i32 v106
brnz v107, ebb54 brnz v107, ebb54
fallthrough ebb118
ebb118:
v108 = iconst.i32 1 v108 = iconst.i32 1
v109 = iadd.i32 v2, v108 v109 = iadd.i32 v2, v108
v110 = iconst.i32 1048 v110 = iconst.i32 1048
@@ -179,6 +236,9 @@ ebb10:
v113 = iconst.i32 0x4ffe v113 = iconst.i32 0x4ffe
v114 = icmp uge v111, v113 v114 = icmp uge v111, v113
brz v114, ebb11 brz v114, ebb11
fallthrough ebb119
ebb119:
trap heap_oob trap heap_oob
ebb11: ebb11:
@@ -193,6 +253,9 @@ ebb11:
v122 = iconst.i32 0x4ffe v122 = iconst.i32 0x4ffe
v123 = icmp uge v120, v122 v123 = icmp uge v120, v122
brz v123, ebb12 brz v123, ebb12
fallthrough ebb120
ebb120:
trap heap_oob trap heap_oob
ebb12: ebb12:
@@ -205,6 +268,9 @@ ebb12:
v129 = iconst.i32 0x4ffe v129 = iconst.i32 0x4ffe
v130 = icmp.i32 uge v14, v129 v130 = icmp.i32 uge v14, v129
brz v130, ebb13 brz v130, ebb13
fallthrough ebb121
ebb121:
trap heap_oob trap heap_oob
ebb13: ebb13:
@@ -217,6 +283,9 @@ ebb13:
v136 = iconst.i32 0x4ffe v136 = iconst.i32 0x4ffe
v137 = icmp.i32 uge v14, v136 v137 = icmp.i32 uge v14, v136
brz v137, ebb14 brz v137, ebb14
fallthrough ebb122
ebb122:
trap heap_oob trap heap_oob
ebb14: ebb14:
@@ -235,6 +304,9 @@ ebb15(v143: i32, v144: i32):
v148 = iconst.i32 0x4ffe v148 = iconst.i32 0x4ffe
v149 = icmp uge v147, v148 v149 = icmp uge v147, v148
brz v149, ebb16 brz v149, ebb16
fallthrough ebb123
ebb123:
trap heap_oob trap heap_oob
ebb16: ebb16:
@@ -247,6 +319,9 @@ ebb16:
v156 = icmp eq v154, v155 v156 = icmp eq v154, v155
v157 = bint.i32 v156 v157 = bint.i32 v156
brnz v157, ebb89(v14) brnz v157, ebb89(v14)
fallthrough ebb124
ebb124:
v158 = iconst.i32 255 v158 = iconst.i32 255
v159 = band.i32 v144, v158 v159 = band.i32 v144, v158
v160 = iconst.i32 2 v160 = iconst.i32 2
@@ -257,6 +332,9 @@ ebb16:
v165 = iconst.i32 0x4ffe v165 = iconst.i32 0x4ffe
v166 = icmp uge v162, v165 v166 = icmp uge v162, v165
brz v166, ebb17 brz v166, ebb17
fallthrough ebb125
ebb125:
trap heap_oob trap heap_oob
ebb17: ebb17:
@@ -275,6 +353,9 @@ ebb17:
v178 = iconst.i32 0x4ffe v178 = iconst.i32 0x4ffe
v179 = icmp uge v177, v178 v179 = icmp uge v177, v178
brz v179, ebb18 brz v179, ebb18
fallthrough ebb126
ebb126:
trap heap_oob trap heap_oob
ebb18: ebb18:
@@ -291,6 +372,9 @@ ebb18:
v190 = iconst.i32 0x4ffe v190 = iconst.i32 0x4ffe
v191 = icmp.i32 uge v177, v190 v191 = icmp.i32 uge v177, v190
brz v191, ebb19 brz v191, ebb19
fallthrough ebb127
ebb127:
trap heap_oob trap heap_oob
ebb19: ebb19:
@@ -307,6 +391,9 @@ ebb19:
v201 = iconst.i32 0x4ffe v201 = iconst.i32 0x4ffe
v202 = icmp uge v200, v201 v202 = icmp uge v200, v201
brz v202, ebb20 brz v202, ebb20
fallthrough ebb128
ebb128:
trap heap_oob trap heap_oob
ebb20: ebb20:
@@ -329,6 +416,9 @@ ebb21:
v215 = icmp ult v213, v214 v215 = icmp ult v213, v214
v216 = bint.i32 v215 v216 = bint.i32 v215
brnz v216, ebb38(v2, v211, v209, v210, v208, v198, v213, v33, v14) brnz v216, ebb38(v2, v211, v209, v210, v208, v198, v213, v33, v14)
fallthrough ebb129
ebb129:
v217 = iconst.i32 -1 v217 = iconst.i32 -1
v218 = iconst.i32 0 v218 = iconst.i32 0
v219 = iconst.i32 1 v219 = iconst.i32 1
@@ -344,6 +434,9 @@ ebb22(v223: i32, v224: i32, v225: i32, v226: i32, v227: i32, v228: i32, v229: i3
v237 = iconst.i32 0x4ffe v237 = iconst.i32 0x4ffe
v238 = icmp uge v236, v237 v238 = icmp uge v236, v237
brz v238, ebb23 brz v238, ebb23
fallthrough ebb130
ebb130:
trap heap_oob trap heap_oob
ebb23: ebb23:
@@ -357,9 +450,15 @@ ebb23:
v246 = icmp ne v243, v245 v246 = icmp ne v243, v245
v247 = bint.i32 v246 v247 = bint.i32 v246
brnz v247, ebb24 brnz v247, ebb24
fallthrough ebb131
ebb131:
v248 = icmp.i32 ne v224, v226 v248 = icmp.i32 ne v224, v226
v249 = bint.i32 v248 v249 = bint.i32 v248
brnz v249, ebb25 brnz v249, ebb25
fallthrough ebb132
ebb132:
v250 = iadd.i32 v227, v226 v250 = iadd.i32 v227, v226
v251 = iconst.i32 1 v251 = iconst.i32 1
jump ebb27(v251, v250, v223, v226) jump ebb27(v251, v250, v223, v226)
@@ -368,6 +467,9 @@ ebb24:
v252 = icmp.i32 ule v243, v245 v252 = icmp.i32 ule v243, v245
v253 = bint.i32 v252 v253 = bint.i32 v252
brnz v253, ebb26 brnz v253, ebb26
fallthrough ebb133
ebb133:
v254 = isub.i32 v234, v223 v254 = isub.i32 v234, v223
v255 = iconst.i32 1 v255 = iconst.i32 1
jump ebb27(v255, v234, v223, v254) jump ebb27(v255, v234, v223, v254)
@@ -391,10 +493,16 @@ ebb27(v264: i32, v265: i32, v266: i32, v267: i32):
v269 = icmp uge v268, v229 v269 = icmp uge v268, v229
v270 = bint.i32 v269 v270 = bint.i32 v269
brnz v270, ebb29 brnz v270, ebb29
fallthrough ebb134
ebb134:
v271 = iadd.i32 v2, v268 v271 = iadd.i32 v2, v268
v272 = iconst.i32 0x4ffe v272 = iconst.i32 0x4ffe
v273 = icmp uge v271, v272 v273 = icmp uge v271, v272
brz v273, ebb28 brz v273, ebb28
fallthrough ebb135
ebb135:
trap heap_oob trap heap_oob
ebb28: ebb28:
@@ -424,6 +532,9 @@ ebb31(v285: i32, v286: i32, v287: i32, v288: i32, v289: i32, v290: i32, v291: i3
v300 = iconst.i32 0x4ffe v300 = iconst.i32 0x4ffe
v301 = icmp uge v299, v300 v301 = icmp uge v299, v300
brz v301, ebb32 brz v301, ebb32
fallthrough ebb136
ebb136:
trap heap_oob trap heap_oob
ebb32: ebb32:
@@ -437,9 +548,15 @@ ebb32:
v309 = icmp ne v306, v308 v309 = icmp ne v306, v308
v310 = bint.i32 v309 v310 = bint.i32 v309
brnz v310, ebb33 brnz v310, ebb33
fallthrough ebb137
ebb137:
v311 = icmp.i32 ne v286, v288 v311 = icmp.i32 ne v286, v288
v312 = bint.i32 v311 v312 = bint.i32 v311
brnz v312, ebb34 brnz v312, ebb34
fallthrough ebb138
ebb138:
v313 = iadd.i32 v289, v288 v313 = iadd.i32 v289, v288
v314 = iconst.i32 1 v314 = iconst.i32 1
jump ebb36(v314, v313, v285, v288) jump ebb36(v314, v313, v285, v288)
@@ -448,6 +565,9 @@ ebb33:
v315 = icmp.i32 uge v306, v308 v315 = icmp.i32 uge v306, v308
v316 = bint.i32 v315 v316 = bint.i32 v315
brnz v316, ebb35 brnz v316, ebb35
fallthrough ebb139
ebb139:
v317 = isub.i32 v297, v285 v317 = isub.i32 v297, v285
v318 = iconst.i32 1 v318 = iconst.i32 1
jump ebb36(v318, v297, v285, v317) jump ebb36(v318, v297, v285, v317)
@@ -471,10 +591,16 @@ ebb36(v327: i32, v328: i32, v329: i32, v330: i32):
v332 = icmp uge v331, v291 v332 = icmp uge v331, v291
v333 = bint.i32 v332 v333 = bint.i32 v332
brnz v333, ebb38(v2, v330, v292, v329, v293, v294, v291, v295, v296) brnz v333, ebb38(v2, v330, v292, v329, v293, v294, v291, v295, v296)
fallthrough ebb140
ebb140:
v334 = iadd.i32 v2, v331 v334 = iadd.i32 v2, v331
v335 = iconst.i32 0x4ffe v335 = iconst.i32 0x4ffe
v336 = icmp uge v334, v335 v336 = icmp uge v334, v335
brz v336, ebb37 brz v336, ebb37
fallthrough ebb141
ebb141:
trap heap_oob trap heap_oob
ebb37: ebb37:
@@ -494,12 +620,18 @@ ebb38(v343: i32, v344: i32, v345: i32, v346: i32, v347: i32, v348: i32, v349: i3
v356 = icmp ugt v353, v355 v356 = icmp ugt v353, v355
v357 = bint.i32 v356 v357 = bint.i32 v356
brnz v357, ebb39(v344) brnz v357, ebb39(v344)
fallthrough ebb142
ebb142:
v358 = copy v345 v358 = copy v345
jump ebb39(v358) jump ebb39(v358)
ebb39(v359: i32): ebb39(v359: i32):
v360 = iadd.i32 v343, v359 v360 = iadd.i32 v343, v359
brnz.i32 v357, ebb40(v346) brnz.i32 v357, ebb40(v346)
fallthrough ebb143
ebb143:
v361 = copy.i32 v347 v361 = copy.i32 v347
jump ebb40(v361) jump ebb40(v361)
@@ -511,6 +643,9 @@ ebb40(v362: i32):
v367 = icmp eq v365, v366 v367 = icmp eq v365, v366
v368 = bint.i32 v367 v368 = bint.i32 v367
brnz v368, ebb63 brnz v368, ebb63
fallthrough ebb144
ebb144:
v369 = iconst.i32 1 v369 = iconst.i32 1
v370 = iadd v362, v369 v370 = iadd v362, v369
v371 = isub.i32 v348, v370 v371 = isub.i32 v348, v370
@@ -520,6 +655,9 @@ ebb40(v362: i32):
v375 = bint.i32 v374 v375 = bint.i32 v374
v376 = copy v362 v376 = copy v362
brnz v375, ebb41(v376) brnz v375, ebb41(v376)
fallthrough ebb145
ebb145:
v377 = copy v373 v377 = copy v373
jump ebb41(v377) jump ebb41(v377)
@@ -536,6 +674,9 @@ ebb42:
v385 = iconst.i32 0x4ffe v385 = iconst.i32 0x4ffe
v386 = icmp.i32 uge v33, v385 v386 = icmp.i32 uge v33, v385
brz v386, ebb43 brz v386, ebb43
fallthrough ebb146
ebb146:
trap heap_oob trap heap_oob
ebb43: ebb43:
@@ -557,6 +698,9 @@ ebb44(v392: i32, v393: i32, v394: i32):
v402 = icmp eq v401, v384 v402 = icmp eq v401, v384
v403 = bint.i32 v402 v403 = bint.i32 v402
brnz v403, ebb56(v394, v14) brnz v403, ebb56(v394, v14)
fallthrough ebb147
ebb147:
v404 = iconst.i32 2 v404 = iconst.i32 2
v405 = iadd v394, v404 v405 = iadd v394, v404
v406 = iconst.i32 1 v406 = iconst.i32 1
@@ -564,6 +708,9 @@ ebb44(v392: i32, v393: i32, v394: i32):
v408 = iconst.i32 0x4ffe v408 = iconst.i32 0x4ffe
v409 = icmp uge v405, v408 v409 = icmp uge v405, v408
brz v409, ebb45 brz v409, ebb45
fallthrough ebb148
ebb148:
trap heap_oob trap heap_oob
ebb45: ebb45:
@@ -584,6 +731,9 @@ ebb46:
v420 = iconst.i32 0x4ffe v420 = iconst.i32 0x4ffe
v421 = icmp.i32 uge v33, v420 v421 = icmp.i32 uge v33, v420
brz v421, ebb47 brz v421, ebb47
fallthrough ebb149
ebb149:
trap heap_oob trap heap_oob
ebb47: ebb47:
@@ -616,6 +766,9 @@ ebb48(v440: i32, v441: i32):
v446 = iconst.i32 0x4ffe v446 = iconst.i32 0x4ffe
v447 = icmp uge v445, v446 v447 = icmp uge v445, v446
brz v447, ebb49 brz v447, ebb49
fallthrough ebb150
ebb150:
trap heap_oob trap heap_oob
ebb49: ebb49:
@@ -628,6 +781,9 @@ ebb49:
v454 = icmp eq v452, v453 v454 = icmp eq v452, v453
v455 = bint.i32 v454 v455 = bint.i32 v454
brnz v455, ebb51(v14) brnz v455, ebb51(v14)
fallthrough ebb151
ebb151:
v456 = bor.i32 v441, v452 v456 = bor.i32 v441, v452
v457 = iconst.i32 8 v457 = iconst.i32 8
v458 = ishl v456, v457 v458 = ishl v456, v457
@@ -647,6 +803,9 @@ ebb51(v462: i32):
v466 = iconst.i32 0x4ffe v466 = iconst.i32 0x4ffe
v467 = icmp uge v463, v466 v467 = icmp uge v463, v466
brz v467, ebb52 brz v467, ebb52
fallthrough ebb152
ebb152:
trap heap_oob trap heap_oob
ebb52: ebb52:
@@ -657,6 +816,9 @@ ebb52:
store.i32 v465, v471+4 store.i32 v465, v471+4
v472 = iconst.i32 0 v472 = iconst.i32 0
brnz.i32 v452, ebb53(v443) brnz.i32 v452, ebb53(v443)
fallthrough ebb153
ebb153:
v473 = copy v472 v473 = copy v472
jump ebb53(v473) jump ebb53(v473)
@@ -673,6 +835,9 @@ ebb54:
v481 = iconst.i32 0x4ffe v481 = iconst.i32 0x4ffe
v482 = icmp.i32 uge v33, v481 v482 = icmp.i32 uge v33, v481
brz v482, ebb55 brz v482, ebb55
fallthrough ebb154
ebb154:
trap heap_oob trap heap_oob
ebb55: ebb55:
@@ -713,6 +878,9 @@ ebb58(v505: i32, v506: i32):
v511 = iconst.i32 0x4ffe v511 = iconst.i32 0x4ffe
v512 = icmp uge v508, v511 v512 = icmp uge v508, v511
brz v512, ebb59 brz v512, ebb59
fallthrough ebb155
ebb155:
trap heap_oob trap heap_oob
ebb59: ebb59:
@@ -725,6 +893,9 @@ ebb59:
v519 = icmp eq v517, v518 v519 = icmp eq v517, v518
v520 = bint.i32 v519 v520 = bint.i32 v519
brnz v520, ebb61(v14) brnz v520, ebb61(v14)
fallthrough ebb156
ebb156:
v521 = iconst.i32 8 v521 = iconst.i32 8
v522 = ishl.i32 v506, v521 v522 = ishl.i32 v506, v521
v523 = bor v522, v517 v523 = bor v522, v517
@@ -739,6 +910,9 @@ ebb60:
ebb61(v526: i32): ebb61(v526: i32):
v527 = iconst.i32 0 v527 = iconst.i32 0
brnz.i32 v517, ebb62(v510) brnz.i32 v517, ebb62(v510)
fallthrough ebb157
ebb157:
v528 = copy v527 v528 = copy v527
jump ebb62(v528) jump ebb62(v528)
@@ -772,9 +946,15 @@ ebb65(v547: i32, v548: i32, v549: i32, v550: i32, v551: i32, v552: i32, v553: i3
v564 = icmp uge v563, v549 v564 = icmp uge v563, v549
v565 = bint.i32 v564 v565 = bint.i32 v564
brnz v565, ebb67(v547) brnz v565, ebb67(v547)
fallthrough ebb158
ebb158:
v566 = iconst.i32 0 v566 = iconst.i32 0
v567 = call fn2(v0, v547, v566, v550) v567 = call fn2(v0, v547, v566, v550)
brnz v567, ebb66 brnz v567, ebb66
fallthrough ebb159
ebb159:
v568 = iadd v547, v550 v568 = iadd v547, v550
jump ebb67(v568) jump ebb67(v568)
@@ -783,6 +963,9 @@ ebb66:
v570 = icmp ult v569, v549 v570 = icmp ult v569, v549
v571 = bint.i32 v570 v571 = bint.i32 v570
brnz v571, ebb89(v552) brnz v571, ebb89(v552)
fallthrough ebb160
ebb160:
v572 = copy.i32 v567 v572 = copy.i32 v567
jump ebb67(v572) jump ebb67(v572)
@@ -792,6 +975,9 @@ ebb67(v573: i32):
v576 = iconst.i32 0x4ffe v576 = iconst.i32 0x4ffe
v577 = icmp uge v575, v576 v577 = icmp uge v575, v576
brz v577, ebb68 brz v577, ebb68
fallthrough ebb161
ebb161:
trap heap_oob trap heap_oob
ebb68: ebb68:
@@ -813,6 +999,9 @@ ebb68:
v593 = iconst.i32 0x4ffe v593 = iconst.i32 0x4ffe
v594 = icmp uge v592, v593 v594 = icmp uge v592, v593
brz v594, ebb69 brz v594, ebb69
fallthrough ebb162
ebb162:
trap heap_oob trap heap_oob
ebb69: ebb69:
@@ -826,12 +1015,18 @@ ebb69:
v602 = icmp eq v600, v601 v602 = icmp eq v600, v601
v603 = bint.i32 v602 v603 = bint.i32 v602
brnz v603, ebb74 brnz v603, ebb74
fallthrough ebb163
ebb163:
v604 = iconst.i32 2 v604 = iconst.i32 2
v605 = ishl.i32 v582, v604 v605 = ishl.i32 v582, v604
v606 = iadd.i32 v552, v605 v606 = iadd.i32 v552, v605
v607 = iconst.i32 0x4ffe v607 = iconst.i32 0x4ffe
v608 = icmp uge v606, v607 v608 = icmp uge v606, v607
brz v608, ebb70 brz v608, ebb70
fallthrough ebb164
ebb164:
trap heap_oob trap heap_oob
ebb70: ebb70:
@@ -845,12 +1040,18 @@ ebb70:
v616 = icmp eq v614, v615 v616 = icmp eq v614, v615
v617 = bint.i32 v616 v617 = bint.i32 v616
brnz v617, ebb75 brnz v617, ebb75
fallthrough ebb165
ebb165:
v618 = iconst.i32 1 v618 = iconst.i32 1
v619 = iadd v614, v618 v619 = iadd v614, v618
v620 = icmp ult v619, v554 v620 = icmp ult v619, v554
v621 = bint.i32 v620 v621 = bint.i32 v620
v622 = copy.i32 v553 v622 = copy.i32 v553
brnz v621, ebb71(v622) brnz v621, ebb71(v622)
fallthrough ebb166
ebb166:
v623 = copy v619 v623 = copy v619
jump ebb71(v623) jump ebb71(v623)
@@ -879,6 +1080,9 @@ ebb75:
v634 = bint.i32 v633 v634 = bint.i32 v633
v635 = copy.i32 v558 v635 = copy.i32 v558
brnz v634, ebb76(v635) brnz v634, ebb76(v635)
fallthrough ebb167
ebb167:
v636 = copy.i32 v555 v636 = copy.i32 v555
jump ebb76(v636) jump ebb76(v636)
@@ -887,6 +1091,9 @@ ebb76(v637: i32):
v639 = iconst.i32 0x4ffe v639 = iconst.i32 0x4ffe
v640 = icmp uge v638, v639 v640 = icmp uge v638, v639
brz v640, ebb77 brz v640, ebb77
fallthrough ebb168
ebb168:
trap heap_oob trap heap_oob
ebb77: ebb77:
@@ -899,6 +1106,9 @@ ebb77:
v647 = icmp eq v645, v646 v647 = icmp eq v645, v646
v648 = bint.i32 v647 v648 = bint.i32 v647
brnz v648, ebb82(v548, v549, v551, v552) brnz v648, ebb82(v548, v549, v551, v552)
fallthrough ebb169
ebb169:
v649 = iadd.i32 v548, v637 v649 = iadd.i32 v548, v637
v650 = iadd.i32 v559, v637 v650 = iadd.i32 v559, v637
v651 = iadd.i32 v560, v637 v651 = iadd.i32 v560, v637
@@ -910,6 +1120,9 @@ ebb78(v652: i32, v653: i32, v654: i32, v655: i32):
v658 = iconst.i32 0x4ffe v658 = iconst.i32 0x4ffe
v659 = icmp uge v653, v658 v659 = icmp uge v653, v658
brz v659, ebb79 brz v659, ebb79
fallthrough ebb170
ebb170:
trap heap_oob trap heap_oob
ebb79: ebb79:
@@ -923,6 +1136,9 @@ ebb79:
v667 = copy.i32 v554 v667 = copy.i32 v554
v668 = copy.i32 v562 v668 = copy.i32 v562
brnz v666, ebb87(v548, v654, v573, v549, v550, v551, v552, v553, v667, v668, v557, v558, v559, v560, v561) brnz v666, ebb87(v548, v654, v573, v549, v550, v551, v552, v553, v667, v668, v557, v558, v559, v560, v561)
fallthrough ebb171
ebb171:
v669 = iconst.i32 1 v669 = iconst.i32 1
v670 = iadd.i32 v653, v669 v670 = iadd.i32 v653, v669
v671 = iconst.i32 1 v671 = iconst.i32 1
@@ -930,6 +1146,9 @@ ebb79:
v673 = iconst.i32 0x4ffe v673 = iconst.i32 0x4ffe
v674 = icmp.i32 uge v655, v673 v674 = icmp.i32 uge v655, v673
brz v674, ebb80 brz v674, ebb80
fallthrough ebb172
ebb172:
trap heap_oob trap heap_oob
ebb80: ebb80:
@@ -950,6 +1169,9 @@ ebb82(v682: i32, v683: i32, v684: i32, v685: i32):
v686 = icmp.i32 ule v558, v555 v686 = icmp.i32 ule v558, v555
v687 = bint.i32 v686 v687 = bint.i32 v686
brnz v687, ebb90(v685, v682) brnz v687, ebb90(v685, v682)
fallthrough ebb173
ebb173:
v688 = copy.i32 v561 v688 = copy.i32 v561
jump ebb83(v688) jump ebb83(v688)
@@ -958,6 +1180,9 @@ ebb83(v689: i32):
v691 = iconst.i32 0x4ffe v691 = iconst.i32 0x4ffe
v692 = icmp uge v690, v691 v692 = icmp uge v690, v691
brz v692, ebb84 brz v692, ebb84
fallthrough ebb174
ebb174:
trap heap_oob trap heap_oob
ebb84: ebb84:
@@ -970,6 +1195,9 @@ ebb84:
v699 = iconst.i32 0x4ffe v699 = iconst.i32 0x4ffe
v700 = icmp uge v698, v699 v700 = icmp uge v698, v699
brz v700, ebb85 brz v700, ebb85
fallthrough ebb175
ebb175:
trap heap_oob trap heap_oob
ebb85: ebb85:
@@ -981,6 +1209,9 @@ ebb85:
v706 = icmp.i32 ne v697, v705 v706 = icmp.i32 ne v697, v705
v707 = bint.i32 v706 v707 = bint.i32 v706
brnz v707, ebb86 brnz v707, ebb86
fallthrough ebb176
ebb176:
v708 = icmp.i32 ule v689, v555 v708 = icmp.i32 ule v689, v555
v709 = bint.i32 v708 v709 = bint.i32 v708
v710 = iconst.i32 -1 v710 = iconst.i32 -1
@@ -1019,6 +1250,9 @@ ebb90(v756: i32, v757: i32):
v761 = iconst.i32 0x4ffe v761 = iconst.i32 0x4ffe
v762 = icmp uge v758, v761 v762 = icmp uge v758, v761
brz v762, ebb91 brz v762, ebb91
fallthrough ebb177
ebb177:
trap heap_oob trap heap_oob
ebb91: ebb91:
@@ -1073,6 +1307,9 @@ ebb0(v0: f64, v1: i64):
v24 = icmp ult v22, v23 v24 = icmp ult v22, v23
v25 = bint.i32 v24 v25 = bint.i32 v24
brnz v25, ebb10 brnz v25, ebb10
fallthrough ebb178
ebb178:
v26 = iconst.i64 0x7fff_ffff_ffff_ffff v26 = iconst.i64 0x7fff_ffff_ffff_ffff
v27 = band v14, v26 v27 = band v14, v26
v28 = iconst.i64 0x7ff0_0000_0000_0000 v28 = iconst.i64 0x7ff0_0000_0000_0000
@@ -1086,10 +1323,16 @@ ebb10:
v32 = icmp.i32 ult v22, v31 v32 = icmp.i32 ult v22, v31
v33 = bint.i32 v32 v33 = bint.i32 v32
brnz v33, ebb8 brnz v33, ebb8
fallthrough ebb179
ebb179:
v34 = iconst.i32 0x3ff0_a2b2 v34 = iconst.i32 0x3ff0_a2b2
v35 = icmp.i32 uge v22, v34 v35 = icmp.i32 uge v22, v34
v36 = bint.i32 v35 v36 = bint.i32 v35
brnz v36, ebb6 brnz v36, ebb6
fallthrough ebb180
ebb180:
v37 = iconst.i32 1 v37 = iconst.i32 1
v38 = bxor.i32 v17, v37 v38 = bxor.i32 v17, v37
v39 = isub v38, v17 v39 = isub v38, v17
@@ -1106,6 +1349,9 @@ ebb9:
v44 = bint.i32 v43 v44 = bint.i32 v43
v45 = bor v42, v44 v45 = bor v42, v44
brnz v45, ebb7 brnz v45, ebb7
fallthrough ebb181
ebb181:
v141 = iconst.i64 0x7fe0_0000_0000_0000 v141 = iconst.i64 0x7fe0_0000_0000_0000
v46 = bitcast.f64 v141 v46 = bitcast.f64 v141
v47 = fmul.f64 v0, v46 v47 = fmul.f64 v0, v46
@@ -1116,6 +1362,9 @@ ebb8:
v49 = icmp.i32 ule v22, v48 v49 = icmp.i32 ule v22, v48
v50 = bint.i32 v49 v50 = bint.i32 v49
brnz v50, ebb3 brnz v50, ebb3
fallthrough ebb182
ebb182:
v51 = iconst.i32 0 v51 = iconst.i32 0
v142 = iconst.i64 0 v142 = iconst.i64 0
v52 = bitcast.f64 v142 v52 = bitcast.f64 v142
@@ -1129,6 +1378,9 @@ ebb7:
v55 = bint.i32 v54 v55 = bint.i32 v54
v56 = bor v55, v44 v56 = bor v55, v44
brnz v56, ebb6 brnz v56, ebb6
fallthrough ebb183
ebb183:
v144 = iconst.i64 0xb6a0_0000_0000_0000 v144 = iconst.i64 0xb6a0_0000_0000_0000
v57 = bitcast.f64 v144 v57 = bitcast.f64 v144
v58 = fdiv v57, v0 v58 = fdiv v57, v0
@@ -1165,8 +1417,14 @@ ebb6:
v158 = iconst.i32 0x8000_0000 v158 = iconst.i32 0x8000_0000
v154 = icmp ne v76, v158 v154 = icmp ne v76, v158
brnz v154, ebb11 brnz v154, ebb11
fallthrough ebb184
ebb184:
v155 = fcmp uno v75, v75 v155 = fcmp uno v75, v75
brz v155, ebb12 brz v155, ebb12
fallthrough ebb185
ebb185:
trap bad_toint trap bad_toint
ebb12: ebb12:
@@ -1174,6 +1432,9 @@ ebb12:
v156 = bitcast.f64 v159 v156 = bitcast.f64 v159
v157 = fcmp ge v156, v75 v157 = fcmp ge v156, v75
brz v157, ebb13 brz v157, ebb13
fallthrough ebb186
ebb186:
trap int_ovf trap int_ovf
ebb13: ebb13:
@@ -1230,6 +1491,9 @@ ebb4(v86: f64, v87: f64, v108: f64, v113: i32):
v114 = icmp eq v113, v169 v114 = icmp eq v113, v169
v115 = bint.i32 v114 v115 = bint.i32 v114
brnz v115, ebb2(v12, v112) brnz v115, ebb2(v12, v112)
fallthrough ebb187
ebb187:
v116 = call fn0(v112, v113, v1) v116 = call fn0(v112, v113, v1)
jump ebb2(v12, v116) jump ebb2(v12, v116)

View File

@@ -14,15 +14,27 @@ ebb0(v0: i32, v1: i64):
ebb4(v11: i64, v29: i64): ebb4(v11: i64, v29: i64):
v6 = iconst.i32 0 v6 = iconst.i32 0
brz v6, ebb14 brz v6, ebb14
fallthrough ebb15
ebb15:
v9 = iconst.i32 -17 v9 = iconst.i32 -17
v12 = iconst.i32 0xffff_ffff_ffff_8000 v12 = iconst.i32 0xffff_ffff_ffff_8000
jump ebb9(v12) jump ebb9(v12)
ebb9(v10: i32): ebb9(v10: i32):
brnz v10, ebb8(v9, v11, v11) brnz v10, ebb8(v9, v11, v11)
fallthrough ebb16
ebb16:
brz.i32 v9, ebb13 brz.i32 v9, ebb13
fallthrough ebb17
ebb17:
v13 = iconst.i32 0 v13 = iconst.i32 0
brnz v13, ebb6(v11, v11) brnz v13, ebb6(v11, v11)
fallthrough ebb18
ebb18:
v14 = iconst.i32 0 v14 = iconst.i32 0
brz v14, ebb12 brz v14, ebb12
jump ebb11 jump ebb11
@@ -40,6 +52,9 @@ ebb13:
ebb10(v21: i64): ebb10(v21: i64):
v16 = iconst.i32 0 v16 = iconst.i32 0
brnz v16, ebb6(v21, v11) brnz v16, ebb6(v21, v11)
fallthrough ebb19
ebb19:
v17 = iconst.i32 0xffff_ffff_ffff_9f35 v17 = iconst.i32 0xffff_ffff_ffff_9f35
jump ebb8(v17, v21, v11) jump ebb8(v17, v21, v11)

View File

@@ -17,6 +17,9 @@ function %pr227(i32 [%rdi], i32 [%rsi], i32 [%rdx], i32 [%rcx], i64 vmctx [%r8])
ebb6: ebb6:
[RexOp1pu_id#b8] v8 = iconst.i32 0 [RexOp1pu_id#b8] v8 = iconst.i32 0
[RexOp1tjccb#75] brnz v8, ebb5 [RexOp1tjccb#75] brnz v8, ebb5
[-] fallthrough ebb20
ebb20:
[RexOp1pu_id#b8] v9 = iconst.i32 0 [RexOp1pu_id#b8] v9 = iconst.i32 0
[RexOp1pu_id#b8] v11 = iconst.i32 0 [RexOp1pu_id#b8] v11 = iconst.i32 0
[RexOp1icscc#39] v12 = icmp.i32 eq v15, v11 [RexOp1icscc#39] v12 = icmp.i32 eq v15, v11
@@ -27,8 +30,14 @@ function %pr227(i32 [%rdi], i32 [%rsi], i32 [%rdx], i32 [%rcx], i64 vmctx [%r8])
ebb7: ebb7:
[RexOp1tjccb#74] brz.i32 v17, ebb8 [RexOp1tjccb#74] brz.i32 v17, ebb8
[-] fallthrough ebb17
ebb17:
[RexOp1pu_id#b8] v18 = iconst.i32 0 [RexOp1pu_id#b8] v18 = iconst.i32 0
[RexOp1tjccb#74] brz v18, ebb9 [RexOp1tjccb#74] brz v18, ebb9
[-] fallthrough ebb16
ebb16:
[RexOp1pu_id#b8] v21 = iconst.i32 0 [RexOp1pu_id#b8] v21 = iconst.i32 0
[RexOp1umr#89] v79 = uextend.i64 v5 [RexOp1umr#89] v79 = uextend.i64 v5
[RexOp1r_ib#8083] v80 = iadd_imm.i64 v4, 0 [RexOp1r_ib#8083] v80 = iadd_imm.i64 v4, 0
@@ -63,8 +72,14 @@ function %pr227(i32 [%rdi], i32 [%rsi], i32 [%rdx], i32 [%rcx], i64 vmctx [%r8])
ebb2(v7: i32, v45: i32, v52: i32, v59: i32, v66: i32, v73: i32): ebb2(v7: i32, v45: i32, v52: i32, v59: i32, v66: i32, v73: i32):
[RexOp1pu_id#b8] v44 = iconst.i32 0 [RexOp1pu_id#b8] v44 = iconst.i32 0
[RexOp1tjccb#74] brz v44, ebb12 [RexOp1tjccb#74] brz v44, ebb12
[-] fallthrough ebb18
ebb18:
[RexOp1pu_id#b8] v50 = iconst.i32 11 [RexOp1pu_id#b8] v50 = iconst.i32 11
[RexOp1tjccb#74] brz v50, ebb14 [RexOp1tjccb#74] brz v50, ebb14
[-] fallthrough ebb19
ebb19:
[RexOp1umr#89] v82 = uextend.i64 v52 [RexOp1umr#89] v82 = uextend.i64 v52
[RexOp1r_ib#8083] v83 = iadd_imm.i64 v4, 0 [RexOp1r_ib#8083] v83 = iadd_imm.i64 v4, 0
[RexOp1ld#808b] v84 = load.i64 v83 [RexOp1ld#808b] v84 = load.i64 v83

View File

@@ -20,6 +20,9 @@ ebb5(v9: f64):
v6 = iconst.i32 0 v6 = iconst.i32 0
v7 = iconst.i32 1 v7 = iconst.i32 1
brnz v7, ebb4(v6) brnz v7, ebb4(v6)
fallthrough ebb8
ebb8:
v8 = iconst.i32 0 v8 = iconst.i32 0
jump ebb7(v8) jump ebb7(v8)

View File

@@ -14,6 +14,9 @@ ebb0(v0: i32):
v4 = icmp_imm ne v0, 4 v4 = icmp_imm ne v0, 4
v5 = icmp_imm sge v0, 5 v5 = icmp_imm sge v0, 5
brnz v5, ebb1 brnz v5, ebb1
fallthrough ebb2
ebb2:
return return
ebb1: ebb1:

View File

@@ -20,6 +20,9 @@ ebb0(v0: i64, v1: f32, v2: f64, v3: i32, v4: i32, v5: i64):
v44 = iconst.i64 0 v44 = iconst.i64 0
v37 = icmp slt v0, v44 v37 = icmp slt v0, v44
brnz v37, ebb2 brnz v37, ebb2
fallthrough ebb11
ebb11:
v38 = fcvt_from_sint.f64 v0 v38 = fcvt_from_sint.f64 v0
jump ebb3(v38) jump ebb3(v38)
@@ -41,6 +44,9 @@ ebb3(v15: f64):
v54 = iconst.i64 0 v54 = iconst.i64 0
v47 = icmp.i64 slt v13, v54 v47 = icmp.i64 slt v13, v54
brnz v47, ebb4 brnz v47, ebb4
fallthrough ebb12
ebb12:
v48 = fcvt_from_sint.f64 v13 v48 = fcvt_from_sint.f64 v13
jump ebb5(v48) jump ebb5(v48)
@@ -57,6 +63,9 @@ ebb5(v20: f64):
v63 = iconst.i64 0 v63 = iconst.i64 0
v56 = icmp.i64 slt v7, v63 v56 = icmp.i64 slt v7, v63
brnz v56, ebb6 brnz v56, ebb6
fallthrough ebb13
ebb13:
v57 = fcvt_from_sint.f64 v7 v57 = fcvt_from_sint.f64 v7
jump ebb7(v57) jump ebb7(v57)
@@ -82,8 +91,14 @@ ebb7(v21: f64):
v69 = iconst.i64 0x8000_0000_0000_0000 v69 = iconst.i64 0x8000_0000_0000_0000
v65 = icmp ne v30, v69 v65 = icmp ne v30, v69
brnz v65, ebb8 brnz v65, ebb8
fallthrough ebb15
ebb15:
v66 = fcmp uno v29, v29 v66 = fcmp uno v29, v29
brz v66, ebb9 brz v66, ebb9
fallthrough ebb16
ebb16:
trap bad_toint trap bad_toint
ebb9: ebb9:
@@ -91,6 +106,9 @@ ebb9:
v67 = bitcast.f64 v70 v67 = bitcast.f64 v70
v68 = fcmp gt v67, v29 v68 = fcmp gt v67, v29
brz v68, ebb10 brz v68, ebb10
fallthrough ebb17
ebb17:
trap int_ovf trap int_ovf
ebb10: ebb10:
@@ -118,6 +136,9 @@ ebb0(v0: i64):
v7 = icmp uge v3, v6 v7 = icmp uge v3, v6
; If we're unlucky, there are no ABCD registers available for v7 at this branch. ; If we're unlucky, there are no ABCD registers available for v7 at this branch.
brz v7, ebb2 brz v7, ebb2
fallthrough ebb4
ebb4:
trap oob trap oob
ebb2: ebb2:
@@ -128,6 +149,9 @@ ebb2:
v11 = iadd v8, v10 v11 = iadd v8, v10
v12 = load.i64 v11 v12 = load.i64 v11
brnz v12, ebb3 brnz v12, ebb3
fallthrough ebb5
ebb5:
trap icall_null trap icall_null
ebb3: ebb3:

View File

@@ -25,6 +25,9 @@ ebb0(v0: i64):
v20 = iconst.i32 0x4ffe v20 = iconst.i32 0x4ffe
v16 = icmp uge v2, v20 v16 = icmp uge v2, v20
brz v16, ebb5 brz v16, ebb5
fallthrough ebb9
ebb9:
trap heap_oob trap heap_oob
ebb5: ebb5:
@@ -44,6 +47,9 @@ ebb3(v7: i32):
v26 = iconst.i32 0x4ffe v26 = iconst.i32 0x4ffe
v22 = icmp uge v7, v26 v22 = icmp uge v7, v26
brz v22, ebb6 brz v22, ebb6
fallthrough ebb10
ebb10:
trap heap_oob trap heap_oob
ebb6: ebb6:
@@ -65,6 +71,9 @@ ebb2:
v31 = iconst.i32 0x4ffe v31 = iconst.i32 0x4ffe
v27 = icmp uge v10, v31 v27 = icmp uge v10, v31
brz v27, ebb7 brz v27, ebb7
fallthrough ebb11
ebb11:
trap heap_oob trap heap_oob
ebb7: ebb7:
@@ -78,6 +87,9 @@ ebb7:
v36 = iconst.i32 0x4ffe v36 = iconst.i32 0x4ffe
v32 = icmp uge v13, v36 v32 = icmp uge v13, v36
brz v32, ebb8 brz v32, ebb8
fallthrough ebb12
ebb12:
trap heap_oob trap heap_oob
ebb8: ebb8:

View File

@@ -151,6 +151,9 @@ ebb0(v1: i32):
; check: v1 = spill ; check: v1 = spill
v2 = iconst.i32 1 v2 = iconst.i32 1
brnz v1, ebb1(v2, v2, v2, v2, v2, v2, v2, v2, v2, v2, v2, v2) brnz v1, ebb1(v2, v2, v2, v2, v2, v2, v2, v2, v2, v2, v2, v2)
fallthrough ebb2
ebb2:
return v1 return v1
ebb1(v10: i32, v11: i32, v12: i32, v13: i32, v14: i32, v15: i32, v16: i32, v17: i32, v18: i32, v19: i32, v20: i32, v21: i32): ebb1(v10: i32, v11: i32, v12: i32, v13: i32, v14: i32, v15: i32, v16: i32, v17: i32, v18: i32, v19: i32, v20: i32, v21: i32):