diff options
33 files changed, 950 insertions, 950 deletions
diff --git a/test/revision b/test/revision index d159f7e5f..9fe34ed6c 100644 --- a/test/revision +++ b/test/revision @@ -1 +1 @@ -2787 +2804 diff --git a/test/torture-s/20000412-4.c.s b/test/torture-s/20000412-4.c.s index f350fb727..03c5de970 100644 --- a/test/torture-s/20000412-4.c.s +++ b/test/torture-s/20000412-4.c.s @@ -6,26 +6,23 @@ .type f,@function f: # @f .param i32, i32, i32, i32, i32 - .local i32, i32, i32 + .local i32 # BB#0: # %entry block i32.sub $push0=, $0, $2 - tee_local $push17=, $7=, $pop0 - i32.const $push16=, 0 - i32.gt_s $push1=, $pop17, $pop16 - tee_local $push15=, $6=, $pop1 + tee_local $push15=, $5=, $pop0 + i32.const $push1=, 0 + i32.gt_s $push2=, $pop15, $pop1 i32.const $push14=, 0 - i32.select $push12=, $pop15, $7, $pop14 + i32.select $push12=, $pop2, $5, $pop14 tee_local $push13=, $5=, $pop12 - i32.const $push2=, 3 - i32.ge_s $push3=, $pop13, $pop2 - br_if $pop3, 0 # 0: down to label0 + i32.const $push3=, 3 + i32.ge_s $push4=, $pop13, $pop3 + br_if $pop4, 0 # 0: down to label0 # BB#1: # %for.body.lr.ph - i32.const $push19=, 0 - i32.select $push4=, $6, $7, $pop19 - i32.add $push5=, $2, $pop4 - i32.const $push18=, -1 - i32.add $push6=, $pop5, $pop18 + i32.add $push5=, $2, $5 + i32.const $push16=, -1 + i32.add $push6=, $pop5, $pop16 i32.sub $push7=, $pop6, $0 i32.mul $push8=, $3, $pop7 i32.add $push9=, $2, $pop8 @@ -34,15 +31,15 @@ f: # @f # =>This Inner Loop Header: Depth=1 loop # label1: i32.add $2=, $2, $3 - i32.const $push22=, -1 - i32.le_s $push10=, $2, $pop22 + i32.const $push19=, -1 + i32.le_s $push10=, $2, $pop19 br_if $pop10, 1 # 1: down to label2 # BB#3: # %for.cond # in Loop: Header=BB0_2 Depth=1 - i32.const $push21=, 1 - i32.add $5=, $5, $pop21 - i32.const $push20=, 2 - i32.le_s $push11=, $5, $pop20 + i32.const $push18=, 1 + i32.add $5=, $5, $pop18 + i32.const $push17=, 2 + i32.le_s $push11=, $5, $pop17 br_if $pop11, 0 # 0: up to label1 br 2 # 2: down to label0 .LBB0_4: # %if.then diff --git a/test/torture-s/20000603-1.c.s b/test/torture-s/20000603-1.c.s index 7da0bdf97..2253bc718 100644 --- a/test/torture-s/20000603-1.c.s +++ b/test/torture-s/20000603-1.c.s @@ -7,13 +7,14 @@ f: # @f .param i32, i32 .result f64 + .local f64 # BB#0: # %entry + f64.load $2=, 0($1) i64.const $push0=, 4607182418800017408 i64.store $discard=, 0($0), $pop0 - f64.load $push1=, 0($1) - f64.const $push2=, 0x1p0 - f64.add $push3=, $pop1, $pop2 - return $pop3 + f64.const $push1=, 0x1p0 + f64.add $push2=, $2, $pop1 + return $pop2 .endfunc .Lfunc_end0: .size f, .Lfunc_end0-f diff --git a/test/torture-s/20000703-1.c.s b/test/torture-s/20000703-1.c.s index 186aa6573..451ef0cb8 100644 --- a/test/torture-s/20000703-1.c.s +++ b/test/torture-s/20000703-1.c.s @@ -30,36 +30,37 @@ bar: # @bar .param i32, i32, i32 .local i32, i32 # BB#0: # %entry + i32.const $push10=, 16 + i32.add $push11=, $0, $pop10 i32.const $push6=, 25 i32.add $push7=, $0, $pop6 i32.const $push2=, 27 i32.add $push3=, $0, $pop2 i32.const $push4=, 0 i32.store8 $push5=, 0($pop3), $pop4 - i32.store16 $3=, 0($pop7):p2align=0, $pop5 + i32.store16 $push8=, 0($pop7):p2align=0, $pop5 + tee_local $push22=, $4=, $pop8 + i32.load8_u $push12=, .L.str.1+16($pop22) + i32.store8 $discard=, 0($pop11), $pop12 i32.const $push0=, 17 i32.add $push1=, $0, $pop0 - tee_local $push20=, $4=, $pop1 - i64.const $push8=, 0 - i64.store $discard=, 0($pop20):p2align=0, $pop8 - i32.const $push9=, 16 - i32.add $push10=, $0, $pop9 - i32.load8_u $push11=, .L.str.1+16($3) - i32.store8 $discard=, 0($pop10), $pop11 - i32.const $push12=, 8 - i32.add $push13=, $0, $pop12 - i64.load $push14=, .L.str.1+8($3):p2align=0 - i64.store $discard=, 0($pop13):p2align=0, $pop14 - i64.load $push15=, .L.str.1($3):p2align=0 - i64.store $discard=, 0($0):p2align=0, $pop15 - i32.const $push16=, 19 - i32.add $push17=, $0, $pop16 - i32.load8_u $push18=, .L.str+2($3) - i32.store8 $discard=, 0($pop17), $pop18 - i32.load16_u $push19=, .L.str($3):p2align=0 - i32.store16 $discard=, 0($4):p2align=0, $pop19 + tee_local $push21=, $3=, $pop1 + i64.const $push9=, 0 + i64.store $discard=, 0($pop21):p2align=0, $pop9 + i32.const $push17=, 19 + i32.add $push18=, $0, $pop17 + i32.load8_u $push19=, .L.str+2($4) + i32.store8 $discard=, 0($pop18), $pop19 + i32.load16_u $push20=, .L.str($4):p2align=0 + i32.store16 $discard=, 0($3):p2align=0, $pop20 + i32.const $push13=, 8 + i32.add $push14=, $0, $pop13 + i64.load $push15=, .L.str.1+8($4):p2align=0 + i64.store $discard=, 0($pop14):p2align=0, $pop15 i32.store $discard=, 20($0), $1 i32.store $discard=, 24($0), $2 + i64.load $push16=, .L.str.1($4):p2align=0 + i64.store $discard=, 0($0):p2align=0, $pop16 return .endfunc .Lfunc_end1: diff --git a/test/torture-s/20000801-1.c.s b/test/torture-s/20000801-1.c.s index 4bd26130e..f5c6e875e 100644 --- a/test/torture-s/20000801-1.c.s +++ b/test/torture-s/20000801-1.c.s @@ -6,37 +6,37 @@ .type foo,@function foo: # @foo .param i32, i32 - .local i32, i32, i32 + .local i32, i32, i32, i32, i32, i32 # BB#0: # %entry i32.add $2=, $0, $1 block - i32.const $push10=, 1 - i32.lt_s $push0=, $1, $pop10 + i32.const $push9=, 1 + i32.lt_s $push0=, $1, $pop9 br_if $pop0, 0 # 0: down to label0 .LBB0_1: # %while.body # =>This Inner Loop Header: Depth=1 loop # label1: + i32.const $push13=, 1 + i32.add $push6=, $0, $pop13 + tee_local $push12=, $1=, $pop6 + i32.load8_u $5=, 0($pop12) + i32.const $push4=, 2 + i32.add $push5=, $0, $pop4 + tee_local $push11=, $7=, $pop5 + i32.load8_u $4=, 0($pop11) i32.const $push1=, 3 i32.add $push2=, $0, $pop1 - tee_local $push14=, $1=, $pop2 - i32.load8_u $3=, 0($pop14) + tee_local $push10=, $6=, $pop2 + i32.load8_u $3=, 0($pop10) i32.load8_u $push3=, 0($0) - i32.store8 $discard=, 0($1), $pop3 + i32.store8 $discard=, 0($6), $pop3 + i32.store8 $discard=, 0($7), $5 + i32.store8 $discard=, 0($1), $4 i32.store8 $discard=, 0($0), $3 - i32.const $push4=, 2 - i32.add $push5=, $0, $pop4 - tee_local $push13=, $1=, $pop5 - i32.load8_u $3=, 0($pop13) - i32.const $push12=, 1 - i32.add $push6=, $0, $pop12 - tee_local $push11=, $4=, $pop6 - i32.load8_u $push7=, 0($pop11) - i32.store8 $discard=, 0($1), $pop7 - i32.store8 $discard=, 0($4), $3 - i32.const $push8=, 4 - i32.add $0=, $0, $pop8 - i32.lt_u $push9=, $0, $2 - br_if $pop9, 0 # 0: up to label1 + i32.const $push7=, 4 + i32.add $0=, $0, $pop7 + i32.lt_u $push8=, $0, $2 + br_if $pop8, 0 # 0: up to label1 .LBB0_2: # %while.end end_loop # label2: end_block # label0: diff --git a/test/torture-s/20001203-2.c.s b/test/torture-s/20001203-2.c.s index ae98ec6f2..095ba13e8 100644 --- a/test/torture-s/20001203-2.c.s +++ b/test/torture-s/20001203-2.c.s @@ -10,49 +10,47 @@ create_array_type: # @create_array_type .local i32, i32, i32, i32, i32, i32 # BB#0: # %entry block - i32.const $push49=, 0 - i32.eq $push50=, $0, $pop49 - br_if $pop50, 0 # 0: down to label0 + i32.const $push46=, 0 + i32.eq $push47=, $0, $pop46 + br_if $pop47, 0 # 0: down to label0 # BB#1: # %if.end i32.load $push4=, 0($1) i32.const $push5=, 3 i32.mul $push6=, $pop4, $pop5 i32.store $discard=, 0($0), $pop6 + i32.load $1=, 4($0) i32.const $push7=, 1 i32.store16 $discard=, 8($0):p2align=2, $pop7 i32.const $3=, 0 block - i32.load $push0=, 4($0) - tee_local $push38=, $1=, $pop0 - i32.const $push51=, 0 - i32.eq $push52=, $pop38, $pop51 - br_if $pop52, 0 # 0: down to label1 + i32.const $push48=, 0 + i32.eq $push49=, $1, $pop48 + br_if $pop49, 0 # 0: down to label1 # BB#2: # %cond.true block i32.const $push8=, 20 i32.add $push9=, $1, $pop8 - i32.load $push1=, 0($pop9) - tee_local $push42=, $5=, $pop1 - i32.const $push41=, 16 - i32.add $push10=, $1, $pop41 - tee_local $push40=, $2=, $pop10 - i32.load $push2=, 0($pop40) - tee_local $push39=, $4=, $pop2 - i32.sub $push11=, $pop42, $pop39 + i32.load $push0=, 0($pop9) + tee_local $push40=, $4=, $pop0 + i32.const $push39=, 16 + i32.add $push10=, $1, $pop39 + tee_local $push38=, $2=, $pop10 + i32.load $push1=, 0($pop38) + tee_local $push37=, $5=, $pop1 + i32.sub $push11=, $pop40, $pop37 i32.const $push12=, 15 i32.le_s $push13=, $pop11, $pop12 br_if $pop13, 0 # 0: down to label2 # BB#3: # %if.end9 i32.const $push15=, 12 i32.add $push16=, $1, $pop15 - tee_local $push45=, $6=, $pop16 - i32.load $3=, 0($pop45) + i32.load $3=, 0($pop16) block - i32.const $push44=, 16 - i32.add $push3=, $4, $pop44 - i32.store $push14=, 0($2), $pop3 - tee_local $push43=, $4=, $pop14 - i32.ne $push17=, $pop43, $3 + i32.const $push42=, 16 + i32.add $push2=, $5, $pop42 + i32.store $push14=, 0($2), $pop2 + tee_local $push41=, $5=, $pop14 + i32.ne $push17=, $3, $pop41 br_if $pop17, 0 # 0: down to label3 # BB#4: # %if.then16 i32.const $push18=, 28 @@ -61,38 +59,45 @@ create_array_type: # @create_array_type i32.store $discard=, 0($pop19), $pop20 .LBB0_5: # %if.end17 end_block # label3: - i32.const $push28=, 16 - i32.add $2=, $1, $pop28 + i32.const $push29=, 8 + i32.add $push30=, $1, $pop29 + i32.load $2=, 0($pop30) + block + i32.const $push27=, 16 + i32.add $push28=, $1, $pop27 + tee_local $push45=, $7=, $pop28 i32.const $push21=, 24 i32.add $push22=, $1, $pop21 i32.load $push23=, 0($pop22) - tee_local $push48=, $7=, $pop23 - i32.add $push24=, $pop48, $4 + tee_local $push44=, $6=, $pop23 + i32.add $push24=, $5, $pop44 i32.const $push25=, -1 - i32.xor $push26=, $7, $pop25 - i32.and $push27=, $pop24, $pop26 - i32.store $push29=, 0($2), $pop27 - tee_local $push47=, $4=, $pop29 - i32.const $push30=, 8 - i32.add $push31=, $1, $pop30 - i32.load $push32=, 0($pop31) - tee_local $push46=, $1=, $pop32 - i32.sub $push33=, $pop47, $pop46 - i32.sub $push34=, $5, $1 - i32.gt_s $push35=, $pop33, $pop34 - i32.select $push36=, $pop35, $5, $4 - i32.store $push37=, 0($2), $pop36 - i32.store $discard=, 0($6), $pop37 + i32.xor $push26=, $6, $pop25 + i32.and $push3=, $pop24, $pop26 + i32.store $push36=, 0($pop45), $pop3 + tee_local $push43=, $5=, $pop36 + i32.sub $push31=, $pop43, $2 + i32.sub $push32=, $4, $2 + i32.le_s $push33=, $pop31, $pop32 + br_if $pop33, 0 # 0: down to label4 +# BB#6: # %if.then36 + i32.store $discard=, 0($7), $4 + copy_local $5=, $4 +.LBB0_7: # %if.end39 + end_block # label4: + i32.const $push34=, 12 + i32.add $push35=, $1, $pop34 + i32.store $discard=, 0($pop35), $5 br 1 # 1: down to label1 -.LBB0_6: # %if.then8 +.LBB0_8: # %if.then8 end_block # label2: call _obstack_newchunk@FUNCTION, $0, $0 unreachable -.LBB0_7: # %cond.end +.LBB0_9: # %cond.end end_block # label1: i32.store $discard=, 12($0), $3 return $0 -.LBB0_8: # %if.then +.LBB0_10: # %if.then end_block # label0: i32.call $discard=, alloc_type@FUNCTION unreachable diff --git a/test/torture-s/20010118-1.c.s b/test/torture-s/20010118-1.c.s index 46416f7f6..689271df8 100644 --- a/test/torture-s/20010118-1.c.s +++ b/test/torture-s/20010118-1.c.s @@ -18,7 +18,7 @@ foo: # @foo .type bar,@function bar: # @bar .param i32, i32, i32, i32, i32 - .local i32, i32 + .local i32 # BB#0: # %entry block block @@ -40,19 +40,19 @@ bar: # @bar f64.const $push11=, 0x1p-1 f64.mul $push12=, $pop10, $pop11 i32.trunc_s/f64 $5=, $pop12 + i32.const $push19=, 4 + i32.add $push20=, $0, $pop19 i32.load $push7=, 20($0) f64.convert_s/i32 $push13=, $pop7 - f64.const $push21=, 0x0p0 - f64.mul $push14=, $pop13, $pop21 - f64.const $push20=, 0x1p-1 - f64.mul $push15=, $pop14, $pop20 - i32.trunc_s/f64 $6=, $pop15 - i32.add $push16=, $5, $1 - i32.store $discard=, 0($0), $pop16 - i32.const $push18=, 4 - i32.add $push19=, $0, $pop18 - i32.add $push17=, $6, $2 - i32.store $discard=, 0($pop19), $pop17 + f64.const $push22=, 0x0p0 + f64.mul $push14=, $pop13, $pop22 + f64.const $push21=, 0x1p-1 + f64.mul $push15=, $pop14, $pop21 + i32.trunc_s/f64 $push16=, $pop15 + i32.add $push18=, $pop16, $2 + i32.store $discard=, 0($pop20), $pop18 + i32.add $push17=, $5, $1 + i32.store $discard=, 0($0), $pop17 i32.store $discard=, 8($0), $3 i32.store $discard=, 12($0), $4 .LBB1_3: # %if.end diff --git a/test/torture-s/20010224-1.c.s b/test/torture-s/20010224-1.c.s index 49e9e8a02..3adcdb8ae 100644 --- a/test/torture-s/20010224-1.c.s +++ b/test/torture-s/20010224-1.c.s @@ -8,39 +8,42 @@ ba_compute_psd: # @ba_compute_psd .param i32 .local i32, i32, i32 # BB#0: # %entry - i32.const $push1=, 1 - i32.shl $push2=, $0, $pop1 - tee_local $push15=, $1=, $pop2 - i32.load16_s $push3=, masktab($pop15) - i32.const $push14=, 1 - i32.shl $push4=, $pop3, $pop14 - tee_local $push13=, $3=, $pop4 + i32.const $push17=, 1 + i32.shl $push2=, $0, $pop17 + tee_local $push16=, $1=, $pop2 + i32.load16_s $push3=, masktab($pop16) + i32.const $push15=, 1 + i32.shl $push4=, $pop3, $pop15 + tee_local $push14=, $3=, $pop4 i32.load16_u $push0=, psd($1) - i32.store16 $2=, bndpsd($pop13), $pop0 + i32.store16 $2=, bndpsd($pop14), $pop0 block - i32.const $push12=, 1 - i32.add $push6=, $0, $pop12 + i32.const $push13=, 1 + i32.add $push1=, $0, $pop13 + tee_local $push12=, $1=, $pop1 i32.const $push11=, 3 - i32.gt_s $push7=, $pop6, $pop11 - br_if $pop7, 0 # 0: down to label0 + i32.gt_s $push6=, $pop12, $pop11 + br_if $pop6, 0 # 0: down to label0 # BB#1: # %for.body.preheader i32.const $push5=, bndpsd i32.add $3=, $3, $pop5 - i32.const $push8=, psd+2 - i32.add $1=, $1, $pop8 - i32.const $push16=, 3 - i32.sub $0=, $pop16, $0 + i32.const $push19=, 1 + i32.shl $push7=, $1, $pop19 + i32.const $push8=, psd + i32.add $1=, $pop7, $pop8 + i32.const $push18=, 3 + i32.sub $0=, $pop18, $0 .LBB0_2: # %for.body # =>This Inner Loop Header: Depth=1 loop # label1: i32.load16_u $push10=, 0($1) - i32.const $push19=, 65535 - i32.and $push9=, $2, $pop19 + i32.const $push22=, 65535 + i32.and $push9=, $2, $pop22 i32.add $2=, $pop10, $pop9 - i32.const $push18=, 2 - i32.add $1=, $1, $pop18 - i32.const $push17=, -1 - i32.add $0=, $0, $pop17 + i32.const $push21=, 2 + i32.add $1=, $1, $pop21 + i32.const $push20=, -1 + i32.add $0=, $0, $pop20 br_if $0, 0 # 0: up to label1 # BB#3: # %for.cond.for.end_crit_edge end_loop # label2: diff --git a/test/torture-s/20010915-1.c.s b/test/torture-s/20010915-1.c.s index 1b9dbf3f1..6539c86ab 100644 --- a/test/torture-s/20010915-1.c.s +++ b/test/torture-s/20010915-1.c.s @@ -70,19 +70,19 @@ x: # @x # BB#1: # %entry i32.const $push9=, 0 i32.load $push0=, o($pop9) - tee_local $push42=, $2=, $pop0 - i32.ge_s $push12=, $pop42, $0 + tee_local $push41=, $2=, $pop0 + i32.ge_s $push12=, $pop41, $0 br_if $pop12, 0 # 0: down to label1 # BB#2: # %land.lhs.true2 i32.const $push13=, 2 i32.shl $push14=, $2, $pop13 i32.add $push1=, $1, $pop14 - tee_local $push44=, $4=, $pop1 - i32.load $push2=, 0($pop44) - tee_local $push43=, $5=, $pop2 - i32.const $push70=, 0 - i32.eq $push71=, $pop43, $pop70 - br_if $pop71, 0 # 0: down to label1 + tee_local $push43=, $4=, $pop1 + i32.load $push2=, 0($pop43) + tee_local $push42=, $5=, $pop2 + i32.const $push68=, 0 + i32.eq $push69=, $pop42, $pop68 + br_if $pop69, 0 # 0: down to label1 # BB#3: # %if.then block i32.const $push15=, .L.str @@ -90,11 +90,11 @@ x: # @x br_if $pop16, 0 # 0: down to label2 # BB#4: # %lor.lhs.false.i i32.const $push17=, 0 - i32.const $push46=, 0 - i32.load $push3=, check($pop46) - tee_local $push45=, $3=, $pop3 + i32.const $push45=, 0 + i32.load $push3=, check($pop45) + tee_local $push44=, $3=, $pop3 i32.const $push18=, 1 - i32.add $push19=, $pop45, $pop18 + i32.add $push19=, $pop44, $pop18 i32.store $discard=, check($pop17), $pop19 i32.const $push20=, 2 i32.ge_s $push21=, $3, $pop20 @@ -105,80 +105,78 @@ x: # @x i32.call $push23=, strcmp@FUNCTION, $5, $pop22 br_if $pop23, 0 # 0: down to label3 # BB#6: # %lor.lhs.false.i45 - i32.const $push48=, 0 + i32.const $push47=, 0 i32.const $push24=, 2 i32.add $push25=, $3, $pop24 - i32.store $discard=, check($pop48), $pop25 - i32.const $push47=, 1 - i32.ge_s $push26=, $3, $pop47 + i32.store $discard=, check($pop47), $pop25 + i32.const $push46=, 1 + i32.ge_s $push26=, $3, $pop46 br_if $pop26, 0 # 0: down to label3 # BB#7: # %s.exit48 - i32.const $push51=, 0 i32.const $push50=, 0 - i32.store $discard=, u($pop51), $pop50 + i32.const $push49=, 0 + i32.store $discard=, u($pop50), $pop49 block i32.load $push28=, 0($4) - i32.const $push49=, 1 - i32.add $push27=, $5, $pop49 + i32.const $push48=, 1 + i32.add $push27=, $5, $pop48 i32.eq $push29=, $pop28, $pop27 br_if $pop29, 0 # 0: down to label4 # BB#8: # %while.cond.preheader block - i32.const $push54=, 0 - i32.const $push53=, 1 - i32.add $push4=, $2, $pop53 - i32.store $push41=, o($pop54), $pop4 - tee_local $push52=, $5=, $pop41 - i32.ge_s $push30=, $pop52, $0 + i32.const $push53=, 0 + i32.const $push52=, 1 + i32.add $push4=, $2, $pop52 + i32.store $push40=, o($pop53), $pop4 + tee_local $push51=, $5=, $pop40 + i32.ge_s $push30=, $pop51, $0 br_if $pop30, 0 # 0: down to label5 # BB#9: # %while.body.preheader - i32.const $push56=, 0 - i32.load8_u $3=, r.c.0($pop56) + i32.const $push54=, 0 + i32.load8_u $3=, r.c.0($pop54) i32.const $push31=, 2 - i32.shl $push32=, $2, $pop31 - i32.add $push33=, $pop32, $1 - i32.const $push55=, 4 - i32.add $2=, $pop33, $pop55 + i32.shl $push32=, $5, $pop31 + i32.add $2=, $1, $pop32 .LBB1_10: # %while.body # =>This Inner Loop Header: Depth=1 loop # label6: i32.load $push5=, 0($2) - tee_local $push58=, $1=, $pop5 - i32.load8_u $push34=, 0($pop58) - i32.const $push57=, 255 - i32.and $push35=, $3, $pop57 - i32.ne $push36=, $pop34, $pop35 - br_if $pop36, 1 # 1: down to label7 + tee_local $push56=, $1=, $pop5 + i32.load8_u $push33=, 0($pop56) + i32.const $push55=, 255 + i32.and $push34=, $3, $pop55 + i32.ne $push35=, $pop33, $pop34 + br_if $pop35, 1 # 1: down to label7 # BB#11: # %lor.lhs.false.i50 # in Loop: Header=BB1_10 Depth=1 - i32.load8_u $push37=, 1($1) - br_if $pop37, 1 # 1: down to label7 + i32.load8_u $push36=, 1($1) + br_if $pop36, 1 # 1: down to label7 # BB#12: # %lor.lhs.false.i50 # in Loop: Header=BB1_10 Depth=1 - i32.const $push61=, 0 - i32.load $push6=, r.cnt($pop61) - tee_local $push60=, $1=, $pop6 - i32.const $push59=, 4 - i32.ge_s $push38=, $pop60, $pop59 - br_if $pop38, 1 # 1: down to label7 + i32.const $push59=, 0 + i32.load $push6=, r.cnt($pop59) + tee_local $push58=, $1=, $pop6 + i32.const $push57=, 4 + i32.ge_s $push37=, $pop58, $pop57 + br_if $pop37, 1 # 1: down to label7 # BB#13: # %r.exit # in Loop: Header=BB1_10 Depth=1 - i32.const $push68=, 0 - i32.const $push67=, 1 - i32.add $push39=, $1, $pop67 - i32.store $discard=, r.cnt($pop68), $pop39 i32.const $push66=, 0 i32.const $push65=, 1 - i32.add $push7=, $3, $pop65 - i32.store8 $3=, r.c.0($pop66), $pop7 + i32.add $push38=, $1, $pop65 + i32.store $discard=, r.cnt($pop66), $pop38 i32.const $push64=, 0 i32.const $push63=, 1 - i32.add $push8=, $5, $pop63 - i32.store $5=, o($pop64), $pop8 - i32.const $push62=, 4 - i32.add $2=, $2, $pop62 - i32.lt_s $push40=, $5, $0 - br_if $pop40, 0 # 0: up to label6 + i32.add $push7=, $3, $pop63 + i32.store8 $3=, r.c.0($pop64), $pop7 + i32.const $push62=, 0 + i32.const $push61=, 1 + i32.add $push8=, $5, $pop61 + i32.store $5=, o($pop62), $pop8 + i32.const $push60=, 4 + i32.add $2=, $2, $pop60 + i32.lt_s $push39=, $5, $0 + br_if $pop39, 0 # 0: up to label6 br 2 # 2: down to label5 .LBB1_14: # %if.then.i51 end_loop # label7: @@ -186,8 +184,8 @@ x: # @x unreachable .LBB1_15: # %cleanup end_block # label5: - i32.const $push69=, 0 - return $pop69 + i32.const $push67=, 0 + return $pop67 .LBB1_16: # %if.then15 end_block # label4: i32.call $discard=, m@FUNCTION, $5 diff --git a/test/torture-s/20011019-1.c.s b/test/torture-s/20011019-1.c.s index f7456d52e..5bd39b226 100644 --- a/test/torture-s/20011019-1.c.s +++ b/test/torture-s/20011019-1.c.s @@ -24,7 +24,7 @@ foo: # @foo .type main,@function main: # @main .result i32 -# BB#0: # %entry +# BB#0: # %if.end i32.const $push1=, 0 i32.const $push0=, x+4 i32.store $discard=, y($pop1), $pop0 diff --git a/test/torture-s/20020129-1.c.s b/test/torture-s/20020129-1.c.s index 0808d9248..a8119f0b0 100644 --- a/test/torture-s/20020129-1.c.s +++ b/test/torture-s/20020129-1.c.s @@ -6,19 +6,19 @@ .type foo,@function foo: # @foo .param i32, i32 - .local i32 + .local i32, i32 # BB#0: # %entry - i32.load $2=, 28($1) + i32.load $3=, 28($1) block block i32.load $push0=, 28($0) - i32.const $push18=, 0 - i32.eq $push19=, $pop0, $pop18 - br_if $pop19, 0 # 0: down to label1 + i32.const $push17=, 0 + i32.eq $push18=, $pop0, $pop17 + br_if $pop18, 0 # 0: down to label1 # BB#1: # %if.end - i32.const $push20=, 0 - i32.eq $push21=, $2, $pop20 - br_if $pop21, 1 # 1: down to label0 + i32.const $push19=, 0 + i32.eq $push20=, $3, $pop19 + br_if $pop20, 1 # 1: down to label0 # BB#2: # %if.then6 call abort@FUNCTION unreachable @@ -26,50 +26,50 @@ foo: # @foo end_block # label1: i32.const $push1=, 28 i32.add $push2=, $0, $pop1 - i32.store $discard=, 0($pop2), $2 - i32.const $push13=, 28 - i32.add $push3=, $1, $pop13 + i32.store $discard=, 0($pop2), $3 + i32.const $push12=, 28 + i32.add $push3=, $1, $pop12 i32.const $push4=, 0 i32.store $discard=, 0($pop3), $pop4 - i32.const $push22=, 0 - i32.eq $push23=, $2, $pop22 - br_if $pop23, 0 # 0: down to label0 + i32.const $push21=, 0 + i32.eq $push22=, $3, $pop21 + br_if $pop22, 0 # 0: down to label0 .LBB0_4: # %for.body # =>This Inner Loop Header: Depth=1 loop # label2: - i32.store $discard=, 4($2), $0 - i32.load $2=, 0($2) - br_if $2, 0 # 0: up to label2 + i32.store $discard=, 4($3), $0 + i32.load $3=, 0($3) + br_if $3, 0 # 0: up to label2 .LBB0_5: # %if.end7 end_loop # label3: end_block # label0: - i32.load $2=, 12($1) + i32.load $3=, 12($1) block block i32.load $push5=, 12($0) - i32.const $push14=, -1 - i32.eq $push6=, $pop5, $pop14 + i32.const $push13=, -1 + i32.eq $push6=, $pop5, $pop13 br_if $pop6, 0 # 0: down to label5 # BB#6: # %if.end22 - i32.const $push17=, -1 - i32.eq $push7=, $2, $pop17 + i32.const $push16=, -1 + i32.eq $push7=, $3, $pop16 br_if $pop7, 1 # 1: down to label4 # BB#7: # %if.then26 call abort@FUNCTION unreachable .LBB0_8: # %if.end22.thread end_block # label5: + i32.load $2=, 16($1) i32.const $push8=, 12 i32.add $push9=, $0, $pop8 - i32.store $discard=, 0($pop9), $2 - i32.load $push10=, 16($1) - i32.store $discard=, 16($0), $pop10 - i32.const $push16=, 12 - i32.add $push11=, $1, $pop16 - i32.const $push15=, -1 - i32.store $discard=, 0($pop11), $pop15 - i32.const $push12=, 0 - i32.store $discard=, 16($1), $pop12 + i32.store $discard=, 0($pop9), $3 + i32.store $discard=, 16($0), $2 + i32.const $push15=, 12 + i32.add $push10=, $1, $pop15 + i32.const $push14=, -1 + i32.store $discard=, 0($pop10), $pop14 + i32.const $push11=, 0 + i32.store $discard=, 16($1), $pop11 .LBB0_9: # %if.end27 end_block # label4: return diff --git a/test/torture-s/20020406-1.c.s b/test/torture-s/20020406-1.c.s index b27c8248c..5d88c57af 100644 --- a/test/torture-s/20020406-1.c.s +++ b/test/torture-s/20020406-1.c.s @@ -142,11 +142,11 @@ DUPFFexgcd: # @DUPFFexgcd i32.const $9=, __stack_pointer i32.store $15=, 0($9), $15 i32.store $discard=, 0($15), $7 - i32.const $push21=, 4 - i32.add $7=, $15, $pop21 + i32.const $push20=, 4 + i32.add $7=, $15, $pop20 i32.store $discard=, 0($7), $6 - i32.const $push20=, .L.str - i32.call $discard=, printf@FUNCTION, $pop20 + i32.const $push19=, .L.str + i32.call $discard=, printf@FUNCTION, $pop19 i32.const $10=, __stack_pointer i32.load $10=, 0($10) i32.const $11=, 8 @@ -157,57 +157,56 @@ DUPFFexgcd: # @DUPFFexgcd i32.load $7=, 4($5) copy_local $0=, $4 copy_local $2=, $5 - i32.lt_s $push2=, $6, $7 - br_if $pop2, 0 # 0: up to label1 + i32.lt_s $push1=, $6, $7 + br_if $pop1, 0 # 0: up to label1 # BB#2: # %if.end end_loop # label2: block - i32.const $push3=, 2 - i32.ne $push4=, $6, $pop3 - br_if $pop4, 0 # 0: down to label3 + i32.const $push2=, 2 + i32.ne $push3=, $6, $pop2 + br_if $pop3, 0 # 0: down to label3 # BB#3: # %if.end - i32.const $push5=, 1 - i32.ne $push6=, $7, $pop5 - br_if $pop6, 0 # 0: down to label3 + i32.const $push4=, 1 + i32.ne $push5=, $7, $pop4 + br_if $pop5, 0 # 0: down to label3 # BB#4: # %if.end11 block - i32.load $push7=, 8($3) - i32.load $push8=, 0($pop7) - i32.const $push28=, 0 - i32.eq $push29=, $pop8, $pop28 - br_if $pop29, 0 # 0: down to label4 + i32.load $push6=, 8($3) + i32.load $push7=, 0($pop6) + i32.const $push26=, 0 + i32.eq $push27=, $pop7, $pop26 + br_if $pop27, 0 # 0: down to label4 # BB#5: # %DUPFFnew.exit167 - i32.const $push9=, 12 - i32.call $7=, malloc@FUNCTION, $pop9 - i32.const $push10=, 2 - i32.const $push26=, 4 - i32.call $6=, calloc@FUNCTION, $pop10, $pop26 - i32.store $push11=, 8($7), $6 - i32.const $push12=, 1 - i32.store $push13=, 0($7), $pop12 - i32.store $2=, 0($pop11), $pop13 - i32.const $push14=, 0 - i32.store $discard=, 4($7), $pop14 - i32.const $push25=, 12 - i32.call $6=, malloc@FUNCTION, $pop25 - i32.const $push15=, 3 + i32.const $push8=, 12 + i32.call $7=, malloc@FUNCTION, $pop8 + i32.const $push9=, 2 i32.const $push24=, 4 - i32.call $0=, calloc@FUNCTION, $pop15, $pop24 + i32.call $6=, calloc@FUNCTION, $pop9, $pop24 + i32.store $push10=, 8($7), $6 + i32.const $push11=, 1 + i32.store $push12=, 0($7), $pop11 + i32.store $2=, 0($pop10), $pop12 + i32.const $push13=, 0 + i32.store $discard=, 4($7), $pop13 + i32.const $push23=, 12 + i32.call $6=, malloc@FUNCTION, $pop23 + i32.const $push14=, 3 + i32.const $push22=, 4 + i32.call $0=, calloc@FUNCTION, $pop14, $pop22 + i64.const $push15=, -4294967294 + i64.store $discard=, 0($6):p2align=2, $pop15 + i32.const $push21=, 4 + i32.add $push16=, $5, $pop21 + i32.load $5=, 0($pop16) i32.store $discard=, 8($6), $0 - i64.const $push16=, -4294967294 - i64.store $discard=, 0($6):p2align=2, $pop16 block - i32.const $push23=, 4 - i32.add $push17=, $5, $pop23 - i32.load $push0=, 0($pop17) - tee_local $push22=, $5=, $pop0 - i32.lt_s $push18=, $pop22, $2 - br_if $pop18, 0 # 0: down to label5 + i32.lt_s $push17=, $5, $2 + br_if $pop17, 0 # 0: down to label5 # BB#6: # %while.cond40.preheader.lr.ph - i32.const $push27=, 4 - i32.add $push19=, $3, $pop27 - i32.load $push1=, 0($pop19) - i32.lt_s $3=, $pop1, $5 + i32.const $push25=, 4 + i32.add $push18=, $3, $pop25 + i32.load $push0=, 0($pop18) + i32.lt_s $3=, $pop0, $5 .LBB7_7: # %while.cond40.preheader # =>This Inner Loop Header: Depth=1 loop # label6: diff --git a/test/torture-s/20020529-1.c.s b/test/torture-s/20020529-1.c.s index 7cccc50da..03edb048c 100644 --- a/test/torture-s/20020529-1.c.s +++ b/test/torture-s/20020529-1.c.s @@ -11,23 +11,23 @@ foo: # @foo # BB#0: # %entry i32.const $push2=, 8 i32.add $5=, $0, $pop2 - i32.const $push7=, 0 - i32.load $6=, f1.beenhere($pop7) + i32.const $push6=, 0 + i32.load $6=, f1.beenhere($pop6) .LBB0_1: # %for.cond # =>This Inner Loop Header: Depth=1 block block block loop # label3: - i32.const $push9=, 1 - i32.add $4=, $6, $pop9 - i32.const $push8=, 2 - i32.ge_s $push0=, $6, $pop8 + i32.const $push8=, 1 + i32.add $4=, $6, $pop8 + i32.const $push7=, 2 + i32.ge_s $push0=, $6, $pop7 br_if $pop0, 4 # 4: down to label0 # BB#2: # %f1.exit # in Loop: Header=BB0_1 Depth=1 - i32.const $push10=, 1 - i32.ge_s $push1=, $6, $pop10 + i32.const $push9=, 1 + i32.ge_s $push1=, $6, $pop9 br_if $pop1, 3 # 3: down to label1 # BB#3: # %if.end # in Loop: Header=BB0_1 Depth=1 @@ -35,20 +35,20 @@ foo: # @foo br_if $1, 0 # 0: up to label3 # BB#4: # %if.end3 # in Loop: Header=BB0_1 Depth=1 - i32.const $push12=, 0 - i32.store $6=, f1.beenhere($pop12), $4 - i32.store16 $4=, 0($5):p2align=2, $3 - i32.load $push3=, 0($0) - br_if $pop3, 2 # 2: down to label2 + i32.const $push11=, 0 + i32.store $6=, f1.beenhere($pop11), $4 + i32.load $4=, 0($0) + i32.store16 $discard=, 0($5):p2align=2, $3 + br_if $4, 2 # 2: down to label2 # BB#5: # %if.end8 # in Loop: Header=BB0_1 Depth=1 br_if $2, 1 # 1: down to label4 # BB#6: # %for.cond.outer.backedge # in Loop: Header=BB0_1 Depth=1 - i32.const $push14=, 16 - i32.shl $push4=, $4, $pop14 i32.const $push13=, 16 - i32.shr_s $3=, $pop4, $pop13 + i32.shl $push3=, $3, $pop13 + i32.const $push12=, 16 + i32.shr_s $3=, $pop3, $pop12 br 0 # 0: up to label3 .LBB0_7: # %if.then10 end_loop # label4: @@ -60,14 +60,14 @@ foo: # @foo unreachable .LBB0_9: # %if.then end_block # label1: - i32.const $push5=, 0 - i32.store $discard=, f1.beenhere($pop5), $4 - i32.const $push11=, 0 - return $pop11 + i32.const $push4=, 0 + i32.store $discard=, f1.beenhere($pop4), $4 + i32.const $push10=, 0 + return $pop10 .LBB0_10: # %if.then.i end_block # label0: - i32.const $push6=, 0 - i32.store $discard=, f1.beenhere($pop6), $4 + i32.const $push5=, 0 + i32.store $discard=, f1.beenhere($pop5), $4 call abort@FUNCTION unreachable .endfunc diff --git a/test/torture-s/20030928-1.c.s b/test/torture-s/20030928-1.c.s index bcd215624..75b8d4b70 100644 --- a/test/torture-s/20030928-1.c.s +++ b/test/torture-s/20030928-1.c.s @@ -6,55 +6,56 @@ .type get_addrs,@function get_addrs: # @get_addrs .param i32, i32 + .local i32, i32 # BB#0: # %entry + i32.load $2=, 4($1) i32.load $push0=, 0($1) i32.const $push1=, 1 i32.shl $push2=, $pop0, $pop1 i32.const $push3=, .L.str-131072 i32.add $push4=, $pop2, $pop3 i32.store $discard=, 0($0), $pop4 - i32.load $push5=, 4($1) - i32.const $push39=, 1 - i32.shl $push6=, $pop5, $pop39 - i32.const $push7=, .L.str.1-262144 - i32.add $push8=, $pop6, $pop7 - i32.store $discard=, 4($0), $pop8 - i32.load $push9=, 8($1) - i32.const $push38=, 1 - i32.shl $push10=, $pop9, $pop38 - i32.const $push11=, .L.str.2-393216 - i32.add $push12=, $pop10, $pop11 - i32.store $discard=, 8($0), $pop12 - i32.load $push13=, 12($1) - i32.const $push37=, 1 - i32.shl $push14=, $pop13, $pop37 - i32.const $push15=, .L.str.3-524288 + i32.load $3=, 8($1) + i32.const $push32=, 1 + i32.shl $push5=, $2, $pop32 + i32.const $push6=, .L.str.1-262144 + i32.add $push7=, $pop5, $pop6 + i32.store $discard=, 4($0), $pop7 + i32.load $2=, 12($1) + i32.const $push31=, 1 + i32.shl $push8=, $3, $pop31 + i32.const $push9=, .L.str.2-393216 + i32.add $push10=, $pop8, $pop9 + i32.store $discard=, 8($0), $pop10 + i32.load $3=, 16($1) + i32.const $push30=, 1 + i32.shl $push11=, $2, $pop30 + i32.const $push12=, .L.str.3-524288 + i32.add $push13=, $pop11, $pop12 + i32.store $discard=, 12($0), $pop13 + i32.load $2=, 20($1) + i32.const $push29=, 1 + i32.shl $push14=, $3, $pop29 + i32.const $push15=, .L.str.4-655360 i32.add $push16=, $pop14, $pop15 - i32.store $discard=, 12($0), $pop16 - i32.load $push17=, 16($1) - i32.const $push36=, 1 - i32.shl $push18=, $pop17, $pop36 - i32.const $push19=, .L.str.4-655360 - i32.add $push20=, $pop18, $pop19 - i32.store $discard=, 16($0), $pop20 - i32.load $push21=, 20($1) - i32.const $push35=, 1 - i32.shl $push22=, $pop21, $pop35 - i32.const $push23=, .L.str.5-786432 - i32.add $push24=, $pop22, $pop23 - i32.store $discard=, 20($0), $pop24 - i32.load $push25=, 24($1) - i32.const $push34=, 1 - i32.shl $push26=, $pop25, $pop34 - i32.const $push27=, .L.str.6-917504 - i32.add $push28=, $pop26, $pop27 - i32.store $discard=, 24($0), $pop28 - i32.load $push29=, 28($1) - i32.const $push33=, 1 - i32.shl $push30=, $pop29, $pop33 - i32.const $push31=, .L.str.7-1048576 - i32.add $push32=, $pop30, $pop31 - i32.store $discard=, 28($0), $pop32 + i32.store $discard=, 16($0), $pop16 + i32.load $3=, 24($1) + i32.const $push28=, 1 + i32.shl $push17=, $2, $pop28 + i32.const $push18=, .L.str.5-786432 + i32.add $push19=, $pop17, $pop18 + i32.store $discard=, 20($0), $pop19 + i32.load $1=, 28($1) + i32.const $push27=, 1 + i32.shl $push20=, $3, $pop27 + i32.const $push21=, .L.str.6-917504 + i32.add $push22=, $pop20, $pop21 + i32.store $discard=, 24($0), $pop22 + i32.const $push26=, 1 + i32.shl $push23=, $1, $pop26 + i32.const $push24=, .L.str.7-1048576 + i32.add $push25=, $pop23, $pop24 + i32.store $discard=, 28($0), $pop25 return .endfunc .Lfunc_end0: diff --git a/test/torture-s/20041214-1.c.s b/test/torture-s/20041214-1.c.s index bda47d4aa..aa0db13b3 100644 --- a/test/torture-s/20041214-1.c.s +++ b/test/torture-s/20041214-1.c.s @@ -7,50 +7,50 @@ g: # @g .param i32, i32, i32 .result i32 - .local i32, i32, i32, i32 + .local i32, i32, i32, i32, i32 # BB#0: # %entry - i32.const $3=, __stack_pointer - i32.load $3=, 0($3) - i32.const $4=, 16 - i32.sub $6=, $3, $4 i32.const $4=, __stack_pointer - i32.store $6=, 0($4), $6 - i32.store $discard=, 12($6), $2 + i32.load $4=, 0($4) + i32.const $5=, 16 + i32.sub $7=, $4, $5 + i32.const $5=, __stack_pointer + i32.store $7=, 0($5), $7 + i32.load8_u $3=, 0($1) + i32.store $discard=, 12($7), $2 block - i32.load8_u $push0=, 0($1) - i32.const $push13=, 0 - i32.eq $push14=, $pop0, $pop13 - br_if $pop14, 0 # 0: down to label0 + i32.const $push12=, 0 + i32.eq $push13=, $3, $pop12 + br_if $pop13, 0 # 0: down to label0 # BB#1: # %do_form_string.preheader - i32.const $push7=, 2 - i32.add $1=, $1, $pop7 + i32.const $push6=, 2 + i32.add $1=, $1, $pop6 .LBB0_2: # %do_form_string # =>This Inner Loop Header: Depth=1 loop # label1: - i32.load $push1=, 12($6) - i32.const $push12=, 3 - i32.add $push2=, $pop1, $pop12 - i32.const $push11=, -4 - i32.and $push3=, $pop2, $pop11 - tee_local $push10=, $2=, $pop3 - i32.const $push9=, 4 - i32.add $push4=, $pop10, $pop9 - i32.store $discard=, 12($6), $pop4 - i32.load $push5=, 0($2) - i32.call $discard=, strcpy@FUNCTION, $0, $pop5 + i32.load $push0=, 12($7) + i32.const $push11=, 3 + i32.add $push1=, $pop0, $pop11 + i32.const $push10=, -4 + i32.and $push2=, $pop1, $pop10 + tee_local $push9=, $2=, $pop2 + i32.const $push8=, 4 + i32.add $push3=, $pop9, $pop8 + i32.store $discard=, 12($7), $pop3 + i32.load $push4=, 0($2) + i32.call $discard=, strcpy@FUNCTION, $0, $pop4 i32.load8_u $2=, 0($1) - i32.const $push8=, 2 - i32.add $1=, $1, $pop8 + i32.const $push7=, 2 + i32.add $1=, $1, $pop7 br_if $2, 0 # 0: up to label1 .LBB0_3: # %all_done end_loop # label2: end_block # label0: - i32.const $push6=, 0 - i32.const $5=, 16 - i32.add $6=, $6, $5 - i32.const $5=, __stack_pointer - i32.store $6=, 0($5), $6 - return $pop6 + i32.const $push5=, 0 + i32.const $6=, 16 + i32.add $7=, $7, $6 + i32.const $6=, __stack_pointer + i32.store $7=, 0($6), $7 + return $pop5 .endfunc .Lfunc_end0: .size g, .Lfunc_end0-g diff --git a/test/torture-s/20070212-1.c.s b/test/torture-s/20070212-1.c.s index b4ef8d325..987eddffe 100644 --- a/test/torture-s/20070212-1.c.s +++ b/test/torture-s/20070212-1.c.s @@ -15,9 +15,9 @@ g: # @g i32.sub $8=, $4, $5 i32.const $5=, __stack_pointer i32.store $8=, 0($5), $8 - i32.store $discard=, 12($8), $0 i32.const $push1=, 0 i32.store $discard=, 0($3), $pop1 + i32.store $discard=, 12($8), $0 i32.const $7=, 12 i32.add $7=, $8, $7 i32.select $push0=, $1, $7, $2 diff --git a/test/torture-s/20080506-2.c.s b/test/torture-s/20080506-2.c.s index 033e7402a..ac1a57f20 100644 --- a/test/torture-s/20080506-2.c.s +++ b/test/torture-s/20080506-2.c.s @@ -7,17 +7,17 @@ foo: # @foo .param i32, i32 # BB#0: # %entry + i32.load $1=, 0($1) i32.load $push0=, 0($0) - tee_local $push7=, $0=, $pop0 + tee_local $push6=, $0=, $pop0 i32.const $push1=, 1 - i32.store $discard=, 0($pop7), $pop1 + i32.store $discard=, 0($pop6), $pop1 block - i32.load $push5=, 0($0) - i32.load $push2=, 0($1) - i32.const $push3=, 2 - i32.store $push4=, 0($pop2), $pop3 - i32.ne $push6=, $pop5, $pop4 - br_if $pop6, 0 # 0: down to label0 + i32.load $push4=, 0($0) + i32.const $push2=, 2 + i32.store $push3=, 0($1), $pop2 + i32.ne $push5=, $pop4, $pop3 + br_if $pop5, 0 # 0: down to label0 # BB#1: # %if.end return .LBB0_2: # %if.then diff --git a/test/torture-s/20080519-1.c.s b/test/torture-s/20080519-1.c.s index 0bf4e5f48..bfc01075a 100644 --- a/test/torture-s/20080519-1.c.s +++ b/test/torture-s/20080519-1.c.s @@ -41,17 +41,16 @@ regrename_optimize: # @regrename_optimize i32.sub $11=, $6, $7 i32.const $7=, __stack_pointer i32.store $11=, 0($7), $11 + i32.load $2=, 0($0) i32.const $push1=, 0 i32.store $push2=, 8($11), $pop1 - i32.store $2=, 12($11), $pop2 + i32.store $3=, 12($11), $pop2 i32.const $1=, -1 - copy_local $3=, $2 + copy_local $4=, $3 block - i32.load $push24=, 0($0) - tee_local $push25=, $4=, $pop24 - i32.const $push32=, 0 - i32.eq $push33=, $pop25, $pop32 - br_if $pop33, 0 # 0: down to label1 + i32.const $push30=, 0 + i32.eq $push31=, $2, $pop30 + br_if $pop31, 0 # 0: down to label1 .LBB1_1: # %for.body # =>This Inner Loop Header: Depth=1 loop # label2: @@ -59,29 +58,29 @@ regrename_optimize: # @regrename_optimize i32.load $push3=, 4($pop0) i32.const $push4=, 3 i32.shl $push5=, $pop3, $pop4 - tee_local $push28=, $5=, $pop5 - i32.load $push6=, reg_class_contents($pop28):p2align=3 - i32.const $push27=, -1 - i32.xor $push7=, $pop6, $pop27 - i32.or $3=, $3, $pop7 - copy_local $0=, $4 - i32.load $4=, 0($0) + tee_local $push26=, $5=, $pop5 + i32.load $push6=, reg_class_contents($pop26):p2align=3 + i32.const $push25=, -1 + i32.xor $push7=, $pop6, $pop25 + i32.or $4=, $4, $pop7 + copy_local $0=, $2 + i32.load $2=, 0($0) i32.load $push8=, reg_class_contents+4($5) - i32.const $push26=, -1 - i32.xor $push9=, $pop8, $pop26 - i32.or $2=, $2, $pop9 + i32.const $push24=, -1 + i32.xor $push9=, $pop8, $pop24 + i32.or $3=, $3, $pop9 i32.const $push10=, 1 i32.add $1=, $1, $pop10 - br_if $4, 0 # 0: up to label2 + br_if $2, 0 # 0: up to label2 # BB#2: # %for.end end_loop # label3: - i32.store $4=, 8($11), $3 + i32.store $2=, 8($11), $4 i32.const $push11=, 4 i32.const $9=, 8 i32.add $9=, $11, $9 i32.add $push12=, $9, $pop11 - tee_local $push29=, $3=, $pop12 - i32.store $discard=, 0($pop29), $2 + tee_local $push27=, $4=, $pop12 + i32.store $discard=, 0($pop27), $3 i32.const $push13=, 0 i32.lt_s $push14=, $1, $pop13 br_if $pop14, 0 # 0: down to label1 @@ -89,16 +88,16 @@ regrename_optimize: # @regrename_optimize i32.load $push15=, 4($0) i32.const $push16=, 3 i32.shl $push17=, $pop15, $pop16 - tee_local $push31=, $0=, $pop17 - i32.load $1=, reg_class_contents($pop31):p2align=3 + tee_local $push29=, $0=, $pop17 + i32.load $1=, reg_class_contents($pop29):p2align=3 i32.load $push21=, reg_class_contents+4($0) i32.const $push18=, -1 i32.xor $push22=, $pop21, $pop18 - i32.or $push23=, $2, $pop22 - i32.store $discard=, 0($3), $pop23 - i32.const $push30=, -1 - i32.xor $push19=, $1, $pop30 - i32.or $push20=, $4, $pop19 + i32.or $push23=, $3, $pop22 + i32.store $discard=, 0($4), $pop23 + i32.const $push28=, -1 + i32.xor $push19=, $1, $pop28 + i32.or $push20=, $2, $pop19 i32.store $discard=, 8($11), $pop20 i32.const $10=, 8 i32.add $10=, $11, $10 diff --git a/test/torture-s/921113-1.c.s b/test/torture-s/921113-1.c.s index a9bfe6fd5..b49c8cf80 100644 --- a/test/torture-s/921113-1.c.s +++ b/test/torture-s/921113-1.c.s @@ -78,55 +78,54 @@ gitter: # @gitter .local f32, f64, f64 # BB#0: # %entry block - f32.load $push2=, 0($4) + f32.load $push1=, 0($4) + f32.const $push25=, 0x0p0 + f32.ne $push2=, $pop1, $pop25 + br_if $pop2, 0 # 0: down to label2 +# BB#1: # %entry + f32.load $push0=, 4($4) f32.const $push26=, 0x0p0 - f32.ne $push3=, $pop2, $pop26 + f32.ne $push3=, $pop0, $pop26 br_if $pop3, 0 # 0: down to label2 -# BB#1: # %entry - f32.load $push1=, 4($4) - f32.const $push27=, 0x0p0 - f32.ne $push4=, $pop1, $pop27 - br_if $pop4, 0 # 0: down to label2 # BB#2: # %f1.exit block - f32.load $push6=, 8($4) + f32.load $push5=, 8($4) + f32.const $push27=, 0x1p0 + f32.ne $push8=, $pop5, $pop27 + br_if $pop8, 0 # 0: down to label3 +# BB#3: # %f1.exit + i32.const $push6=, 12 + i32.add $push7=, $4, $pop6 + f32.load $push4=, 0($pop7) f32.const $push28=, 0x1p0 - f32.ne $push9=, $pop6, $pop28 + f32.ne $push9=, $pop4, $pop28 br_if $pop9, 0 # 0: down to label3 -# BB#3: # %f1.exit - i32.const $push7=, 12 - i32.add $push8=, $4, $pop7 - f32.load $push5=, 0($pop8) - f32.const $push29=, 0x1p0 - f32.ne $push10=, $pop5, $pop29 - br_if $pop10, 0 # 0: down to label3 # BB#4: # %f2.exit - i32.const $push11=, 0 - i32.store $discard=, 0($3), $pop11 + f32.load $6=, 0($1) + i32.const $push10=, 0 + i32.store $discard=, 0($3), $pop10 block - f32.load $push0=, 0($1) - tee_local $push30=, $6=, $pop0 - f32.const $push12=, 0x0p0 - f32.gt $push13=, $pop30, $pop12 - f32.ne $push14=, $6, $6 - i32.or $push15=, $pop13, $pop14 - br_if $pop15, 0 # 0: down to label4 + f32.const $push11=, 0x0p0 + f32.gt $push12=, $6, $pop11 + f32.ne $push13=, $6, $6 + i32.or $push14=, $pop12, $pop13 + br_if $pop14, 0 # 0: down to label4 # BB#5: # %if.then - f64.promote/f32 $push16=, $6 - tee_local $push32=, $8=, $pop16 - f64.promote/f32 $push17=, $5 - f64.const $push18=, 0x1p-1 - f64.mul $push19=, $pop17, $pop18 - tee_local $push31=, $7=, $pop19 - f64.gt $push20=, $pop32, $pop31 - f64.ne $push22=, $8, $8 - f64.ne $push21=, $7, $7 - i32.or $push23=, $pop22, $pop21 - i32.or $push24=, $pop20, $pop23 - br_if $pop24, 0 # 0: down to label4 + f64.promote/f32 $push15=, $6 + tee_local $push30=, $8=, $pop15 + f64.promote/f32 $push16=, $5 + f64.const $push17=, 0x1p-1 + f64.mul $push18=, $pop16, $pop17 + tee_local $push29=, $7=, $pop18 + f64.gt $push19=, $pop30, $pop29 + f64.ne $push21=, $8, $8 + f64.ne $push20=, $7, $7 + i32.or $push22=, $pop21, $pop20 + i32.or $push23=, $pop19, $pop22 + br_if $pop23, 0 # 0: down to label4 # BB#6: # %if.then15 - i32.const $push25=, 1065353216 - i32.store $discard=, 0($2), $pop25 + i32.const $push24=, 1065353216 + i32.store $discard=, 0($2), $pop24 .LBB3_7: # %if.end18 end_block # label4: return $4 diff --git a/test/torture-s/950809-1.c.s b/test/torture-s/950809-1.c.s index 6e683fc99..e2d9d4bf5 100644 --- a/test/torture-s/950809-1.c.s +++ b/test/torture-s/950809-1.c.s @@ -11,15 +11,15 @@ f: # @f # BB#0: # %entry i32.load $push0=, 8($0) tee_local $push5=, $6=, $pop0 - i32.load $1=, 4($pop5) + i32.load $2=, 8($pop5) i32.const $push2=, 16 i32.add $push3=, $0, $pop2 tee_local $push4=, $5=, $pop3 i32.load $4=, 0($pop4) i32.load $3=, 12($0) - i32.load $2=, 8($6) i32.load $push1=, 0($6) i32.store $discard=, 8($6), $pop1 + i32.load $1=, 4($6) i32.store $discard=, 0($6), $4 i32.store $discard=, 0($5), $3 i32.store $discard=, 12($0), $2 diff --git a/test/torture-s/980223.c.s b/test/torture-s/980223.c.s index b1cb6d6b7..4c4b08821 100644 --- a/test/torture-s/980223.c.s +++ b/test/torture-s/980223.c.s @@ -19,51 +19,51 @@ bar: # @bar .type foo,@function foo: # @foo .param i32, i32, i32 - .local i64, i32, i32, i32, i32, i32 + .local i32, i64, i32, i32, i32, i32, i32 # BB#0: # %entry - i32.const $4=, __stack_pointer - i32.load $4=, 0($4) - i32.const $5=, 16 - i32.sub $8=, $4, $5 i32.const $5=, __stack_pointer - i32.store $8=, 0($5), $8 + i32.load $5=, 0($5) + i32.const $6=, 16 + i32.sub $9=, $5, $6 + i32.const $6=, __stack_pointer + i32.store $9=, 0($6), $9 block block block i32.load $push2=, 0($1) - tee_local $push9=, $1=, $pop2 - i32.load8_u $push3=, 4($pop9):p2align=2 - i32.const $push8=, 64 - i32.and $push4=, $pop3, $pop8 + tee_local $push8=, $1=, $pop2 + i32.load8_u $push3=, 4($pop8):p2align=2 + i32.const $push7=, 64 + i32.and $push4=, $pop3, $pop7 br_if $pop4, 0 # 0: down to label2 # BB#1: # %entry.if.end7_crit_edge - i64.load $3=, 0($2):p2align=2 + i64.load $4=, 0($2):p2align=2 br 1 # 1: down to label1 .LBB1_2: # %if.then end_block # label2: i32.load $push0=, 0($1) - tee_local $push11=, $1=, $pop0 - i64.load $push1=, 8($pop11):p2align=2 - i64.store $3=, 0($2):p2align=2, $pop1 - i32.load8_u $push5=, 4($1):p2align=2 - i32.const $push10=, 64 - i32.and $push6=, $pop5, $pop10 - br_if $pop6, 1 # 1: down to label0 + tee_local $push10=, $1=, $pop0 + i32.load8_u $3=, 4($pop10):p2align=2 + i64.load $push1=, 8($1):p2align=2 + i64.store $4=, 0($2):p2align=2, $pop1 + i32.const $push9=, 64 + i32.and $push5=, $3, $pop9 + br_if $pop5, 1 # 1: down to label0 .LBB1_3: # %if.end7 end_block # label1: - i64.store $discard=, 0($0):p2align=2, $3 - i32.const $6=, 16 - i32.add $8=, $8, $6 - i32.const $6=, __stack_pointer - i32.store $8=, 0($6), $8 + i64.store $discard=, 0($0):p2align=2, $4 + i32.const $7=, 16 + i32.add $9=, $9, $7 + i32.const $7=, __stack_pointer + i32.store $9=, 0($7), $9 return .LBB1_4: # %if.then6 end_block # label0: - i64.load $push7=, 0($2):p2align=2 - i64.store $discard=, 8($8):p2align=2, $pop7 - i32.const $7=, 8 - i32.add $7=, $8, $7 - call bar@FUNCTION, $2, $7 + i64.load $push6=, 0($2):p2align=2 + i64.store $discard=, 8($9):p2align=2, $pop6 + i32.const $8=, 8 + i32.add $8=, $9, $8 + call bar@FUNCTION, $2, $8 unreachable .endfunc .Lfunc_end1: @@ -75,50 +75,50 @@ foo: # @foo .type main,@function main: # @main .result i32 - .local i32, i32, i32, i32, i32 + .local i32, i32, i32, i32, i32, i32 # BB#0: # %entry - i32.const $1=, __stack_pointer - i32.load $1=, 0($1) - i32.const $2=, 16 - i32.sub $4=, $1, $2 i32.const $2=, __stack_pointer - i32.store $4=, 0($2), $4 - i32.const $push9=, 0 - i32.load8_u $0=, cons2+4($pop9):p2align=2 + i32.load $2=, 0($2) + i32.const $3=, 16 + i32.sub $5=, $2, $3 + i32.const $3=, __stack_pointer + i32.store $5=, 0($3), $5 i32.const $push8=, 0 - i64.load $push1=, .Lmain.y($pop8) - i64.store $discard=, 8($4), $pop1 + i32.load8_u $0=, cons2+4($pop8):p2align=2 + i32.const $push7=, 0 + i64.load $push1=, .Lmain.y($pop7) + i64.store $discard=, 8($5), $pop1 block - i32.const $push7=, 64 - i32.and $push2=, $0, $pop7 - i32.const $push14=, 0 - i32.eq $push15=, $pop2, $pop14 - br_if $pop15, 0 # 0: down to label3 + i32.const $push6=, 64 + i32.and $push2=, $0, $pop6 + i32.const $push13=, 0 + i32.eq $push14=, $pop2, $pop13 + br_if $pop14, 0 # 0: down to label3 # BB#1: # %if.then.i - i32.const $push12=, 0 - i32.load $push0=, cons2($pop12):p2align=4 - tee_local $push11=, $0=, $pop0 - i64.load $push3=, 8($pop11):p2align=2 - i64.store $discard=, 8($4), $pop3 - i32.load8_u $push4=, 4($0):p2align=2 - i32.const $push10=, 64 - i32.and $push5=, $pop4, $pop10 - i32.const $push16=, 0 - i32.eq $push17=, $pop5, $pop16 - br_if $pop17, 0 # 0: down to label3 + i32.const $push11=, 0 + i32.load $push0=, cons2($pop11):p2align=4 + tee_local $push10=, $0=, $pop0 + i32.load8_u $1=, 4($pop10):p2align=2 + i64.load $push3=, 8($0):p2align=2 + i64.store $discard=, 8($5), $pop3 + i32.const $push9=, 64 + i32.and $push4=, $1, $pop9 + i32.const $push15=, 0 + i32.eq $push16=, $pop4, $pop15 + br_if $pop16, 0 # 0: down to label3 # BB#2: # %if.then6.i - i64.load $push6=, 8($4) - i64.store $discard=, 0($4):p2align=2, $pop6 - call bar@FUNCTION, $0, $4 + i64.load $push5=, 8($5) + i64.store $discard=, 0($5):p2align=2, $pop5 + call bar@FUNCTION, $0, $5 unreachable .LBB2_3: # %foo.exit end_block # label3: - i32.const $push13=, 0 - i32.const $3=, 16 - i32.add $4=, $4, $3 - i32.const $3=, __stack_pointer - i32.store $4=, 0($3), $4 - return $pop13 + i32.const $push12=, 0 + i32.const $4=, 16 + i32.add $5=, $5, $4 + i32.const $4=, __stack_pointer + i32.store $5=, 0($4), $5 + return $pop12 .endfunc .Lfunc_end2: .size main, .Lfunc_end2-main diff --git a/test/torture-s/longlong.c.s b/test/torture-s/longlong.c.s index 1d84ed67f..d67deddf5 100644 --- a/test/torture-s/longlong.c.s +++ b/test/torture-s/longlong.c.s @@ -57,11 +57,8 @@ alpha_ep_extbl_i_eq_0: # @alpha_ep_extbl_i_eq_0 .type main,@function main: # @main .result i32 - .local i32 + .local i32, i64 # BB#0: # %alpha_ep_extbl_i_eq_0.exit - i32.const $push19=, 0 - i32.const $push2=, -2013265854 - i32.store $discard=, pars($pop19), $pop2 i32.const $push18=, 0 i32.load $0=, r($pop18) i32.const $push17=, 0 @@ -80,15 +77,18 @@ main: # @main i64.const $push10=, 255 i64.and $push11=, $pop9, $pop10 i64.store $discard=, 16($0), $pop11 - block i32.const $push15=, 0 - i64.load $push12=, b+16($pop15):p2align=4 - i64.const $push13=, 77 - i64.ne $push14=, $pop12, $pop13 - br_if $pop14, 0 # 0: down to label1 + i64.load $1=, b+16($pop15):p2align=4 + i32.const $push14=, 0 + i32.const $push2=, -2013265854 + i32.store $discard=, pars($pop14), $pop2 + block + i64.const $push12=, 77 + i64.ne $push13=, $1, $pop12 + br_if $pop13, 0 # 0: down to label1 # BB#1: # %if.end - i32.const $push20=, 0 - call exit@FUNCTION, $pop20 + i32.const $push19=, 0 + call exit@FUNCTION, $pop19 unreachable .LBB1_2: # %if.then end_block # label1: diff --git a/test/torture-s/pr15262-2.c.s b/test/torture-s/pr15262-2.c.s index 6ce691467..40f9b8cc4 100644 --- a/test/torture-s/pr15262-2.c.s +++ b/test/torture-s/pr15262-2.c.s @@ -8,19 +8,20 @@ foo: # @foo .param i32, i32, i32 .result i32 # BB#0: # %entry - i32.load $0=, 0($0) + i32.load $push4=, 0($0) + tee_local $push8=, $0=, $pop4 + i32.const $push5=, 3 + i32.store $discard=, 0($pop8), $pop5 + i32.const $push6=, 2 + i32.store $discard=, 0($1), $pop6 + i32.load $1=, 0($0) i32.const $push1=, 0 f32.load $push0=, 0($2) i32.const $push7=, 0 f32.load $push2=, X($pop7) f32.add $push3=, $pop0, $pop2 f32.store $discard=, X($pop1), $pop3 - i32.const $push4=, 3 - i32.store $discard=, 0($0), $pop4 - i32.const $push5=, 2 - i32.store $discard=, 0($1), $pop5 - i32.load $push6=, 0($0) - return $pop6 + return $1 .endfunc .Lfunc_end0: .size foo, .Lfunc_end0-foo diff --git a/test/torture-s/pr15262.c.s b/test/torture-s/pr15262.c.s index f96f6ecb3..c785a1175 100644 --- a/test/torture-s/pr15262.c.s +++ b/test/torture-s/pr15262.c.s @@ -29,6 +29,8 @@ foo: # @foo i32.sub $8=, $3, $4 i32.const $4=, __stack_pointer i32.store $8=, 0($4), $8 + i32.const $push2=, 1 + i32.store $0=, 4($0), $pop2 i32.const $6=, 8 i32.add $6=, $8, $6 i32.const $7=, 12 @@ -36,13 +38,11 @@ foo: # @foo i32.select $push0=, $1, $6, $7 i32.const $push1=, 1084647014 i32.store $discard=, 0($pop0), $pop1 - i32.const $push2=, 1 - i32.store $push3=, 4($0), $pop2 i32.const $5=, 16 i32.add $8=, $8, $5 i32.const $5=, __stack_pointer i32.store $8=, 0($5), $8 - return $pop3 + return $0 .endfunc .Lfunc_end1: .size foo, .Lfunc_end1-foo diff --git a/test/torture-s/pr15296.c.s b/test/torture-s/pr15296.c.s index 43011e5ac..602502d3d 100644 --- a/test/torture-s/pr15296.c.s +++ b/test/torture-s/pr15296.c.s @@ -8,8 +8,8 @@ f: # @f .param i32, i32, i32, i32, i32, i32 # BB#0: # %entry block - i32.ge_s $push2=, $3, $4 - br_if $pop2, 0 # 0: down to label0 + i32.ge_s $push1=, $3, $4 + br_if $pop1, 0 # 0: down to label0 .LBB0_1: # %l0 # =>This Inner Loop Header: Depth=1 loop # label1: @@ -22,24 +22,24 @@ f: # @f block block block - i32.const $push14=, 0 - i32.eq $push15=, $3, $pop14 - br_if $pop15, 0 # 0: down to label6 + i32.const $push12=, 0 + i32.eq $push13=, $3, $pop12 + br_if $pop13, 0 # 0: down to label6 # BB#3: # %if.end3 copy_local $4=, $5 br_if $5, 0 # 0: down to label6 # BB#4: # %if.end6 block - i32.const $push4=, 4 - i32.add $push5=, $1, $pop4 + i32.const $push3=, 4 + i32.add $push4=, $1, $pop3 i32.load $push0=, 0($1) - i32.load $push3=, 0($pop0) - i32.store $push6=, 0($pop5), $pop3 - br_if $pop6, 0 # 0: down to label7 + i32.load $push2=, 0($pop0) + i32.store $push5=, 0($pop4), $pop2 + br_if $pop5, 0 # 0: down to label7 # BB#5: # %if.end12 - i32.const $push7=, 0 - i32.const $push8=, -1 - i32.store $discard=, 12($pop7), $pop8 + i32.const $push6=, 0 + i32.const $push7=, -1 + i32.store $discard=, 12($pop6), $pop7 br 2 # 2: down to label5 .LBB0_6: # %if.then11 end_block # label7: @@ -47,20 +47,19 @@ f: # @f unreachable .LBB0_7: # %l3 end_block # label6: - i32.const $push9=, 4 - i32.add $push10=, $1, $pop9 - i32.store $3=, 0($pop10), $4 - i32.const $push11=, 8 - i32.add $push12=, $1, $pop11 - i32.load $push1=, 0($pop12) - tee_local $push13=, $1=, $pop1 - br_if $pop13, 2 # 2: down to label3 + i32.const $push10=, 8 + i32.add $push11=, $1, $pop10 + i32.load $3=, 0($pop11) + i32.const $push8=, 4 + i32.add $push9=, $1, $pop8 + i32.store $1=, 0($pop9), $4 + br_if $3, 2 # 2: down to label3 # BB#8: # %if.end19 - i32.const $push16=, 0 - i32.eq $push17=, $3, $pop16 - br_if $pop17, 1 # 1: down to label4 + i32.const $push14=, 0 + i32.eq $push15=, $1, $pop14 + br_if $pop15, 1 # 1: down to label4 # BB#9: # %if.end24 - i32.store $discard=, 8($3), $1 + i32.store $discard=, 8($1), $3 .LBB0_10: # %l4 end_block # label5: return diff --git a/test/torture-s/pr27073.c.s b/test/torture-s/pr27073.c.s index 5cbfcad84..31ed42d8d 100644 --- a/test/torture-s/pr27073.c.s +++ b/test/torture-s/pr27073.c.s @@ -19,7 +19,6 @@ foo: # @foo .LBB0_2: # %while.body # =>This Inner Loop Header: Depth=1 loop # label1: - i32.store $discard=, 0($0), $5 i32.const $push12=, 4 i32.add $push3=, $0, $pop12 i32.store $discard=, 0($pop3), $6 @@ -32,6 +31,7 @@ foo: # @foo i32.const $push9=, 16 i32.add $push6=, $0, $pop9 i32.store $discard=, 0($pop6), $9 + i32.store $discard=, 0($0), $5 i32.const $push8=, 1 i32.add $4=, $4, $pop8 i32.const $push7=, 20 diff --git a/test/torture-s/pr28982a.c.s b/test/torture-s/pr28982a.c.s index 8d7a434b0..54b99e094 100644 --- a/test/torture-s/pr28982a.c.s +++ b/test/torture-s/pr28982a.c.s @@ -34,115 +34,115 @@ foo: # @foo br_if $pop152, 0 # 0: down to label0 # BB#1: # %while.body.preheader i32.const $push129=, 0 - i64.load $push9=, incs+72($pop129) - tee_local $push128=, $61=, $pop9 - i64.const $push10=, 32 - i64.shr_u $push11=, $pop128, $pop10 - i32.wrap/i64 $push12=, $pop11 - i32.const $push13=, 2 - i32.shl $1=, $pop12, $pop13 - i32.wrap/i64 $push14=, $61 + i64.load $push39=, incs+72($pop129) + tee_local $push128=, $61=, $pop39 + i64.const $push21=, 32 + i64.shr_u $push40=, $pop128, $pop21 + i32.wrap/i64 $push19=, $pop40 + i32.const $push41=, 2 + i32.shl $1=, $pop19, $pop41 + i32.wrap/i64 $push18=, $61 i32.const $push127=, 2 - i32.shl $2=, $pop14, $pop127 + i32.shl $2=, $pop18, $pop127 i32.const $push126=, 0 - i64.load $push8=, incs+64($pop126):p2align=4 - tee_local $push125=, $61=, $pop8 + i64.load $push37=, incs+64($pop126):p2align=4 + tee_local $push125=, $61=, $pop37 i64.const $push124=, 32 - i64.shr_u $push15=, $pop125, $pop124 - i32.wrap/i64 $push16=, $pop15 + i64.shr_u $push38=, $pop125, $pop124 + i32.wrap/i64 $push17=, $pop38 i32.const $push123=, 2 - i32.shl $3=, $pop16, $pop123 - i32.wrap/i64 $push17=, $61 + i32.shl $3=, $pop17, $pop123 + i32.wrap/i64 $push16=, $61 i32.const $push122=, 2 - i32.shl $4=, $pop17, $pop122 + i32.shl $4=, $pop16, $pop122 i32.const $push121=, 0 - i64.load $push7=, incs+56($pop121) - tee_local $push120=, $61=, $pop7 + i64.load $push35=, incs+56($pop121) + tee_local $push120=, $61=, $pop35 i64.const $push119=, 32 - i64.shr_u $push18=, $pop120, $pop119 - i32.wrap/i64 $push19=, $pop18 + i64.shr_u $push36=, $pop120, $pop119 + i32.wrap/i64 $push15=, $pop36 i32.const $push118=, 2 - i32.shl $5=, $pop19, $pop118 - i32.wrap/i64 $push20=, $61 + i32.shl $5=, $pop15, $pop118 + i32.wrap/i64 $push14=, $61 i32.const $push117=, 2 - i32.shl $6=, $pop20, $pop117 + i32.shl $6=, $pop14, $pop117 i32.const $push116=, 0 - i64.load $push6=, incs+48($pop116):p2align=4 - tee_local $push115=, $61=, $pop6 + i64.load $push33=, incs+48($pop116):p2align=4 + tee_local $push115=, $61=, $pop33 i64.const $push114=, 32 - i64.shr_u $push21=, $pop115, $pop114 - i32.wrap/i64 $push22=, $pop21 + i64.shr_u $push34=, $pop115, $pop114 + i32.wrap/i64 $push13=, $pop34 i32.const $push113=, 2 - i32.shl $7=, $pop22, $pop113 - i32.wrap/i64 $push23=, $61 + i32.shl $7=, $pop13, $pop113 + i32.wrap/i64 $push12=, $61 i32.const $push112=, 2 - i32.shl $8=, $pop23, $pop112 + i32.shl $8=, $pop12, $pop112 i32.const $push111=, 0 - i64.load $push5=, incs+40($pop111) - tee_local $push110=, $61=, $pop5 + i64.load $push31=, incs+40($pop111) + tee_local $push110=, $61=, $pop31 i64.const $push109=, 32 - i64.shr_u $push24=, $pop110, $pop109 - i32.wrap/i64 $push25=, $pop24 + i64.shr_u $push32=, $pop110, $pop109 + i32.wrap/i64 $push11=, $pop32 i32.const $push108=, 2 - i32.shl $9=, $pop25, $pop108 - i32.wrap/i64 $push26=, $61 + i32.shl $9=, $pop11, $pop108 + i32.wrap/i64 $push10=, $61 i32.const $push107=, 2 - i32.shl $10=, $pop26, $pop107 + i32.shl $10=, $pop10, $pop107 i32.const $push106=, 0 - i64.load $push4=, incs+32($pop106):p2align=4 - tee_local $push105=, $61=, $pop4 + i64.load $push29=, incs+32($pop106):p2align=4 + tee_local $push105=, $61=, $pop29 i64.const $push104=, 32 - i64.shr_u $push27=, $pop105, $pop104 - i32.wrap/i64 $push28=, $pop27 + i64.shr_u $push30=, $pop105, $pop104 + i32.wrap/i64 $push9=, $pop30 i32.const $push103=, 2 - i32.shl $11=, $pop28, $pop103 - i32.wrap/i64 $push29=, $61 + i32.shl $11=, $pop9, $pop103 + i32.wrap/i64 $push8=, $61 i32.const $push102=, 2 - i32.shl $12=, $pop29, $pop102 + i32.shl $12=, $pop8, $pop102 i32.const $push101=, 0 - i64.load $push3=, incs+24($pop101) - tee_local $push100=, $61=, $pop3 + i64.load $push27=, incs+24($pop101) + tee_local $push100=, $61=, $pop27 i64.const $push99=, 32 - i64.shr_u $push30=, $pop100, $pop99 - i32.wrap/i64 $push31=, $pop30 + i64.shr_u $push28=, $pop100, $pop99 + i32.wrap/i64 $push7=, $pop28 i32.const $push98=, 2 - i32.shl $13=, $pop31, $pop98 - i32.wrap/i64 $push32=, $61 + i32.shl $13=, $pop7, $pop98 + i32.wrap/i64 $push6=, $61 i32.const $push97=, 2 - i32.shl $14=, $pop32, $pop97 + i32.shl $14=, $pop6, $pop97 i32.const $push96=, 0 - i64.load $push2=, incs+16($pop96):p2align=4 - tee_local $push95=, $61=, $pop2 + i64.load $push25=, incs+16($pop96):p2align=4 + tee_local $push95=, $61=, $pop25 i64.const $push94=, 32 - i64.shr_u $push33=, $pop95, $pop94 - i32.wrap/i64 $push34=, $pop33 + i64.shr_u $push26=, $pop95, $pop94 + i32.wrap/i64 $push5=, $pop26 i32.const $push93=, 2 - i32.shl $15=, $pop34, $pop93 - i32.wrap/i64 $push35=, $61 + i32.shl $15=, $pop5, $pop93 + i32.wrap/i64 $push4=, $61 i32.const $push92=, 2 - i32.shl $16=, $pop35, $pop92 + i32.shl $16=, $pop4, $pop92 i32.const $push91=, 0 - i64.load $push1=, incs+8($pop91) - tee_local $push90=, $61=, $pop1 + i64.load $push23=, incs+8($pop91) + tee_local $push90=, $61=, $pop23 i64.const $push89=, 32 - i64.shr_u $push36=, $pop90, $pop89 - i32.wrap/i64 $push37=, $pop36 + i64.shr_u $push24=, $pop90, $pop89 + i32.wrap/i64 $push3=, $pop24 i32.const $push88=, 2 - i32.shl $17=, $pop37, $pop88 - i32.wrap/i64 $push38=, $61 + i32.shl $17=, $pop3, $pop88 + i32.wrap/i64 $push2=, $61 i32.const $push87=, 2 - i32.shl $18=, $pop38, $pop87 + i32.shl $18=, $pop2, $pop87 i32.const $push86=, 0 - i64.load $push0=, incs($pop86):p2align=4 - tee_local $push85=, $61=, $pop0 + i64.load $push20=, incs($pop86):p2align=4 + tee_local $push85=, $61=, $pop20 i64.const $push84=, 32 - i64.shr_u $push39=, $pop85, $pop84 - i32.wrap/i64 $push40=, $pop39 + i64.shr_u $push22=, $pop85, $pop84 + i32.wrap/i64 $push1=, $pop22 i32.const $push83=, 2 - i32.shl $19=, $pop40, $pop83 - i32.wrap/i64 $push41=, $61 + i32.shl $19=, $pop1, $pop83 + i32.wrap/i64 $push0=, $61 i32.const $push82=, 2 - i32.shl $20=, $pop41, $pop82 + i32.shl $20=, $pop0, $pop82 f32.const $41=, 0x0p0 i32.const $push81=, 0 i32.load $40=, ptrs+76($pop81) diff --git a/test/torture-s/pr36034-2.c.s b/test/torture-s/pr36034-2.c.s index 0de6e9804..33494dac0 100644 --- a/test/torture-s/pr36034-2.c.s +++ b/test/torture-s/pr36034-2.c.s @@ -5,42 +5,42 @@ .globl test .type test,@function test: # @test - .local i64, i64, i64, i32, i32 + .local i64, i64, i32, i32 # BB#0: # %entry - i32.const $4=, 0 - i32.const $3=, tmp + i32.const $3=, 0 + i32.const $2=, tmp .LBB0_1: # %for.body # =>This Inner Loop Header: Depth=1 loop # label0: - i64.load $0=, x($4):p2align=4 - i64.load $1=, x+16($4):p2align=4 - i32.const $push14=, 8 - i32.add $push1=, $3, $pop14 - i64.load $push0=, x+8($4) + i64.load $0=, x+16($3):p2align=4 + i32.const $push15=, 8 + i32.add $push1=, $2, $pop15 + i64.load $push0=, x+8($3) i64.store $discard=, 0($pop1), $pop0 - i64.load $2=, x+24($4) - i32.const $push13=, 16 - i32.add $push2=, $3, $pop13 - i64.store $discard=, 0($pop2):p2align=4, $1 - i64.load $1=, x+32($4):p2align=4 - i32.const $push12=, 24 - i32.add $push3=, $3, $pop12 - i64.store $discard=, 0($pop3), $2 - i64.load $2=, x+40($4) - i32.const $push11=, 32 - i32.add $push4=, $3, $pop11 - i64.store $discard=, 0($pop4):p2align=4, $1 - i32.const $push10=, 40 - i32.add $push5=, $3, $pop10 - i64.store $discard=, 0($pop5), $2 - i64.store $discard=, 0($3):p2align=4, $0 - i32.const $push9=, 80 - i32.add $4=, $4, $pop9 - i32.const $push8=, 48 - i32.add $3=, $3, $pop8 - i32.const $push7=, 400 - i32.ne $push6=, $4, $pop7 - br_if $pop6, 0 # 0: up to label0 + i64.load $1=, x+24($3) + i32.const $push14=, 16 + i32.add $push2=, $2, $pop14 + i64.store $discard=, 0($pop2):p2align=4, $0 + i32.const $push13=, 24 + i32.add $push3=, $2, $pop13 + i64.store $discard=, 0($pop3), $1 + i64.load $0=, x($3):p2align=4 + i64.load $1=, x+40($3) + i32.const $push12=, 32 + i32.add $push5=, $2, $pop12 + i64.load $push4=, x+32($3):p2align=4 + i64.store $discard=, 0($pop5):p2align=4, $pop4 + i32.const $push11=, 40 + i32.add $push6=, $2, $pop11 + i64.store $discard=, 0($pop6), $1 + i64.store $discard=, 0($2):p2align=4, $0 + i32.const $push10=, 80 + i32.add $3=, $3, $pop10 + i32.const $push9=, 48 + i32.add $2=, $2, $pop9 + i32.const $push8=, 400 + i32.ne $push7=, $3, $pop8 + br_if $pop7, 0 # 0: up to label0 # BB#2: # %for.end end_loop # label1: return diff --git a/test/torture-s/pr37573.c.s b/test/torture-s/pr37573.c.s index 3ed1dfdb3..0ab4a5df4 100644 --- a/test/torture-s/pr37573.c.s +++ b/test/torture-s/pr37573.c.s @@ -279,8 +279,8 @@ foo: # @foo i32.store $push4=, 4($0), $pop3 br_if $pop4, 0 # 0: down to label3 # BB#1: # %if.then - i32.const $push45=, 8 - i32.add $push5=, $0, $pop45 + i32.const $push44=, 8 + i32.add $push5=, $0, $pop44 i32.store $discard=, 0($0), $pop5 i32.load $2=, 8($0) i32.const $1=, 0 @@ -288,70 +288,69 @@ foo: # @foo # =>This Inner Loop Header: Depth=1 loop # label4: i32.add $push6=, $0, $1 - tee_local $push57=, $4=, $pop6 - i32.const $push56=, 8 - i32.add $push19=, $pop57, $pop56 - i32.const $push55=, 0 - i32.const $push54=, 12 - i32.add $push7=, $4, $pop54 + tee_local $push56=, $4=, $pop6 + i32.const $push55=, 8 + i32.add $push19=, $pop56, $pop55 + i32.const $push54=, 0 + i32.const $push53=, 12 + i32.add $push7=, $4, $pop53 i32.load $push0=, 0($pop7) - tee_local $push53=, $3=, $pop0 - i32.const $push52=, 1 - i32.and $push12=, $pop53, $pop52 - i32.sub $push13=, $pop55, $pop12 - i32.const $push51=, -1727483681 - i32.and $push14=, $pop13, $pop51 - i32.const $push50=, 1596 - i32.add $push15=, $4, $pop50 + tee_local $push52=, $3=, $pop0 + i32.const $push51=, 1 + i32.and $push12=, $pop52, $pop51 + i32.sub $push13=, $pop54, $pop12 + i32.const $push50=, -1727483681 + i32.and $push14=, $pop13, $pop50 + i32.const $push49=, 1596 + i32.add $push15=, $4, $pop49 i32.load $push16=, 0($pop15) i32.xor $push17=, $pop14, $pop16 i32.xor $push8=, $3, $2 - i32.const $push49=, 2147483646 - i32.and $push9=, $pop8, $pop49 + i32.const $push48=, 2147483646 + i32.and $push9=, $pop8, $pop48 i32.xor $push10=, $pop9, $2 - i32.const $push48=, 1 - i32.shr_u $push11=, $pop10, $pop48 + i32.const $push47=, 1 + i32.shr_u $push11=, $pop10, $pop47 i32.xor $push18=, $pop17, $pop11 i32.store $discard=, 0($pop19), $pop18 - i32.const $push47=, 4 - i32.add $1=, $1, $pop47 + i32.const $push46=, 4 + i32.add $1=, $1, $pop46 copy_local $2=, $3 - i32.const $push46=, 908 - i32.ne $push20=, $1, $pop46 + i32.const $push45=, 908 + i32.ne $push20=, $1, $pop45 br_if $pop20, 0 # 0: up to label4 .LBB2_3: # %if.end end_loop # label5: end_block # label3: i32.load $push21=, 0($0) - tee_local $push61=, $1=, $pop21 + tee_local $push59=, $2=, $pop21 + i32.load $1=, 0($pop59) i32.const $push22=, 4 - i32.add $push23=, $pop61, $pop22 + i32.add $push23=, $2, $pop22 i32.store $discard=, 0($0), $pop23 - i32.load $push24=, 0($1) - tee_local $push60=, $1=, $pop24 - i32.const $push25=, 11 - i32.shr_u $push26=, $pop60, $pop25 - i32.xor $push27=, $pop26, $1 - tee_local $push59=, $1=, $pop27 - i32.const $push28=, 7 - i32.shl $push29=, $pop59, $pop28 - i32.const $push30=, -1658038656 - i32.and $push31=, $pop29, $pop30 - i32.xor $push32=, $pop31, $1 - tee_local $push58=, $1=, $pop32 - i32.const $push33=, 15 - i32.shl $push34=, $pop58, $pop33 - i32.const $push35=, 130023424 - i32.and $push36=, $pop34, $pop35 - i32.xor $push37=, $pop36, $1 - i32.const $push38=, 18 - i32.shr_u $push39=, $pop37, $pop38 - i32.xor $push40=, $pop39, $1 - i32.const $push41=, 1 - i32.shr_u $push42=, $pop40, $pop41 - i32.const $push43=, 255 - i32.and $push44=, $pop42, $pop43 - return $pop44 + i32.const $push24=, 11 + i32.shr_u $push25=, $1, $pop24 + i32.xor $push26=, $1, $pop25 + tee_local $push58=, $1=, $pop26 + i32.const $push27=, 7 + i32.shl $push28=, $pop58, $pop27 + i32.const $push29=, -1658038656 + i32.and $push30=, $pop28, $pop29 + i32.xor $push31=, $pop30, $1 + tee_local $push57=, $1=, $pop31 + i32.const $push32=, 15 + i32.shl $push33=, $pop57, $pop32 + i32.const $push34=, 130023424 + i32.and $push35=, $pop33, $pop34 + i32.xor $push36=, $pop35, $1 + i32.const $push37=, 18 + i32.shr_u $push38=, $pop36, $pop37 + i32.xor $push39=, $pop38, $1 + i32.const $push40=, 1 + i32.shr_u $push41=, $pop39, $pop40 + i32.const $push42=, 255 + i32.and $push43=, $pop41, $pop42 + return $pop43 .endfunc .Lfunc_end2: .size foo, .Lfunc_end2-foo diff --git a/test/torture-s/pr52760.c.s b/test/torture-s/pr52760.c.s index b1774986a..02231edc9 100644 --- a/test/torture-s/pr52760.c.s +++ b/test/torture-s/pr52760.c.s @@ -6,7 +6,7 @@ .type foo,@function foo: # @foo .param i32, i32 - .local i32, i32 + .local i32, i32, i32, i32 # BB#0: # %entry block i32.const $push0=, 1 @@ -15,48 +15,47 @@ foo: # @foo .LBB0_1: # %for.body # =>This Inner Loop Header: Depth=1 loop # label1: - i32.load16_u $push2=, 0($1) - tee_local $push34=, $2=, $pop2 - i32.const $push3=, 8 - i32.shr_u $push4=, $pop34, $pop3 - i32.const $push33=, 8 - i32.shl $push5=, $2, $pop33 - i32.or $push6=, $pop4, $pop5 - i32.store16 $discard=, 0($1), $pop6 - i32.const $push7=, 2 - i32.add $2=, $1, $pop7 - i32.load16_u $push8=, 0($2) - tee_local $push32=, $3=, $pop8 - i32.const $push31=, 8 - i32.shr_u $push9=, $pop32, $pop31 + i32.const $push6=, 2 + i32.add $2=, $1, $pop6 + i32.const $push11=, 4 + i32.add $push12=, $1, $pop11 + tee_local $push32=, $5=, $pop12 + i32.load16_u $3=, 0($pop32) + i32.load16_u $push7=, 0($2) + tee_local $push31=, $4=, $pop7 + i32.const $push2=, 8 + i32.shr_u $push8=, $pop31, $pop2 i32.const $push30=, 8 - i32.shl $push10=, $3, $pop30 - i32.or $push11=, $pop9, $pop10 - i32.store16 $discard=, 0($2), $pop11 - i32.const $push12=, 4 - i32.add $2=, $1, $pop12 - i32.load16_u $push13=, 0($2) - tee_local $push29=, $3=, $pop13 + i32.shl $push9=, $4, $pop30 + i32.or $push10=, $pop8, $pop9 + i32.store16 $discard=, 0($2), $pop10 + i32.const $push16=, 6 + i32.add $push17=, $1, $pop16 + tee_local $push29=, $4=, $pop17 + i32.load16_u $2=, 0($pop29) i32.const $push28=, 8 - i32.shr_u $push14=, $pop29, $pop28 + i32.shr_u $push13=, $3, $pop28 i32.const $push27=, 8 - i32.shl $push15=, $3, $pop27 - i32.or $push16=, $pop14, $pop15 - i32.store16 $discard=, 0($2), $pop16 - i32.const $push17=, 6 - i32.add $2=, $1, $pop17 - i32.load16_u $push18=, 0($2) - tee_local $push26=, $3=, $pop18 + i32.shl $push14=, $3, $pop27 + i32.or $push15=, $pop13, $pop14 + i32.store16 $discard=, 0($5), $pop15 + i32.load16_u $3=, 0($1) + i32.const $push26=, 8 + i32.shr_u $push18=, $2, $pop26 i32.const $push25=, 8 - i32.shr_u $push19=, $pop26, $pop25 + i32.shl $push19=, $2, $pop25 + i32.or $push20=, $pop18, $pop19 + i32.store16 $discard=, 0($4), $pop20 i32.const $push24=, 8 - i32.shl $push20=, $3, $pop24 - i32.or $push21=, $pop19, $pop20 - i32.store16 $discard=, 0($2), $pop21 - i32.const $push22=, -1 - i32.add $0=, $0, $pop22 + i32.shr_u $push3=, $3, $pop24 i32.const $push23=, 8 - i32.add $1=, $1, $pop23 + i32.shl $push4=, $3, $pop23 + i32.or $push5=, $pop3, $pop4 + i32.store16 $discard=, 0($1), $pop5 + i32.const $push21=, -1 + i32.add $0=, $0, $pop21 + i32.const $push22=, 8 + i32.add $1=, $1, $pop22 br_if $0, 0 # 0: up to label1 .LBB0_2: # %for.end end_loop # label2: diff --git a/test/torture-s/pr57281.c.s b/test/torture-s/pr57281.c.s index 53db424fa..f01addc51 100644 --- a/test/torture-s/pr57281.c.s +++ b/test/torture-s/pr57281.c.s @@ -32,44 +32,43 @@ main: # @main .local i32, i32, i32, i32, i32 # BB#0: # %entry block - i32.const $push11=, 0 - i32.load $push0=, b($pop11) - i32.const $push10=, -20 - i32.eq $push1=, $pop0, $pop10 + i32.const $push9=, 0 + i32.load $push0=, b($pop9) + i32.const $push8=, -20 + i32.eq $push1=, $pop0, $pop8 br_if $pop1, 0 # 0: down to label0 # BB#1: # %for.body.lr.ph - i32.const $push14=, 0 - i32.load $0=, a($pop14) - i32.const $push13=, 0 - i32.load $1=, e($pop13) i32.const $push12=, 0 - i32.load $2=, g($pop12) + i32.load $0=, a($pop12) + i32.const $push11=, 0 + i32.load $1=, e($pop11) + i32.const $push10=, 0 + i32.load $2=, g($pop10) .LBB1_2: # %for.body # =>This Inner Loop Header: Depth=1 loop # label1: - i32.const $push20=, 0 - i64.load $discard=, f($pop20) - i32.const $push19=, 0 - i32.store $push2=, 0($1), $pop19 - tee_local $push18=, $4=, $pop2 - i32.load $push3=, b($pop18) - tee_local $push17=, $3=, $pop3 - i64.extend_s/i32 $push4=, $pop17 - i64.store $discard=, 0($2), $pop4 - i32.select $push5=, $0, $4, $3 - i32.store $discard=, 0($1), $pop5 - i32.load $push6=, b($4) - i32.const $push16=, -1 - i32.add $push7=, $pop6, $pop16 - i32.store $push8=, b($4), $pop7 - i32.const $push15=, -20 - i32.ne $push9=, $pop8, $pop15 - br_if $pop9, 0 # 0: up to label1 + i32.const $push17=, 0 + i64.load $discard=, f($pop17) + i32.const $push16=, 0 + i32.store $3=, 0($1), $pop16 + i32.load $push2=, b($3) + tee_local $push15=, $4=, $pop2 + i32.select $push4=, $0, $3, $pop15 + i32.store $discard=, 0($1), $pop4 + i32.load $push5=, b($3) + i32.const $push14=, -1 + i32.add $push6=, $pop5, $pop14 + i32.store $3=, b($3), $pop6 + i64.extend_s/i32 $push3=, $4 + i64.store $discard=, 0($2), $pop3 + i32.const $push13=, -20 + i32.ne $push7=, $3, $pop13 + br_if $pop7, 0 # 0: up to label1 .LBB1_3: # %for.end end_loop # label2: end_block # label0: - i32.const $push21=, 0 - return $pop21 + i32.const $push18=, 0 + return $pop18 .endfunc .Lfunc_end1: .size main, .Lfunc_end1-main diff --git a/test/torture-s/pr58277-1.c.s b/test/torture-s/pr58277-1.c.s index b75d07a2e..da0347488 100644 --- a/test/torture-s/pr58277-1.c.s +++ b/test/torture-s/pr58277-1.c.s @@ -34,23 +34,23 @@ baz: # @baz .type main,@function main: # @main .result i32 - .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 + .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 # BB#0: # %entry - i32.const $7=, __stack_pointer - i32.load $7=, 0($7) - i32.const $8=, 32 - i32.sub $10=, $7, $8 i32.const $8=, __stack_pointer - i32.store $10=, 0($8), $10 + i32.load $8=, 0($8) + i32.const $9=, 32 + i32.sub $11=, $8, $9 + i32.const $9=, __stack_pointer + i32.store $11=, 0($9), $11 i32.const $push4=, 0 - i32.const $push114=, 0 + i32.const $push113=, 0 i32.const $push3=, 1 - i32.store $push5=, a($pop114), $pop3 + i32.store $push5=, a($pop113), $pop3 i32.store $0=, n($pop4), $pop5 - i32.const $push113=, 0 i32.const $push112=, 0 - i32.store8 $1=, u($pop113), $pop112 - copy_local $4=, $0 + i32.const $push111=, 0 + i32.store8 $1=, u($pop112), $pop111 + copy_local $5=, $0 .LBB2_1: # %for.body # =>This Loop Header: Depth=1 # Child Loop BB2_4 Depth 2 @@ -59,43 +59,43 @@ main: # @main block block i32.store $push6=, g($1), $1 - tee_local $push115=, $2=, $pop6 - i32.load $push7=, l($pop115) - i32.const $push157=, 0 - i32.eq $push158=, $pop7, $pop157 - br_if $pop158, 0 # 0: down to label3 + tee_local $push114=, $3=, $pop6 + i32.load $push7=, l($pop114) + i32.const $push156=, 0 + i32.eq $push157=, $pop7, $pop156 + br_if $pop157, 0 # 0: down to label3 # BB#2: # %for.end # in Loop: Header=BB2_1 Depth=1 - i32.load $push8=, j($2) - i32.store $push9=, 0($pop8), $2 - tee_local $push126=, $5=, $pop9 - i32.store $push10=, d($pop126), $5 - tee_local $push125=, $5=, $pop10 - i32.load $push13=, i($pop125) - i32.load $push11=, j($5) + i32.load $push8=, j($3) + i32.store $push9=, 0($pop8), $3 + tee_local $push125=, $6=, $pop9 + i32.store $push10=, d($pop125), $6 + tee_local $push124=, $6=, $pop10 + i32.load $push13=, i($pop124) + i32.load $push11=, j($6) i32.load $push12=, 0($pop11) i32.store $discard=, 0($pop13), $pop12 - i32.load $push14=, i($5) - i32.store $push15=, 0($pop14), $5 - tee_local $push124=, $5=, $pop15 - i32.load $push16=, i($pop124) - i32.store $push17=, 0($pop16), $5 + i32.load $push14=, i($6) + i32.store $push15=, 0($pop14), $6 + tee_local $push123=, $6=, $pop15 + i32.load $push16=, i($pop123) + i32.store $push17=, 0($pop16), $6 i32.load $push18=, i($pop17) - i32.store $discard=, 0($pop18), $10 + i32.store $discard=, 0($pop18), $11 br 1 # 1: down to label2 .LBB2_3: # %for.cond.preheader.i # in Loop: Header=BB2_1 Depth=1 end_block # label3: block - i32.load $push19=, i($2) - i32.store $push20=, 0($pop19), $2 - tee_local $push118=, $4=, $pop20 - i32.load $push21=, e($pop118) - i32.store $push22=, 0($pop21), $4 - tee_local $push117=, $4=, $pop22 - i32.store $push23=, o($pop117), $4 - tee_local $push116=, $3=, $pop23 - i32.load $push24=, p($pop116) + i32.load $push19=, i($3) + i32.store $push20=, 0($pop19), $3 + tee_local $push117=, $5=, $pop20 + i32.load $push21=, e($pop117) + i32.store $push22=, 0($pop21), $5 + tee_local $push116=, $5=, $pop22 + i32.store $push23=, o($pop116), $5 + tee_local $push115=, $4=, $pop23 + i32.load $push24=, p($pop115) br_if $pop24, 0 # 0: down to label4 .LBB2_4: # %for.cond3.preheader.i # Parent Loop BB2_1 Depth=1 @@ -103,13 +103,13 @@ main: # @main # Child Loop BB2_5 Depth 3 loop # label5: block - i32.load $push0=, i($3) - tee_local $push121=, $6=, $pop0 - i32.load $push1=, 0($pop121) - tee_local $push120=, $5=, $pop1 - i32.store $push25=, 0($pop120), $3 - tee_local $push119=, $4=, $pop25 - i32.load $push26=, j($pop119) + i32.load $push0=, i($4) + tee_local $push120=, $7=, $pop0 + i32.load $push1=, 0($pop120) + tee_local $push119=, $6=, $pop1 + i32.store $push25=, 0($pop119), $4 + tee_local $push118=, $5=, $pop25 + i32.load $push26=, j($pop118) i32.load $push27=, 0($pop26) i32.load $push28=, 0($pop27) br_if $pop28, 0 # 0: down to label7 @@ -118,193 +118,193 @@ main: # @main # Parent Loop BB2_4 Depth=2 # => This Inner Loop Header: Depth=3 loop # label8: - i32.load $push29=, k($4) + i32.load $push29=, k($5) i32.add $push30=, $pop29, $0 - i32.store $discard=, k($4), $pop30 - i32.store $push31=, 0($5), $4 + i32.store $discard=, k($5), $pop30 + i32.store $push31=, 0($6), $5 i32.load $push32=, j($pop31) i32.load $push33=, 0($pop32) i32.load $push34=, 0($pop33) - i32.const $push159=, 0 - i32.eq $push160=, $pop34, $pop159 - br_if $pop160, 0 # 0: up to label8 + i32.const $push158=, 0 + i32.eq $push159=, $pop34, $pop158 + br_if $pop159, 0 # 0: up to label8 .LBB2_6: # %for.end.i # in Loop: Header=BB2_4 Depth=2 end_loop # label9: end_block # label7: - i32.load $push35=, j($4) + i32.load $push35=, j($5) i32.load $push36=, 0($pop35) - i32.store $discard=, 0($6), $pop36 - i32.load $push39=, i($4) - i32.load $push37=, j($4) + i32.store $discard=, 0($7), $pop36 + i32.load $push39=, i($5) + i32.load $push37=, j($5) i32.load $push38=, 0($pop37) i32.store $discard=, 0($pop39), $pop38 - i32.load $push42=, i($4) - i32.load $push40=, j($4) + i32.load $push42=, i($5) + i32.load $push40=, j($5) i32.load $push41=, 0($pop40) i32.store $discard=, 0($pop42), $pop41 - i32.load $push45=, i($4) - i32.load $push43=, j($4) + i32.load $push45=, i($5) + i32.load $push43=, j($5) i32.load $push44=, 0($pop43) i32.store $discard=, 0($pop45), $pop44 - i32.load $push48=, i($4) - i32.load $push46=, j($4) + i32.load $push48=, i($5) + i32.load $push46=, j($5) i32.load $push47=, 0($pop46) i32.store $discard=, 0($pop48), $pop47 - i32.load $push51=, i($4) - i32.load $push49=, j($4) + i32.load $push51=, i($5) + i32.load $push49=, j($5) i32.load $push50=, 0($pop49) i32.store $discard=, 0($pop51), $pop50 - i32.load $5=, i($4) - i32.load $push52=, h($4) - i32.add $push53=, $pop52, $0 - i32.store $discard=, h($4), $pop53 - i32.store $push54=, 0($5), $4 - tee_local $push123=, $4=, $pop54 - i32.load $push55=, e($pop123) - i32.store $push56=, 0($pop55), $4 - tee_local $push122=, $4=, $pop56 - i32.store $push57=, o($pop122), $4 - i32.load $push58=, p($pop57) - i32.const $push161=, 0 - i32.eq $push162=, $pop58, $pop161 - br_if $pop162, 0 # 0: up to label5 + i32.load $6=, h($5) + i32.load $push53=, i($5) + i32.store $push54=, 0($pop53), $5 + tee_local $push122=, $7=, $pop54 + i32.load $2=, e($pop122) + i32.add $push52=, $6, $0 + i32.store $discard=, h($5), $pop52 + i32.store $push55=, 0($2), $7 + tee_local $push121=, $5=, $pop55 + i32.store $push56=, o($pop121), $5 + i32.load $push57=, p($pop56) + i32.const $push160=, 0 + i32.eq $push161=, $pop57, $pop160 + br_if $pop161, 0 # 0: up to label5 .LBB2_7: # %foo.exit.thread # in Loop: Header=BB2_1 Depth=1 end_loop # label6: end_block # label4: - i32.store $push59=, f($3), $3 - i32.load $4=, n($pop59) + i32.store $push58=, f($4), $4 + i32.load $5=, n($pop58) .LBB2_8: # %for.inc7 # in Loop: Header=BB2_1 Depth=1 end_block # label2: - i32.const $push127=, -1 - i32.add $push2=, $4, $pop127 - i32.store $4=, n($2), $pop2 - br_if $4, 0 # 0: up to label0 + i32.const $push126=, -1 + i32.add $push2=, $5, $pop126 + i32.store $5=, n($3), $pop2 + br_if $5, 0 # 0: up to label0 # BB#9: # %for.end8 end_loop # label1: block - i32.const $push60=, 0 - i32.const $push130=, 0 - i32.store8 $push61=, u($pop60), $pop130 - tee_local $push129=, $3=, $pop61 - i32.load $push111=, b($pop129) - tee_local $push128=, $5=, $pop111 - i32.const $push163=, 0 - i32.eq $push164=, $pop128, $pop163 - br_if $pop164, 0 # 0: down to label10 + i32.const $push59=, 0 + i32.const $push129=, 0 + i32.store8 $push60=, u($pop59), $pop129 + tee_local $push128=, $4=, $pop60 + i32.load $push110=, b($pop128) + tee_local $push127=, $6=, $pop110 + i32.const $push162=, 0 + i32.eq $push163=, $pop127, $pop162 + br_if $pop163, 0 # 0: down to label10 # BB#10: # %for.cond12.preheader.lr.ph - i32.load $0=, c($3) + i32.load $0=, c($4) .LBB2_11: # %for.cond12.preheader # =>This Loop Header: Depth=1 # Child Loop BB2_12 Depth 2 loop # label11: - i32.const $4=, 10 + i32.const $5=, 10 .LBB2_12: # %for.body15 # Parent Loop BB2_11 Depth=1 # => This Inner Loop Header: Depth=2 loop # label13: - i32.const $push139=, 2 - i32.shl $push62=, $0, $pop139 - i32.load $push63=, a($pop62) i32.const $push138=, 2 - i32.shl $push64=, $pop63, $pop138 - i32.load $push65=, a($pop64) + i32.shl $push61=, $0, $pop138 + i32.load $push62=, a($pop61) i32.const $push137=, 2 - i32.shl $push66=, $pop65, $pop137 - i32.load $push67=, a($pop66) + i32.shl $push63=, $pop62, $pop137 + i32.load $push64=, a($pop63) i32.const $push136=, 2 - i32.shl $push68=, $pop67, $pop136 - i32.load $push69=, a($pop68) + i32.shl $push65=, $pop64, $pop136 + i32.load $push66=, a($pop65) i32.const $push135=, 2 - i32.shl $push70=, $pop69, $pop135 - i32.load $push71=, a($pop70) + i32.shl $push67=, $pop66, $pop135 + i32.load $push68=, a($pop67) i32.const $push134=, 2 - i32.shl $push72=, $pop71, $pop134 - i32.load $push73=, a($pop72) + i32.shl $push69=, $pop68, $pop134 + i32.load $push70=, a($pop69) i32.const $push133=, 2 - i32.shl $push74=, $pop73, $pop133 - i32.load $push75=, a($pop74) + i32.shl $push71=, $pop70, $pop133 + i32.load $push72=, a($pop71) i32.const $push132=, 2 - i32.shl $push76=, $pop75, $pop132 - i32.load $0=, a($pop76) - i32.const $push131=, -1 - i32.add $4=, $4, $pop131 - br_if $4, 0 # 0: up to label13 + i32.shl $push73=, $pop72, $pop132 + i32.load $push74=, a($pop73) + i32.const $push131=, 2 + i32.shl $push75=, $pop74, $pop131 + i32.load $0=, a($pop75) + i32.const $push130=, -1 + i32.add $5=, $5, $pop130 + br_if $5, 0 # 0: up to label13 # BB#13: # %for.inc27 # in Loop: Header=BB2_11 Depth=1 end_loop # label14: - i32.const $push140=, 1 - i32.add $5=, $5, $pop140 - br_if $5, 0 # 0: up to label11 + i32.const $push139=, 1 + i32.add $6=, $6, $pop139 + br_if $6, 0 # 0: up to label11 # BB#14: # %for.cond9.for.end29_crit_edge end_loop # label12: - i32.const $push77=, 0 - i32.store $discard=, c($pop77), $0 - i32.const $push142=, 0 + i32.const $push76=, 0 + i32.store $discard=, c($pop76), $0 i32.const $push141=, 0 - i32.store $discard=, b($pop142), $pop141 + i32.const $push140=, 0 + i32.store $discard=, b($pop141), $pop140 .LBB2_15: # %for.end29 end_block # label10: call baz@FUNCTION block - i32.load8_s $push78=, u($3) - i32.const $push79=, 2 - i32.shl $push80=, $pop78, $pop79 - i32.load $push81=, a($pop80) - i32.const $push156=, 2 - i32.shl $push82=, $pop81, $pop156 - i32.load $push83=, a($pop82) + i32.load8_s $push77=, u($4) + i32.const $push78=, 2 + i32.shl $push79=, $pop77, $pop78 + i32.load $push80=, a($pop79) i32.const $push155=, 2 - i32.shl $push84=, $pop83, $pop155 - i32.load $push85=, a($pop84) + i32.shl $push81=, $pop80, $pop155 + i32.load $push82=, a($pop81) i32.const $push154=, 2 - i32.shl $push86=, $pop85, $pop154 - i32.load $push87=, a($pop86) + i32.shl $push83=, $pop82, $pop154 + i32.load $push84=, a($pop83) i32.const $push153=, 2 - i32.shl $push88=, $pop87, $pop153 - i32.load $push89=, a($pop88) + i32.shl $push85=, $pop84, $pop153 + i32.load $push86=, a($pop85) i32.const $push152=, 2 - i32.shl $push90=, $pop89, $pop152 - i32.load $push91=, a($pop90) + i32.shl $push87=, $pop86, $pop152 + i32.load $push88=, a($pop87) i32.const $push151=, 2 - i32.shl $push92=, $pop91, $pop151 - i32.load $push93=, a($pop92) + i32.shl $push89=, $pop88, $pop151 + i32.load $push90=, a($pop89) i32.const $push150=, 2 - i32.shl $push94=, $pop93, $pop150 - i32.load $push95=, a($pop94) + i32.shl $push91=, $pop90, $pop150 + i32.load $push92=, a($pop91) i32.const $push149=, 2 - i32.shl $push96=, $pop95, $pop149 - i32.load $push97=, a($pop96) + i32.shl $push93=, $pop92, $pop149 + i32.load $push94=, a($pop93) i32.const $push148=, 2 - i32.shl $push98=, $pop97, $pop148 - i32.load $push99=, a($pop98) + i32.shl $push95=, $pop94, $pop148 + i32.load $push96=, a($pop95) i32.const $push147=, 2 - i32.shl $push100=, $pop99, $pop147 - i32.load $push101=, a($pop100) + i32.shl $push97=, $pop96, $pop147 + i32.load $push98=, a($pop97) i32.const $push146=, 2 - i32.shl $push102=, $pop101, $pop146 - i32.load $push103=, a($pop102) + i32.shl $push99=, $pop98, $pop146 + i32.load $push100=, a($pop99) i32.const $push145=, 2 - i32.shl $push104=, $pop103, $pop145 - i32.load $push105=, a($pop104) + i32.shl $push101=, $pop100, $pop145 + i32.load $push102=, a($pop101) i32.const $push144=, 2 - i32.shl $push106=, $pop105, $pop144 - i32.load $push107=, a($pop106) + i32.shl $push103=, $pop102, $pop144 + i32.load $push104=, a($pop103) i32.const $push143=, 2 - i32.shl $push108=, $pop107, $pop143 - i32.load $push109=, a($pop108) - i32.const $push165=, 0 - i32.eq $push166=, $pop109, $pop165 - br_if $pop166, 0 # 0: down to label15 + i32.shl $push105=, $pop104, $pop143 + i32.load $push106=, a($pop105) + i32.const $push142=, 2 + i32.shl $push107=, $pop106, $pop142 + i32.load $push108=, a($pop107) + i32.const $push164=, 0 + i32.eq $push165=, $pop108, $pop164 + br_if $pop165, 0 # 0: down to label15 # BB#16: # %if.end47 - i32.const $push110=, 0 - i32.const $9=, 32 - i32.add $10=, $10, $9 - i32.const $9=, __stack_pointer - i32.store $10=, 0($9), $10 - return $pop110 + i32.const $push109=, 0 + i32.const $10=, 32 + i32.add $11=, $11, $10 + i32.const $10=, __stack_pointer + i32.store $11=, 0($10), $11 + return $pop109 .LBB2_17: # %if.then46 end_block # label15: call abort@FUNCTION diff --git a/test/torture-s/pr58419.c.s b/test/torture-s/pr58419.c.s index 6c0a28d23..6975f0a60 100644 --- a/test/torture-s/pr58419.c.s +++ b/test/torture-s/pr58419.c.s @@ -27,13 +27,13 @@ bar: # @bar .local i32 # BB#0: # %entry i32.const $push1=, 0 - i32.load $0=, p($pop1) + i32.load $push2=, p($pop1) i32.const $push4=, 0 - i32.const $push0=, 1 - i32.store16 $discard=, c($pop4), $pop0 + i32.store $0=, 0($pop2), $pop4 i32.const $push3=, 0 - i32.store $push2=, 0($0), $pop3 - return $pop2 + i32.const $push0=, 1 + i32.store16 $discard=, c($pop3), $pop0 + return $0 .endfunc .Lfunc_end1: .size bar, .Lfunc_end1-bar |