summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/revision2
-rw-r--r--test/s2wasm_known_binaryen_shell_test_failures.txt23
-rw-r--r--test/torture-s/20000519-1.c.s57
-rw-r--r--test/torture-s/20020406-1.c.s226
-rw-r--r--test/torture-s/20021120-3.c.s60
-rw-r--r--test/torture-s/20030914-2.c.s45
-rw-r--r--test/torture-s/20041113-1.c.s59
-rw-r--r--test/torture-s/20041214-1.c.s79
-rw-r--r--test/torture-s/20070201-1.c.s74
-rw-r--r--test/torture-s/20071213-1.c.s102
-rw-r--r--test/torture-s/20121108-1.c.s78
-rw-r--r--test/torture-s/920501-8.c.s405
-rw-r--r--test/torture-s/920501-9.c.s264
-rw-r--r--test/torture-s/920726-1.c.s274
-rw-r--r--test/torture-s/930513-1.c.s54
-rw-r--r--test/torture-s/941014-2.c.s116
-rw-r--r--test/torture-s/980205.c.s33
-rw-r--r--test/torture-s/980605-1.c.s38
-rw-r--r--test/torture-s/980608-1.c.s51
-rw-r--r--test/torture-s/980716-1.c.s85
-rw-r--r--test/torture-s/fprintf-1.c.s410
-rw-r--r--test/torture-s/fprintf-chk-1.c.s871
-rw-r--r--test/torture-s/gofast.c.s36
-rw-r--r--test/torture-s/loop-2f.c.s11
-rw-r--r--test/torture-s/loop-2g.c.s11
-rw-r--r--test/torture-s/multi-ix.c.s2005
-rw-r--r--test/torture-s/pr41239.c.s69
-rw-r--r--test/torture-s/pr44942.c.s154
-rw-r--r--test/torture-s/pr56205.c.s222
-rw-r--r--test/torture-s/printf-1.c.s368
-rw-r--r--test/torture-s/printf-chk-1.c.s785
-rw-r--r--test/torture-s/stdarg-1.c.s679
-rw-r--r--test/torture-s/stdarg-2.c.s539
-rw-r--r--test/torture-s/stdarg-4.c.s561
-rw-r--r--test/torture-s/struct-ret-1.c.s378
-rw-r--r--test/torture-s/va-arg-1.c.s41
-rw-r--r--test/torture-s/va-arg-11.c.s55
-rw-r--r--test/torture-s/va-arg-12.c.s55
-rw-r--r--test/torture-s/va-arg-13.c.s90
-rw-r--r--test/torture-s/va-arg-14.c.s249
-rw-r--r--test/torture-s/va-arg-15.c.s169
-rw-r--r--test/torture-s/va-arg-16.c.s107
-rw-r--r--test/torture-s/va-arg-17.c.s99
-rw-r--r--test/torture-s/va-arg-18.c.s49
-rw-r--r--test/torture-s/va-arg-19.c.s67
-rw-r--r--test/torture-s/va-arg-2.c.s954
-rw-r--r--test/torture-s/va-arg-20.c.s33
-rw-r--r--test/torture-s/va-arg-21.c.s38
-rw-r--r--test/torture-s/va-arg-23.c.s49
-rw-r--r--test/torture-s/va-arg-24.c.s2562
-rw-r--r--test/torture-s/va-arg-26.c.s47
-rw-r--r--test/torture-s/va-arg-4.c.s111
-rw-r--r--test/torture-s/va-arg-5.c.s198
-rw-r--r--test/torture-s/va-arg-6.c.s153
-rw-r--r--test/torture-s/va-arg-7.c.s45
-rw-r--r--test/torture-s/va-arg-8.c.s43
-rw-r--r--test/torture-s/va-arg-9.c.s954
-rw-r--r--test/torture-s/va-arg-trap-1.c.s27
-rw-r--r--test/torture-s/vfprintf-1.c.s229
-rw-r--r--test/torture-s/vfprintf-chk-1.c.s229
-rw-r--r--test/torture-s/vprintf-1.c.s229
-rw-r--r--test/torture-s/vprintf-chk-1.c.s229
62 files changed, 7186 insertions, 9149 deletions
diff --git a/test/revision b/test/revision
index 44ba45cfd..830a20363 100644
--- a/test/revision
+++ b/test/revision
@@ -1 +1 @@
-2907
+3002
diff --git a/test/s2wasm_known_binaryen_shell_test_failures.txt b/test/s2wasm_known_binaryen_shell_test_failures.txt
index 6ed051690..9d1820ea2 100644
--- a/test/s2wasm_known_binaryen_shell_test_failures.txt
+++ b/test/s2wasm_known_binaryen_shell_test_failures.txt
@@ -2,7 +2,6 @@
pr27260.c.s.wast
# [trap final > memory]
-20000519-1.c.s.wast
20000801-1.c.s.wast
20010915-1.c.s.wast
20020413-1.c.s.wast
@@ -11,7 +10,6 @@ pr27260.c.s.wast
20030916-1.c.s.wast
20031012-1.c.s.wast
20040709-1.c.s.wast
-20041113-1.c.s.wast
20041214-1.c.s.wast
20050502-1.c.s.wast
20050502-2.c.s.wast
@@ -19,7 +17,6 @@ pr27260.c.s.wast
20070517-1.c.s.wast
20071029-1.c.s.wast
20071030-1.c.s.wast
-20071213-1.c.s.wast
20080502-1.c.s.wast
20080506-2.c.s.wast
20100708-1.c.s.wast
@@ -29,9 +26,7 @@ pr27260.c.s.wast
920726-1.c.s.wast
930513-1.c.s.wast
960327-1.c.s.wast
-980205.c.s.wast
980605-1.c.s.wast
-980608-1.c.s.wast
990513-1.c.s.wast
991201-1.c.s.wast
bitfld-5.c.s.wast
@@ -57,30 +52,12 @@ pr57130.c.s.wast
pr60960.c.s.wast
stdarg-1.c.s.wast
stdarg-2.c.s.wast
-stdarg-4.c.s.wast
string-opt-17.c.s.wast
string-opt-18.c.s.wast
struct-ret-1.c.s.wast
-va-arg-1.c.s.wast
-va-arg-11.c.s.wast
-va-arg-12.c.s.wast
-va-arg-13.c.s.wast
-va-arg-14.c.s.wast
-va-arg-15.c.s.wast
-va-arg-16.c.s.wast
-va-arg-17.c.s.wast
-va-arg-18.c.s.wast
-va-arg-19.c.s.wast
va-arg-2.c.s.wast
-va-arg-20.c.s.wast
-va-arg-23.c.s.wast
-va-arg-24.c.s.wast
-va-arg-26.c.s.wast
-va-arg-4.c.s.wast
va-arg-5.c.s.wast
va-arg-6.c.s.wast
-va-arg-7.c.s.wast
-va-arg-8.c.s.wast
va-arg-9.c.s.wast
# [trap offset > memory]
diff --git a/test/torture-s/20000519-1.c.s b/test/torture-s/20000519-1.c.s
index 6b13b198d..829e88816 100644
--- a/test/torture-s/20000519-1.c.s
+++ b/test/torture-s/20000519-1.c.s
@@ -50,18 +50,17 @@ bar: # @bar
.globl foo
.type foo,@function
foo: # @foo
- .param i32
+ .param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push1=, 8($5), $6
+ i32.store $push1=, 8($5), $1
i32.store $discard=, 12($5), $pop1
.LBB1_1: # %do.body.i
# =>This Inner Loop Header: Depth=1
@@ -84,7 +83,7 @@ foo: # @foo
end_loop # label3:
i32.add $push7=, $1, $0
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return $pop7
@@ -98,41 +97,29 @@ foo: # @foo
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $8=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $8=, 0($6), $8
+ i32.const $0=, __stack_pointer
+ i32.load $0=, 0($0)
+ i32.const $1=, 16
+ i32.sub $3=, $0, $1
i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 8
- i32.sub $8=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $8=, 0($2), $8
+ i32.store $3=, 0($1), $3
i64.const $push0=, 12884901890
- i64.store $discard=, 0($8):p2align=2, $pop0
- i32.const $push1=, 1
- i32.call $0=, foo@FUNCTION, $pop1
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 8
- i32.add $8=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $8=, 0($4), $8
+ i64.store $discard=, 0($3):p2align=4, $pop0
block
- i32.const $push2=, 3
- i32.ne $push3=, $0, $pop2
- br_if 0, $pop3 # 0: down to label4
+ i32.const $push1=, 1
+ i32.call $push2=, foo@FUNCTION, $pop1, $3
+ i32.const $push3=, 3
+ i32.ne $push4=, $pop2, $pop3
+ br_if 0, $pop4 # 0: down to label4
# BB#1: # %if.end
- i32.const $push4=, 0
- i32.const $7=, 16
- i32.add $8=, $8, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
- return $pop4
+ i32.const $push5=, 0
+ i32.const $2=, 16
+ i32.add $3=, $3, $2
+ i32.const $2=, __stack_pointer
+ i32.store $3=, 0($2), $3
+ return $pop5
.LBB2_2: # %if.then
end_block # label4:
call abort@FUNCTION
diff --git a/test/torture-s/20020406-1.c.s b/test/torture-s/20020406-1.c.s
index f1fbde5a9..c65b9947d 100644
--- a/test/torture-s/20020406-1.c.s
+++ b/test/torture-s/20020406-1.c.s
@@ -118,95 +118,84 @@ DUPFFshift_add: # @DUPFFshift_add
DUPFFexgcd: # @DUPFFexgcd
.param i32, i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 16
- i32.sub $15=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $15=, 0($13), $15
- i32.load $7=, 4($2)
- i32.load $6=, 4($3)
+ i32.const $9=, __stack_pointer
+ i32.load $9=, 0($9)
+ i32.const $10=, 16
+ i32.sub $12=, $9, $10
+ i32.const $10=, __stack_pointer
+ i32.store $12=, 0($10), $12
+ i32.load $8=, 4($2)
+ i32.load $7=, 4($3)
+ i32.const $push2=, 4
+ i32.or $6=, $12, $pop2
.LBB7_1: # %tailrecurse
# =>This Inner Loop Header: Depth=1
loop # label1:
+ i32.store $discard=, 0($6), $7
+ i32.store $discard=, 0($12):p2align=4, $8
copy_local $5=, $3
copy_local $3=, $2
copy_local $4=, $1
copy_local $1=, $0
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 8
- i32.sub $15=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $15=, 0($9), $15
- i32.store $discard=, 0($15), $7
- i32.const $push20=, 4
- i32.add $7=, $15, $pop20
- i32.store $discard=, 0($7), $6
- 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
- i32.add $15=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $15=, 0($11), $15
- i32.load $6=, 4($3)
- i32.load $7=, 4($5)
+ i32.const $push22=, .L.str
+ i32.call $discard=, printf@FUNCTION, $pop22, $12
+ i32.load $7=, 4($3)
+ i32.load $8=, 4($5)
copy_local $0=, $4
copy_local $2=, $5
- i32.lt_s $push1=, $6, $7
- br_if 0, $pop1 # 0: up to label1
+ i32.lt_s $push3=, $7, $8
+ br_if 0, $pop3 # 0: up to label1
# BB#2: # %if.end
end_loop # label2:
block
- i32.const $push2=, 2
- i32.ne $push3=, $6, $pop2
- br_if 0, $pop3 # 0: down to label3
-# BB#3: # %if.end
- i32.const $push4=, 1
+ i32.const $push4=, 2
i32.ne $push5=, $7, $pop4
br_if 0, $pop5 # 0: down to label3
+# BB#3: # %if.end
+ i32.const $push6=, 1
+ i32.ne $push7=, $8, $pop6
+ br_if 0, $pop7 # 0: down to label3
# BB#4: # %if.end11
block
- i32.load $push6=, 8($3)
- i32.load $push7=, 0($pop6)
- i32.const $push26=, 0
- i32.eq $push27=, $pop7, $pop26
- br_if 0, $pop27 # 0: down to label4
+ i32.load $push8=, 8($3)
+ i32.load $push9=, 0($pop8)
+ i32.const $push29=, 0
+ i32.eq $push30=, $pop9, $pop29
+ br_if 0, $pop30 # 0: down to label4
# BB#5: # %DUPFFnew.exit167
- i32.const $push8=, 12
- i32.call $7=, malloc@FUNCTION, $pop8
- i32.const $push9=, 2
+ i32.const $push10=, 12
+ i32.call $push0=, malloc@FUNCTION, $pop10
+ tee_local $push27=, $8=, $pop0
+ i32.const $push11=, 2
+ i32.const $push26=, 4
+ i32.call $push12=, calloc@FUNCTION, $pop11, $pop26
+ i32.store $push13=, 8($pop27), $pop12
+ i32.const $push14=, 1
+ i32.store $push15=, 0($8), $pop14
+ i32.store $2=, 0($pop13), $pop15
+ i32.const $push16=, 0
+ i32.store $discard=, 4($8), $pop16
+ i32.const $push25=, 12
+ i32.call $7=, malloc@FUNCTION, $pop25
+ i32.const $push17=, 3
i32.const $push24=, 4
- 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
+ i32.call $0=, calloc@FUNCTION, $pop17, $pop24
+ i64.const $push18=, -4294967294
+ i64.store $discard=, 0($7):p2align=2, $pop18
+ i32.const $push23=, 4
+ i32.add $push19=, $5, $pop23
+ i32.load $5=, 0($pop19)
+ i32.store $discard=, 8($7), $0
block
- i32.lt_s $push17=, $5, $2
- br_if 0, $pop17 # 0: down to label5
+ i32.lt_s $push20=, $5, $2
+ br_if 0, $pop20 # 0: down to label5
# BB#6: # %while.cond40.preheader.lr.ph
- i32.const $push25=, 4
- i32.add $push18=, $3, $pop25
- i32.load $push0=, 0($pop18)
- i32.lt_s $3=, $pop0, $5
+ i32.const $push28=, 4
+ i32.add $push21=, $3, $pop28
+ i32.load $push1=, 0($pop21)
+ i32.lt_s $3=, $pop1, $5
.LBB7_7: # %while.cond40.preheader
# =>This Inner Loop Header: Depth=1
loop # label6:
@@ -219,14 +208,14 @@ DUPFFexgcd: # @DUPFFexgcd
.LBB7_9: # %if.end57
end_loop # label9:
end_block # label5:
- i32.store $discard=, 0($1), $7
- i32.store $discard=, 0($4), $6
+ i32.store $discard=, 0($1), $8
+ i32.store $discard=, 0($4), $7
.LBB7_10: # %cleanup
end_block # label4:
- i32.const $14=, 16
- i32.add $15=, $15, $14
- i32.const $14=, __stack_pointer
- i32.store $15=, 0($14), $15
+ i32.const $11=, 16
+ i32.add $12=, $12, $11
+ i32.const $11=, __stack_pointer
+ i32.store $12=, 0($11), $12
return $3
.LBB7_11: # %if.then10
end_block # label3:
@@ -242,61 +231,52 @@ DUPFFexgcd: # @DUPFFexgcd
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $13=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $13=, 0($9), $13
+ i32.const $3=, __stack_pointer
+ i32.load $3=, 0($3)
+ i32.const $4=, 16
+ i32.sub $8=, $3, $4
+ i32.const $4=, __stack_pointer
+ i32.store $8=, 0($4), $8
i32.const $push0=, 12
i32.call $0=, malloc@FUNCTION, $pop0
i32.const $push2=, 2
i32.const $push1=, 4
- i32.call $2=, calloc@FUNCTION, $pop2, $pop1
- i32.store $push3=, 8($0), $2
- i32.const $push4=, 1
- i32.store $push5=, 0($0), $pop4
- i32.store $push6=, 4($pop3), $pop5
- i32.store $1=, 4($0), $pop6
- i32.const $push15=, 12
- i32.call $2=, malloc@FUNCTION, $pop15
- i32.const $push7=, 3
- i32.const $push14=, 4
- i32.call $3=, calloc@FUNCTION, $pop7, $pop14
- i32.store $push8=, 8($2), $3
- i32.store $discard=, 8($pop8), $1
- i32.const $push13=, 2
- i32.store $push9=, 0($2), $pop13
- i32.store $discard=, 4($2), $pop9
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.sub $13=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $13=, 0($5), $13
- i64.const $push10=, 8589934593
- i64.store $discard=, 0($13):p2align=2, $pop10
- i32.const $push11=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop11
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
+ i32.call $push3=, calloc@FUNCTION, $pop2, $pop1
+ i32.store $push4=, 8($0), $pop3
+ i32.const $push5=, 1
+ i32.store $push6=, 0($0), $pop5
+ i32.store $push7=, 4($pop4), $pop6
+ i32.store $1=, 4($0), $pop7
+ i32.const $push21=, 12
+ i32.call $push8=, malloc@FUNCTION, $pop21
+ tee_local $push20=, $2=, $pop8
+ i32.const $push9=, 3
+ i32.const $push19=, 4
+ i32.call $push10=, calloc@FUNCTION, $pop9, $pop19
+ i32.store $push11=, 8($pop20), $pop10
+ i32.store $discard=, 8($pop11), $1
+ i32.const $push18=, 4
+ i32.or $push14=, $8, $pop18
+ i32.const $push17=, 2
+ i32.store $push12=, 0($2), $pop17
+ i32.store $push13=, 4($2), $pop12
+ i32.store $discard=, 0($pop14), $pop13
+ i32.store $discard=, 0($8):p2align=4, $1
+ i32.const $push15=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop15, $8
+ i32.const $6=, 12
+ i32.add $6=, $8, $6
i32.const $7=, 8
- i32.add $13=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $13=, 0($7), $13
- i32.const $11=, 12
- i32.add $11=, $13, $11
- i32.const $12=, 8
- i32.add $12=, $13, $12
- i32.call $discard=, DUPFFexgcd@FUNCTION, $11, $12, $0, $2
- i32.const $push12=, 0
- i32.const $10=, 16
- i32.add $13=, $13, $10
- i32.const $10=, __stack_pointer
- i32.store $13=, 0($10), $13
- return $pop12
+ i32.add $7=, $8, $7
+ i32.call $discard=, DUPFFexgcd@FUNCTION, $6, $7, $0, $2
+ i32.const $push16=, 0
+ i32.const $5=, 16
+ i32.add $8=, $8, $5
+ i32.const $5=, __stack_pointer
+ i32.store $8=, 0($5), $8
+ return $pop16
.endfunc
.Lfunc_end8:
.size main, .Lfunc_end8-main
diff --git a/test/torture-s/20021120-3.c.s b/test/torture-s/20021120-3.c.s
index e08c0cb9f..32825c230 100644
--- a/test/torture-s/20021120-3.c.s
+++ b/test/torture-s/20021120-3.c.s
@@ -7,39 +7,27 @@
foo: # @foo
.param i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 16
- i32.sub $10=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $10=, 0($8), $10
i32.const $3=, __stack_pointer
i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.sub $10=, $3, $4
+ i32.const $4=, 16
+ i32.sub $6=, $3, $4
i32.const $4=, __stack_pointer
- i32.store $10=, 0($4), $10
+ i32.store $6=, 0($4), $6
i32.div_u $push0=, $1, $2
- i32.store $discard=, 0($10), $pop0
+ i32.store $discard=, 0($6):p2align=4, $pop0
i32.const $push1=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $0, $pop1
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.add $10=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $10=, 0($6), $10
+ i32.call $discard=, sprintf@FUNCTION, $0, $pop1, $6
i32.const $push2=, 1
i32.add $push3=, $1, $pop2
i32.const $push6=, 1
i32.add $push4=, $2, $pop6
i32.div_u $push5=, $pop3, $pop4
- i32.const $9=, 16
- i32.add $10=, $10, $9
- i32.const $9=, __stack_pointer
- i32.store $10=, 0($9), $10
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return $pop5
.endfunc
.Lfunc_end0:
@@ -51,32 +39,20 @@ foo: # @foo
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %if.end
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 32
- i32.sub $7=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $7=, 0($5), $7
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 4
- i32.sub $7=, $0, $1
+ i32.const $1=, 32
+ i32.sub $3=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $7=, 0($1), $7
+ i32.store $3=, 0($1), $3
i32.const $push0=, 1073741823
- i32.store $discard=, 0($7), $pop0
+ i32.store $discard=, 0($3):p2align=4, $pop0
i32.const $push1=, .L.str
- i32.const $6=, 16
- i32.add $6=, $7, $6
- i32.call $discard=, sprintf@FUNCTION, $6, $pop1
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.add $7=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $7=, 0($3), $7
+ i32.const $2=, 16
+ i32.add $2=, $3, $2
+ i32.call $discard=, sprintf@FUNCTION, $2, $pop1, $3
i32.const $push2=, 0
call exit@FUNCTION, $pop2
unreachable
diff --git a/test/torture-s/20030914-2.c.s b/test/torture-s/20030914-2.c.s
index 07e26717c..738704b86 100644
--- a/test/torture-s/20030914-2.c.s
+++ b/test/torture-s/20030914-2.c.s
@@ -5,7 +5,7 @@
.globl f
.type f,@function
f: # @f
- .param i32, i32
+ .param i32, i32, i32
.result i32
# BB#0: # %entry
return $1
@@ -31,72 +31,73 @@ main: # @main
i32.const $2=, 8
i32.add $2=, $11, $2
i32.add $push2=, $2, $pop1
- i32.const $push37=, 0
- i64.load $push0=, gs+64($pop37):p2align=2
+ i32.const $push38=, 0
+ i64.load $push0=, gs+64($pop38):p2align=2
i64.store $discard=, 0($pop2):p2align=2, $pop0
i32.const $push4=, 56
i32.const $3=, 8
i32.add $3=, $11, $3
i32.add $push5=, $3, $pop4
- i32.const $push36=, 0
- i64.load $push3=, gs+56($pop36):p2align=2
+ i32.const $push37=, 0
+ i64.load $push3=, gs+56($pop37):p2align=2
i64.store $discard=, 0($pop5):p2align=2, $pop3
i32.const $push7=, 48
i32.const $4=, 8
i32.add $4=, $11, $4
i32.add $push8=, $4, $pop7
- i32.const $push35=, 0
- i64.load $push6=, gs+48($pop35):p2align=2
+ i32.const $push36=, 0
+ i64.load $push6=, gs+48($pop36):p2align=2
i64.store $discard=, 0($pop8):p2align=2, $pop6
i32.const $push10=, 40
i32.const $5=, 8
i32.add $5=, $11, $5
i32.add $push11=, $5, $pop10
- i32.const $push34=, 0
- i64.load $push9=, gs+40($pop34):p2align=2
+ i32.const $push35=, 0
+ i64.load $push9=, gs+40($pop35):p2align=2
i64.store $discard=, 0($pop11):p2align=2, $pop9
i32.const $push13=, 32
i32.const $6=, 8
i32.add $6=, $11, $6
i32.add $push14=, $6, $pop13
- i32.const $push33=, 0
- i64.load $push12=, gs+32($pop33):p2align=2
+ i32.const $push34=, 0
+ i64.load $push12=, gs+32($pop34):p2align=2
i64.store $discard=, 0($pop14):p2align=2, $pop12
i32.const $push16=, 24
i32.const $7=, 8
i32.add $7=, $11, $7
i32.add $push17=, $7, $pop16
- i32.const $push32=, 0
- i64.load $push15=, gs+24($pop32):p2align=2
+ i32.const $push33=, 0
+ i64.load $push15=, gs+24($pop33):p2align=2
i64.store $discard=, 0($pop17):p2align=2, $pop15
i32.const $push19=, 16
i32.const $8=, 8
i32.add $8=, $11, $8
i32.add $push20=, $8, $pop19
- i32.const $push31=, 0
- i64.load $push18=, gs+16($pop31):p2align=2
+ i32.const $push32=, 0
+ i64.load $push18=, gs+16($pop32):p2align=2
i64.store $discard=, 0($pop20):p2align=2, $pop18
i32.const $push22=, 8
i32.const $9=, 8
i32.add $9=, $11, $9
i32.add $push23=, $9, $pop22
- i32.const $push30=, 0
- i64.load $push21=, gs+8($pop30):p2align=2
+ i32.const $push31=, 0
+ i64.load $push21=, gs+8($pop31):p2align=2
i64.store $discard=, 0($pop23):p2align=2, $pop21
- i32.const $push29=, 0
- i64.load $push24=, gs($pop29):p2align=2
+ i32.const $push30=, 0
+ i64.load $push24=, gs($pop30):p2align=2
i64.store $discard=, 8($11):p2align=2, $pop24
i32.const $push25=, 4660
+ i32.const $push29=, 0
i32.const $10=, 8
i32.add $10=, $11, $10
block
- i32.call $push26=, f@FUNCTION, $10, $pop25
+ i32.call $push26=, f@FUNCTION, $10, $pop25, $pop29
i32.const $push28=, 4660
i32.ne $push27=, $pop26, $pop28
br_if 0, $pop27 # 0: down to label0
# BB#1: # %if.end
- i32.const $push38=, 0
- call exit@FUNCTION, $pop38
+ i32.const $push39=, 0
+ call exit@FUNCTION, $pop39
unreachable
.LBB1_2: # %if.then
end_block # label0:
diff --git a/test/torture-s/20041113-1.c.s b/test/torture-s/20041113-1.c.s
index f38ccaf23..623790a57 100644
--- a/test/torture-s/20041113-1.c.s
+++ b/test/torture-s/20041113-1.c.s
@@ -5,17 +5,16 @@
.globl test
.type test,@function
test: # @test
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push29=, 3
i32.add $push1=, $pop0, $pop29
i32.const $push28=, -4
@@ -76,7 +75,7 @@ test: # @test
br_if 0, $pop25 # 0: down to label3
# BB#4: # %if.end10
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -107,43 +106,31 @@ test: # @test
main: # @main
.param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $10=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $10=, 0($9), $10
+ i32.const $3=, __stack_pointer
+ i32.load $3=, 0($3)
+ i32.const $4=, 16
+ i32.sub $5=, $3, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
i32.const $push0=, 0
f64.load $push1=, a($pop0)
f64.const $push2=, 0x1.4p3
f64.div $push3=, $pop1, $pop2
i32.trunc_s/f64 $2=, $pop3
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $10=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $10=, 0($5), $10
- i64.const $push4=, 8589934593
- i64.store $discard=, 0($10):p2align=2, $pop4
- i32.const $push5=, 12
- i32.add $3=, $10, $pop5
- i32.store $discard=, 0($3), $2
- i32.const $push6=, 8
- i32.add $2=, $10, $pop6
- i32.const $push7=, 3
- i32.store $discard=, 0($2), $pop7
- call test@FUNCTION, $2
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.add $10=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $10=, 0($7), $10
- i32.const $push8=, 0
- call exit@FUNCTION, $pop8
+ i32.const $push4=, 8
+ i32.or $push5=, $5, $pop4
+ i32.const $push6=, 3
+ i32.store $discard=, 0($pop5):p2align=3, $pop6
+ i32.const $push7=, 12
+ i32.or $push8=, $5, $pop7
+ i32.store $discard=, 0($pop8), $2
+ i64.const $push9=, 8589934593
+ i64.store $discard=, 0($5):p2align=4, $pop9
+ call test@FUNCTION, $2, $5
+ i32.const $push10=, 0
+ call exit@FUNCTION, $pop10
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/20041214-1.c.s b/test/torture-s/20041214-1.c.s
index d277f5554..aecd87c61 100644
--- a/test/torture-s/20041214-1.c.s
+++ b/test/torture-s/20041214-1.c.s
@@ -60,22 +60,21 @@ g: # @g
.globl f
.type f,@function
f: # @f
- .param i32, i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
- i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
- i32.call $discard=, g@FUNCTION, $0, $1, $pop0
+ i32.load $3=, 0($3)
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.sub $6=, $3, $4
i32.const $4=, __stack_pointer
- i32.store $5=, 0($4), $5
+ i32.store $6=, 0($4), $6
+ i32.store $push0=, 12($6), $2
+ i32.call $discard=, g@FUNCTION, $0, $1, $pop0
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return
.endfunc
.Lfunc_end1:
@@ -87,47 +86,35 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 32
- i32.sub $11=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $11=, 0($7), $11
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.sub $11=, $2, $3
+ i32.const $3=, 32
+ i32.sub $7=, $2, $3
i32.const $3=, __stack_pointer
- i32.store $11=, 0($3), $11
- i32.const $push0=, .L.str.1
- i32.store $0=, 0($11), $pop0
- i32.const $push1=, 4
- i32.add $1=, $11, $pop1
+ i32.store $7=, 0($3), $7
+ i32.const $push0=, 4
+ i32.or $push1=, $7, $pop0
i32.const $push2=, 0
- i32.store $1=, 0($1), $pop2
- i32.const $push3=, .L.str
- i32.const $9=, 22
- i32.add $9=, $11, $9
- call f@FUNCTION, $9, $pop3
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.add $11=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $11=, 0($5), $11
- i32.const $10=, 22
- i32.add $10=, $11, $10
- i32.call $0=, strcmp@FUNCTION, $10, $0
+ i32.store $0=, 0($pop1), $pop2
+ i32.const $push3=, .L.str.1
+ i32.store $1=, 0($7):p2align=4, $pop3
+ i32.const $push4=, .L.str
+ i32.const $5=, 22
+ i32.add $5=, $7, $5
+ call f@FUNCTION, $5, $pop4, $7
+ i32.const $6=, 22
+ i32.add $6=, $7, $6
block
- br_if 0, $0 # 0: down to label3
+ i32.call $push5=, strcmp@FUNCTION, $6, $1
+ br_if 0, $pop5 # 0: down to label3
# BB#1: # %if.end
- i32.const $8=, 32
- i32.add $11=, $11, $8
- i32.const $8=, __stack_pointer
- i32.store $11=, 0($8), $11
- return $1
+ i32.const $4=, 32
+ i32.add $7=, $7, $4
+ i32.const $4=, __stack_pointer
+ i32.store $7=, 0($4), $7
+ return $0
.LBB2_2: # %if.then
end_block # label3:
call abort@FUNCTION
diff --git a/test/torture-s/20070201-1.c.s b/test/torture-s/20070201-1.c.s
index f2266d6e4..80fe8bcc8 100644
--- a/test/torture-s/20070201-1.c.s
+++ b/test/torture-s/20070201-1.c.s
@@ -7,35 +7,23 @@
foo: # @foo
.param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $9=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $9=, 0($7), $9
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.sub $9=, $2, $3
+ i32.const $3=, 16
+ i32.sub $5=, $2, $3
i32.const $3=, __stack_pointer
- i32.store $9=, 0($3), $9
- i32.store $discard=, 0($9), $1
+ i32.store $5=, 0($3), $5
+ i32.store $discard=, 0($5):p2align=4, $1
i32.const $push2=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $0, $pop2
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.add $9=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $9=, 0($5), $9
+ i32.call $discard=, sprintf@FUNCTION, $0, $pop2, $5
i32.const $push0=, 1
i32.add $push1=, $1, $pop0
- i32.const $8=, 16
- i32.add $9=, $9, $8
- i32.const $8=, __stack_pointer
- i32.store $9=, 0($8), $9
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return $pop1
.endfunc
.Lfunc_end0:
@@ -47,40 +35,28 @@ foo: # @foo
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %if.end
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $9=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $9=, 0($5), $9
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 4
- i32.sub $9=, $0, $1
+ i32.const $1=, 16
+ i32.sub $5=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $9=, 0($1), $9
+ i32.store $5=, 0($1), $5
i32.const $push0=, 2
- i32.const $7=, 10
- i32.add $7=, $9, $7
- i32.add $push1=, $7, $pop0
- i32.store $discard=, 0($9), $pop1
+ i32.const $3=, 10
+ i32.add $3=, $5, $3
+ i32.add $push1=, $3, $pop0
+ i32.store $discard=, 0($5):p2align=4, $pop1
i32.const $push2=, .L.str
- i32.const $8=, 10
- i32.add $8=, $9, $8
- i32.call $discard=, sprintf@FUNCTION, $8, $pop2
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.add $9=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $9=, 0($3), $9
+ i32.const $4=, 10
+ i32.add $4=, $5, $4
+ i32.call $discard=, sprintf@FUNCTION, $4, $pop2, $5
i32.const $push3=, 0
- i32.const $6=, 16
- i32.add $9=, $9, $6
- i32.const $6=, __stack_pointer
- i32.store $9=, 0($6), $9
+ i32.const $2=, 16
+ i32.add $5=, $5, $2
+ i32.const $2=, __stack_pointer
+ i32.store $5=, 0($2), $5
return $pop3
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/20071213-1.c.s b/test/torture-s/20071213-1.c.s
index 050ca66fb..014e00084 100644
--- a/test/torture-s/20071213-1.c.s
+++ b/test/torture-s/20071213-1.c.s
@@ -112,18 +112,17 @@ h: # @h
.globl f1
.type f1,@function
f1: # @f1
- .param i32, i64
- .local i32, i32, i32, i32, i32
+ .param i32, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
- i32.store $5=, 0($3), $5
- i32.store $push0=, 8($5), $6
- i32.store $discard=, 12($5), $pop0
+ 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 $push0=, 8($6), $2
+ i32.store $discard=, 12($6), $pop0
block
block
block
@@ -132,7 +131,7 @@ f1: # @f1
i32.ne $push2=, $0, $pop1
br_if 0, $pop2 # 0: down to label8
# BB#1: # %sw.bb.i
- i32.load $push19=, 12($5)
+ i32.load $push19=, 12($6)
i32.const $push37=, 3
i32.add $push20=, $pop19, $pop37
i32.const $push36=, -4
@@ -140,14 +139,14 @@ f1: # @f1
tee_local $push35=, $0=, $pop21
i32.const $push34=, 4
i32.add $push22=, $pop35, $pop34
- i32.store $discard=, 12($5), $pop22
+ i32.store $discard=, 12($6), $pop22
block
i32.load $push23=, 0($0)
i32.const $push33=, 3
i32.ne $push24=, $pop23, $pop33
br_if 0, $pop24 # 0: down to label9
# BB#2: # %lor.lhs.false.i
- i32.load $push25=, 12($5)
+ i32.load $push25=, 12($6)
i32.const $push42=, 3
i32.add $push26=, $pop25, $pop42
i32.const $push41=, -4
@@ -155,7 +154,7 @@ f1: # @f1
tee_local $push40=, $0=, $pop27
i32.const $push39=, 4
i32.add $push28=, $pop40, $pop39
- i32.store $discard=, 12($5), $pop28
+ i32.store $discard=, 12($6), $pop28
i32.load $push29=, 0($0)
i32.const $push38=, 4
i32.ne $push30=, $pop29, $pop38
@@ -165,10 +164,10 @@ f1: # @f1
i64.ne $push32=, $1, $pop31
br_if 2, $pop32 # 2: down to label7
# BB#4: # %if.end
- i32.const $4=, 16
- i32.add $5=, $6, $4
- i32.const $4=, __stack_pointer
- i32.store $5=, 0($4), $5
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return
.LBB1_5: # %if.then.i
end_block # label9:
@@ -180,7 +179,7 @@ f1: # @f1
i32.ne $push4=, $0, $pop3
br_if 2, $pop4 # 2: down to label5
# BB#7: # %sw.bb2.i
- i32.load $push5=, 12($5)
+ i32.load $push5=, 12($6)
i32.const $push46=, 3
i32.add $push6=, $pop5, $pop46
i32.const $push45=, -4
@@ -188,13 +187,13 @@ f1: # @f1
tee_local $push44=, $0=, $pop7
i32.const $push43=, 4
i32.add $push8=, $pop44, $pop43
- i32.store $discard=, 12($5), $pop8
+ i32.store $discard=, 12($6), $pop8
i32.load $push9=, 0($0)
i32.const $push10=, 9
i32.ne $push11=, $pop9, $pop10
br_if 1, $pop11 # 1: down to label6
# BB#8: # %lor.lhs.false4.i
- i32.load $push12=, 12($5)
+ i32.load $push12=, 12($6)
i32.const $push50=, 3
i32.add $push13=, $pop12, $pop50
i32.const $push49=, -4
@@ -202,7 +201,7 @@ f1: # @f1
tee_local $push48=, $0=, $pop14
i32.const $push47=, 4
i32.add $push15=, $pop48, $pop47
- i32.store $discard=, 12($5), $pop15
+ i32.store $discard=, 12($6), $pop15
i32.load $push16=, 0($0)
i32.const $push17=, 10
i32.ne $push18=, $pop16, $pop17
@@ -228,17 +227,16 @@ f1: # @f1
.globl f2
.type f2,@function
f2: # @f2
- .param i32, i32, i32, i64
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $5=, __stack_pointer
i32.load $5=, 0($5)
i32.const $6=, 16
i32.sub $8=, $5, $6
- copy_local $9=, $8
i32.const $6=, __stack_pointer
i32.store $8=, 0($6), $8
- i32.store $push0=, 8($8), $9
+ i32.store $push0=, 8($8), $4
i32.store $discard=, 12($8), $pop0
block
block
@@ -337,7 +335,7 @@ f2: # @f2
br_if 0, $pop38 # 0: down to label15
# BB#12: # %if.end
i32.const $7=, 16
- i32.add $8=, $9, $7
+ i32.add $8=, $8, $7
i32.const $7=, __stack_pointer
i32.store $8=, 0($7), $8
return
@@ -359,55 +357,33 @@ f2: # @f2
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $11=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $11=, 0($9), $11
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 8
- i32.sub $11=, $0, $1
+ i32.const $1=, 32
+ i32.sub $4=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $11=, 0($1), $11
+ i32.store $4=, 0($1), $4
i64.const $push0=, 17179869187
- i64.store $discard=, 0($11):p2align=2, $pop0
+ i64.store $discard=, 16($4):p2align=4, $pop0
i32.const $push2=, 1
i64.const $push1=, 2
- call f1@FUNCTION, $pop2, $pop1
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.add $11=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $11=, 0($3), $11
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.sub $11=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $11=, 0($5), $11
+ i32.const $3=, 16
+ i32.add $3=, $4, $3
+ call f1@FUNCTION, $pop2, $pop1, $3
i64.const $push3=, 42949672969
- i64.store $discard=, 0($11):p2align=2, $pop3
+ i64.store $discard=, 0($4):p2align=4, $pop3
i32.const $push7=, 5
i32.const $push6=, 6
i32.const $push5=, 7
i64.const $push4=, 8
- call f2@FUNCTION, $pop7, $pop6, $pop5, $pop4
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 8
- i32.add $11=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $11=, 0($7), $11
+ call f2@FUNCTION, $pop7, $pop6, $pop5, $pop4, $4
i32.const $push8=, 0
- i32.const $10=, 16
- i32.add $11=, $11, $10
- i32.const $10=, __stack_pointer
- i32.store $11=, 0($10), $11
+ i32.const $2=, 32
+ i32.add $4=, $4, $2
+ i32.const $2=, __stack_pointer
+ i32.store $4=, 0($2), $4
return $pop8
.endfunc
.Lfunc_end3:
diff --git a/test/torture-s/20121108-1.c.s b/test/torture-s/20121108-1.c.s
index c909ba5f5..7cd3b67eb 100644
--- a/test/torture-s/20121108-1.c.s
+++ b/test/torture-s/20121108-1.c.s
@@ -152,62 +152,40 @@ string_to_ip: # @string_to_ip
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 16
- i32.sub $12=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $12=, 0($10), $12
- i32.const $push0=, temp
- i32.call $0=, string_to_ip@FUNCTION, $pop0
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $12=, $1, $2
+ i32.const $2=, 32
+ i32.sub $5=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $12=, 0($2), $12
- i32.store $discard=, 0($12), $0
- i32.const $push1=, .L.str
- i32.call $discard=, printf@FUNCTION, $pop1
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $12=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $12=, 0($4), $12
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $12=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $12=, 0($6), $12
- i32.const $push8=, 0
- i32.load $push2=, result($pop8)
- i32.store $discard=, 0($12), $pop2
- i32.const $push7=, .L.str
- i32.call $discard=, printf@FUNCTION, $pop7
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $12=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $12=, 0($8), $12
+ i32.store $5=, 0($2), $5
+ i32.const $push0=, temp
+ i32.call $push1=, string_to_ip@FUNCTION, $pop0
+ i32.store $0=, 16($5):p2align=4, $pop1
+ i32.const $push2=, .L.str
+ i32.const $4=, 16
+ i32.add $4=, $5, $4
+ i32.call $discard=, printf@FUNCTION, $pop2, $4
+ i32.const $push9=, 0
+ i32.load $push3=, result($pop9)
+ i32.store $discard=, 0($5):p2align=4, $pop3
+ i32.const $push8=, .L.str
+ i32.call $discard=, printf@FUNCTION, $pop8, $5
block
- i32.const $push6=, 0
- i32.load $push3=, result($pop6)
- i32.ne $push4=, $0, $pop3
- br_if 0, $pop4 # 0: down to label4
+ i32.const $push7=, 0
+ i32.load $push4=, result($pop7)
+ i32.ne $push5=, $0, $pop4
+ br_if 0, $pop5 # 0: down to label4
# BB#1: # %if.end
- i32.const $push5=, .Lstr
- i32.call $discard=, puts@FUNCTION, $pop5
- i32.const $push9=, 0
- i32.const $11=, 16
- i32.add $12=, $12, $11
- i32.const $11=, __stack_pointer
- i32.store $12=, 0($11), $12
- return $pop9
+ i32.const $push6=, .Lstr
+ i32.call $discard=, puts@FUNCTION, $pop6
+ i32.const $push10=, 0
+ i32.const $3=, 32
+ i32.add $5=, $5, $3
+ i32.const $3=, __stack_pointer
+ i32.store $5=, 0($3), $5
+ return $pop10
.LBB2_2: # %if.then
end_block # label4:
call abort@FUNCTION
diff --git a/test/torture-s/920501-8.c.s b/test/torture-s/920501-8.c.s
index f797bed04..4be051ed3 100644
--- a/test/torture-s/920501-8.c.s
+++ b/test/torture-s/920501-8.c.s
@@ -5,201 +5,188 @@
.globl va
.type va,@function
va: # @va
- .param i32, f64, i32
+ .param i32, f64, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $20=, __stack_pointer
- i32.load $20=, 0($20)
- i32.const $21=, 80
- i32.sub $23=, $20, $21
- copy_local $24=, $23
- i32.const $21=, __stack_pointer
- i32.store $23=, 0($21), $23
- i32.store $push0=, 76($23), $24
+ i32.const $16=, __stack_pointer
+ i32.load $16=, 0($16)
+ i32.const $17=, 80
+ i32.sub $19=, $16, $17
+ i32.const $17=, __stack_pointer
+ i32.store $19=, 0($17), $19
+ i32.store $push0=, 76($19), $3
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
i32.and $push4=, $pop2, $pop3
- tee_local $push108=, $15=, $pop4
+ tee_local $push124=, $3=, $pop4
i32.const $push5=, 4
- i32.add $push6=, $pop108, $pop5
- i32.store $discard=, 76($23), $pop6
- i32.load $3=, 0($15)
+ i32.add $push6=, $pop124, $pop5
+ i32.store $discard=, 76($19), $pop6
+ i32.load $4=, 0($3)
i32.const $push7=, 7
- i32.add $push8=, $15, $pop7
+ i32.add $push8=, $3, $pop7
+ i32.const $push123=, -4
+ i32.and $push9=, $pop8, $pop123
+ tee_local $push122=, $3=, $pop9
+ i32.const $push121=, 4
+ i32.add $push10=, $pop122, $pop121
+ i32.store $discard=, 76($19), $pop10
+ i32.load $5=, 0($3)
+ i32.const $push120=, 7
+ i32.add $push11=, $3, $pop120
+ i32.const $push119=, -4
+ i32.and $push12=, $pop11, $pop119
+ tee_local $push118=, $3=, $pop12
+ i32.const $push117=, 4
+ i32.add $push13=, $pop118, $pop117
+ i32.store $discard=, 76($19), $pop13
+ i32.load $6=, 0($3)
+ i32.const $push116=, 7
+ i32.add $push14=, $3, $pop116
+ i32.const $push115=, -4
+ i32.and $push15=, $pop14, $pop115
+ tee_local $push114=, $3=, $pop15
+ i32.const $push113=, 4
+ i32.add $push16=, $pop114, $pop113
+ i32.store $discard=, 76($19), $pop16
+ i32.load $7=, 0($3)
+ i32.const $push112=, 7
+ i32.add $push17=, $3, $pop112
+ i32.const $push111=, -4
+ i32.and $push18=, $pop17, $pop111
+ tee_local $push110=, $3=, $pop18
+ i32.const $push109=, 4
+ i32.add $push19=, $pop110, $pop109
+ i32.store $discard=, 76($19), $pop19
+ i32.load $8=, 0($3)
+ i32.const $push108=, 7
+ i32.add $push20=, $3, $pop108
i32.const $push107=, -4
- i32.and $push9=, $pop8, $pop107
- tee_local $push106=, $15=, $pop9
+ i32.and $push21=, $pop20, $pop107
+ tee_local $push106=, $3=, $pop21
i32.const $push105=, 4
- i32.add $push10=, $pop106, $pop105
- i32.store $discard=, 76($23), $pop10
- i32.load $4=, 0($15)
+ i32.add $push22=, $pop106, $pop105
+ i32.store $discard=, 76($19), $pop22
+ i32.load $9=, 0($3)
i32.const $push104=, 7
- i32.add $push11=, $15, $pop104
+ i32.add $push23=, $3, $pop104
i32.const $push103=, -4
- i32.and $push12=, $pop11, $pop103
- tee_local $push102=, $15=, $pop12
+ i32.and $push24=, $pop23, $pop103
+ tee_local $push102=, $3=, $pop24
i32.const $push101=, 4
- i32.add $push13=, $pop102, $pop101
- i32.store $discard=, 76($23), $pop13
- i32.load $5=, 0($15)
+ i32.add $push25=, $pop102, $pop101
+ i32.store $discard=, 76($19), $pop25
+ i32.load $10=, 0($3)
i32.const $push100=, 7
- i32.add $push14=, $15, $pop100
+ i32.add $push26=, $3, $pop100
i32.const $push99=, -4
- i32.and $push15=, $pop14, $pop99
- tee_local $push98=, $15=, $pop15
+ i32.and $push27=, $pop26, $pop99
+ tee_local $push98=, $3=, $pop27
i32.const $push97=, 4
- i32.add $push16=, $pop98, $pop97
- i32.store $discard=, 76($23), $pop16
- i32.load $6=, 0($15)
+ i32.add $push28=, $pop98, $pop97
+ i32.store $discard=, 76($19), $pop28
+ i32.load $11=, 0($3)
i32.const $push96=, 7
- i32.add $push17=, $15, $pop96
+ i32.add $push29=, $3, $pop96
i32.const $push95=, -4
- i32.and $push18=, $pop17, $pop95
- tee_local $push94=, $15=, $pop18
+ i32.and $push30=, $pop29, $pop95
+ tee_local $push94=, $3=, $pop30
i32.const $push93=, 4
- i32.add $push19=, $pop94, $pop93
- i32.store $discard=, 76($23), $pop19
- i32.load $7=, 0($15)
+ i32.add $push31=, $pop94, $pop93
+ i32.store $discard=, 76($19), $pop31
+ i32.load $12=, 0($3)
i32.const $push92=, 7
- i32.add $push20=, $15, $pop92
+ i32.add $push32=, $3, $pop92
i32.const $push91=, -4
- i32.and $push21=, $pop20, $pop91
- tee_local $push90=, $15=, $pop21
+ i32.and $push33=, $pop32, $pop91
+ tee_local $push90=, $3=, $pop33
i32.const $push89=, 4
- i32.add $push22=, $pop90, $pop89
- i32.store $discard=, 76($23), $pop22
- i32.load $8=, 0($15)
+ i32.add $push34=, $pop90, $pop89
+ i32.store $discard=, 76($19), $pop34
+ i32.load $13=, 0($3)
i32.const $push88=, 7
- i32.add $push23=, $15, $pop88
+ i32.add $push35=, $3, $pop88
i32.const $push87=, -4
- i32.and $push24=, $pop23, $pop87
- tee_local $push86=, $15=, $pop24
+ i32.and $push36=, $pop35, $pop87
+ tee_local $push86=, $3=, $pop36
i32.const $push85=, 4
- i32.add $push25=, $pop86, $pop85
- i32.store $discard=, 76($23), $pop25
- i32.load $9=, 0($15)
+ i32.add $push37=, $pop86, $pop85
+ i32.store $discard=, 76($19), $pop37
+ i32.load $14=, 0($3)
i32.const $push84=, 7
- i32.add $push26=, $15, $pop84
+ i32.add $push38=, $3, $pop84
i32.const $push83=, -4
- i32.and $push27=, $pop26, $pop83
- tee_local $push82=, $15=, $pop27
+ i32.and $push39=, $pop38, $pop83
+ tee_local $push82=, $3=, $pop39
i32.const $push81=, 4
- i32.add $push28=, $pop82, $pop81
- i32.store $discard=, 76($23), $pop28
- i32.load $10=, 0($15)
+ i32.add $push40=, $pop82, $pop81
+ i32.store $discard=, 76($19), $pop40
+ i32.load $15=, 0($3)
i32.const $push80=, 7
- i32.add $push29=, $15, $pop80
+ i32.add $push41=, $3, $pop80
i32.const $push79=, -4
- i32.and $push30=, $pop29, $pop79
- tee_local $push78=, $15=, $pop30
+ i32.and $push42=, $pop41, $pop79
+ tee_local $push78=, $3=, $pop42
i32.const $push77=, 4
- i32.add $push31=, $pop78, $pop77
- i32.store $discard=, 76($23), $pop31
- i32.load $11=, 0($15)
- i32.const $push76=, 7
- i32.add $push32=, $15, $pop76
- i32.const $push75=, -4
- i32.and $push33=, $pop32, $pop75
- tee_local $push74=, $15=, $pop33
- i32.const $push73=, 4
- i32.add $push34=, $pop74, $pop73
- i32.store $discard=, 76($23), $pop34
- i32.load $12=, 0($15)
- i32.const $push72=, 7
- i32.add $push35=, $15, $pop72
- i32.const $push71=, -4
- i32.and $push36=, $pop35, $pop71
- tee_local $push70=, $15=, $pop36
- i32.const $push69=, 4
- i32.add $push37=, $pop70, $pop69
- i32.store $discard=, 76($23), $pop37
- i32.load $13=, 0($15)
- i32.const $push68=, 7
- i32.add $push38=, $15, $pop68
- i32.const $push67=, -4
- i32.and $push39=, $pop38, $pop67
- tee_local $push66=, $15=, $pop39
- i32.const $push65=, 4
- i32.add $push40=, $pop66, $pop65
- i32.store $discard=, 76($23), $pop40
- i32.load $14=, 0($15)
- i32.const $push64=, 7
- i32.add $push41=, $15, $pop64
- i32.const $push63=, -4
- i32.and $push42=, $pop41, $pop63
- tee_local $push62=, $15=, $pop42
- i32.const $push61=, 4
- i32.add $push43=, $pop62, $pop61
- i32.store $discard=, 76($23), $pop43
- i32.load $15=, 0($15)
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 72
- i32.sub $23=, $16, $17
- i32.const $17=, __stack_pointer
- i32.store $23=, 0($17), $23
- i32.store $discard=, 0($23), $0
- i32.const $push44=, 68
- i32.add $0=, $23, $pop44
- i32.store $discard=, 0($0), $15
- i32.const $push45=, 64
- i32.add $15=, $23, $pop45
- i32.store $discard=, 0($15), $14
- i32.const $push46=, 60
- i32.add $15=, $23, $pop46
- i32.store $discard=, 0($15), $13
- i32.const $push47=, 56
- i32.add $15=, $23, $pop47
- i32.store $discard=, 0($15), $12
- i32.const $push48=, 52
- i32.add $15=, $23, $pop48
- i32.store $discard=, 0($15), $11
- i32.const $push49=, 48
- i32.add $15=, $23, $pop49
- i32.store $discard=, 0($15), $10
- i32.const $push50=, 44
- i32.add $15=, $23, $pop50
- i32.store $discard=, 0($15), $9
- i32.const $push51=, 40
- i32.add $15=, $23, $pop51
- i32.store $discard=, 0($15), $8
- i32.const $push52=, 36
- i32.add $15=, $23, $pop52
- i32.store $discard=, 0($15), $7
- i32.const $push53=, 32
- i32.add $15=, $23, $pop53
- i32.store $discard=, 0($15), $6
- i32.const $push54=, 28
- i32.add $15=, $23, $pop54
- i32.store $discard=, 0($15), $5
- i32.const $push55=, 24
- i32.add $15=, $23, $pop55
- i32.store $discard=, 0($15), $4
- i32.const $push56=, 20
- i32.add $15=, $23, $pop56
- i32.store $discard=, 0($15), $3
- i32.const $push57=, 16
- i32.add $15=, $23, $pop57
- i32.store $discard=, 0($15), $2
- i32.const $push58=, 8
- i32.add $15=, $23, $pop58
- f64.store $discard=, 0($15), $1
- i32.const $push60=, buf
- i32.const $push59=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $pop60, $pop59
+ i32.add $push43=, $pop78, $pop77
+ i32.store $discard=, 76($19), $pop43
+ i32.const $push45=, 68
+ i32.add $push46=, $19, $pop45
+ i32.load $push44=, 0($3)
+ i32.store $discard=, 0($pop46), $pop44
+ i32.const $push47=, 64
+ i32.add $push48=, $19, $pop47
+ i32.store $discard=, 0($pop48):p2align=4, $15
+ i32.const $push49=, 60
+ i32.add $push50=, $19, $pop49
+ i32.store $discard=, 0($pop50), $14
+ i32.const $push51=, 56
+ i32.add $push52=, $19, $pop51
+ i32.store $discard=, 0($pop52):p2align=3, $13
+ i32.const $push53=, 52
+ i32.add $push54=, $19, $pop53
+ i32.store $discard=, 0($pop54), $12
+ i32.const $push55=, 48
+ i32.add $push56=, $19, $pop55
+ i32.store $discard=, 0($pop56):p2align=4, $11
+ i32.const $push57=, 44
+ i32.add $push58=, $19, $pop57
+ i32.store $discard=, 0($pop58), $10
+ i32.const $push59=, 40
+ i32.add $push60=, $19, $pop59
+ i32.store $discard=, 0($pop60):p2align=3, $9
+ i32.const $push61=, 36
+ i32.add $push62=, $19, $pop61
+ i32.store $discard=, 0($pop62), $8
+ i32.const $push63=, 32
+ i32.add $push64=, $19, $pop63
+ i32.store $discard=, 0($pop64):p2align=4, $7
+ i32.const $push65=, 28
+ i32.add $push66=, $19, $pop65
+ i32.store $discard=, 0($pop66), $6
+ i32.const $push67=, 24
+ i32.add $push68=, $19, $pop67
+ i32.store $discard=, 0($pop68):p2align=3, $5
+ i32.const $push69=, 20
+ i32.add $push70=, $19, $pop69
+ i32.store $discard=, 0($pop70), $4
+ i32.const $push71=, 16
+ i32.add $push72=, $19, $pop71
+ i32.store $discard=, 0($pop72):p2align=4, $2
+ i32.const $push73=, 8
+ i32.or $push74=, $19, $pop73
+ f64.store $discard=, 0($pop74), $1
+ i32.store $discard=, 0($19):p2align=4, $0
+ i32.const $push76=, buf
+ i32.const $push75=, .L.str
+ i32.call $discard=, sprintf@FUNCTION, $pop76, $pop75, $19
+ i32.const $18=, 80
+ i32.add $19=, $19, $18
i32.const $18=, __stack_pointer
- i32.load $18=, 0($18)
- i32.const $19=, 72
- i32.add $23=, $18, $19
- i32.const $19=, __stack_pointer
- i32.store $23=, 0($19), $23
- i32.const $22=, 80
- i32.add $23=, $24, $22
- i32.const $22=, __stack_pointer
- i32.store $23=, 0($22), $23
- return $15
+ i32.store $19=, 0($18), $19
+ return $3
.endfunc
.Lfunc_end0:
.size va, .Lfunc_end0-va
@@ -210,64 +197,52 @@ va: # @va
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 64
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
+ i32.const $0=, __stack_pointer
+ i32.load $0=, 0($0)
+ i32.const $1=, 64
+ i32.sub $2=, $0, $1
i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 52
- i32.sub $7=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 17179869187
- i64.store $discard=, 0($7):p2align=2, $pop0
- i32.const $push1=, 48
- i32.add $0=, $7, $pop1
+ i32.store $2=, 0($1), $2
+ i32.const $push0=, 48
+ i32.add $push1=, $2, $pop0
i32.const $push2=, 15
- i32.store $discard=, 0($0), $pop2
+ i32.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 40
- i32.add $0=, $7, $pop3
- i64.const $push4=, 60129542157
- i64.store $discard=, 0($0):p2align=2, $pop4
- i32.const $push5=, 32
- i32.add $0=, $7, $pop5
- i64.const $push6=, 51539607563
- i64.store $discard=, 0($0):p2align=2, $pop6
- i32.const $push7=, 24
- i32.add $0=, $7, $pop7
- i64.const $push8=, 42949672969
- i64.store $discard=, 0($0):p2align=2, $pop8
- i32.const $push9=, 16
- i32.add $0=, $7, $pop9
- i64.const $push10=, 34359738375
- i64.store $discard=, 0($0):p2align=2, $pop10
- i32.const $push11=, 8
- i32.add $0=, $7, $pop11
- i64.const $push12=, 25769803781
- i64.store $discard=, 0($0):p2align=2, $pop12
- i32.const $push15=, 1
- f64.const $push14=, 0x1p0
- i32.const $push13=, 2
- i32.call $discard=, va@FUNCTION, $pop15, $pop14, $pop13
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 52
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push17=, .L.str.1
- i32.const $push16=, buf
- i32.call $0=, strcmp@FUNCTION, $pop17, $pop16
+ i32.add $push4=, $2, $pop3
+ i64.const $push5=, 60129542157
+ i64.store $discard=, 0($pop4), $pop5
+ i32.const $push6=, 32
+ i32.add $push7=, $2, $pop6
+ i64.const $push8=, 51539607563
+ i64.store $discard=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 24
+ i32.add $push10=, $2, $pop9
+ i64.const $push11=, 42949672969
+ i64.store $discard=, 0($pop10), $pop11
+ i32.const $push12=, 16
+ i32.add $push13=, $2, $pop12
+ i64.const $push14=, 34359738375
+ i64.store $discard=, 0($pop13):p2align=4, $pop14
+ i32.const $push15=, 8
+ i32.or $push16=, $2, $pop15
+ i64.const $push17=, 25769803781
+ i64.store $discard=, 0($pop16), $pop17
+ i64.const $push18=, 17179869187
+ i64.store $discard=, 0($2):p2align=4, $pop18
+ i32.const $push21=, 1
+ f64.const $push20=, 0x1p0
+ i32.const $push19=, 2
+ i32.call $discard=, va@FUNCTION, $pop21, $pop20, $pop19, $2
block
- br_if 0, $0 # 0: down to label0
+ i32.const $push23=, .L.str.1
+ i32.const $push22=, buf
+ i32.call $push24=, strcmp@FUNCTION, $pop23, $pop22
+ br_if 0, $pop24 # 0: down to label0
# BB#1: # %if.end
- i32.const $push18=, 0
- call exit@FUNCTION, $pop18
+ i32.const $push25=, 0
+ call exit@FUNCTION, $pop25
unreachable
.LBB1_2: # %if.then
end_block # label0:
diff --git a/test/torture-s/920501-9.c.s b/test/torture-s/920501-9.c.s
index f122e13bd..53494889d 100644
--- a/test/torture-s/920501-9.c.s
+++ b/test/torture-s/920501-9.c.s
@@ -72,67 +72,47 @@ proc5: # @proc5
print_longlong: # @print_longlong
.param i64, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 16
- i32.sub $15=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $15=, 0($13), $15
+ i32.const $4=, __stack_pointer
+ i32.load $4=, 0($4)
+ i32.const $5=, 32
+ i32.sub $9=, $4, $5
+ i32.const $5=, __stack_pointer
+ i32.store $9=, 0($5), $9
i32.wrap/i64 $2=, $0
block
block
i64.const $push1=, 32
i64.shr_u $push2=, $0, $pop1
i32.wrap/i64 $push0=, $pop2
- tee_local $push6=, $3=, $pop0
- i32.const $push7=, 0
- i32.eq $push8=, $pop6, $pop7
- br_if 0, $pop8 # 0: down to label1
+ tee_local $push7=, $3=, $pop0
+ i32.const $push8=, 0
+ i32.eq $push9=, $pop7, $pop8
+ br_if 0, $pop9 # 0: down to label1
# BB#1: # %if.then
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.sub $15=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $15=, 0($5), $15
- i32.store $discard=, 0($15), $3
i32.const $push3=, 4
- i32.add $3=, $15, $pop3
- i32.store $discard=, 0($3), $2
- i32.const $push4=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $1, $pop4
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 8
- i32.add $15=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $15=, 0($7), $15
+ i32.const $7=, 16
+ i32.add $7=, $9, $7
+ i32.or $push4=, $7, $pop3
+ i32.store $discard=, 0($pop4), $2
+ i32.store $discard=, 16($9):p2align=4, $3
+ i32.const $push5=, .L.str
+ i32.const $8=, 16
+ i32.add $8=, $9, $8
+ i32.call $discard=, sprintf@FUNCTION, $1, $pop5, $8
br 1 # 1: down to label0
.LBB5_2: # %if.else
end_block # label1:
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 4
- i32.sub $15=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $15=, 0($9), $15
- i32.store $discard=, 0($15), $2
- i32.const $push5=, .L.str.1
- i32.call $discard=, sprintf@FUNCTION, $1, $pop5
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 4
- i32.add $15=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $15=, 0($11), $15
+ i32.store $discard=, 0($9):p2align=4, $2
+ i32.const $push6=, .L.str.1
+ i32.call $discard=, sprintf@FUNCTION, $1, $pop6, $9
.LBB5_3: # %if.end
end_block # label0:
- i32.const $14=, 16
- i32.add $15=, $15, $14
- i32.const $14=, __stack_pointer
- i32.store $15=, 0($14), $15
+ i32.const $6=, 32
+ i32.add $9=, $9, $6
+ i32.const $6=, __stack_pointer
+ i32.store $9=, 0($6), $9
return $1
.endfunc
.Lfunc_end5:
@@ -144,141 +124,89 @@ print_longlong: # @print_longlong
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 128
- i32.sub $33=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $33=, 0($22), $33
+ i32.const $0=, __stack_pointer
+ i32.load $0=, 0($0)
+ i32.const $1=, 192
+ i32.sub $16=, $0, $1
i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $33=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $33=, 0($2), $33
+ i32.store $16=, 0($1), $16
i32.const $push0=, 1
- i32.store $discard=, 0($33), $pop0
- i32.const $push12=, .L.str.1
- i32.const $23=, 16
- i32.add $23=, $33, $23
- i32.call $discard=, sprintf@FUNCTION, $23, $pop12
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $33=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $33=, 0($4), $33
+ i32.store $discard=, 64($16):p2align=4, $pop0
+ i32.const $push17=, .L.str.1
+ i32.const $2=, 80
+ i32.add $2=, $16, $2
+ i32.const $3=, 64
+ i32.add $3=, $16, $3
+ i32.call $discard=, sprintf@FUNCTION, $2, $pop17, $3
i32.const $push1=, .L.str.2
- i32.const $24=, 16
- i32.add $24=, $33, $24
- i32.call $0=, strcmp@FUNCTION, $pop1, $24
+ i32.const $4=, 80
+ i32.add $4=, $16, $4
block
- br_if 0, $0 # 0: down to label2
+ i32.call $push2=, strcmp@FUNCTION, $pop1, $4
+ br_if 0, $pop2 # 0: down to label2
# BB#1: # %if.end
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $33=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $33=, 0($6), $33
- i32.const $push2=, 305419896
- i32.store $discard=, 0($33), $pop2
- i32.const $push13=, .L.str.1
- i32.const $25=, 16
- i32.add $25=, $33, $25
- i32.call $discard=, sprintf@FUNCTION, $25, $pop13
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $33=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $33=, 0($8), $33
- i32.const $push3=, .L.str.3
- i32.const $26=, 16
- i32.add $26=, $33, $26
- i32.call $0=, strcmp@FUNCTION, $pop3, $26
+ i32.const $push3=, 305419896
+ i32.store $discard=, 48($16):p2align=4, $pop3
+ i32.const $push18=, .L.str.1
+ i32.const $5=, 80
+ i32.add $5=, $16, $5
+ i32.const $6=, 48
+ i32.add $6=, $16, $6
+ i32.call $discard=, sprintf@FUNCTION, $5, $pop18, $6
+ i32.const $push4=, .L.str.3
+ i32.const $7=, 80
+ i32.add $7=, $16, $7
block
- br_if 0, $0 # 0: down to label3
+ i32.call $push5=, strcmp@FUNCTION, $pop4, $7
+ br_if 0, $pop5 # 0: down to label3
# BB#2: # %if.end11
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 8
- i32.sub $33=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $33=, 0($10), $33
- i64.const $push4=, 1311768467732155613
- i64.store $discard=, 0($33):p2align=2, $pop4
- i32.const $push14=, .L.str
- i32.const $27=, 16
- i32.add $27=, $33, $27
- i32.call $discard=, sprintf@FUNCTION, $27, $pop14
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 8
- i32.add $33=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $33=, 0($12), $33
- i32.const $push5=, .L.str.4
- i32.const $28=, 16
- i32.add $28=, $33, $28
- i32.call $0=, strcmp@FUNCTION, $pop5, $28
+ i64.const $push6=, 1311768467732155613
+ i64.store $discard=, 32($16):p2align=4, $pop6
+ i32.const $push19=, .L.str
+ i32.const $8=, 80
+ i32.add $8=, $16, $8
+ i32.const $9=, 32
+ i32.add $9=, $16, $9
+ i32.call $discard=, sprintf@FUNCTION, $8, $pop19, $9
+ i32.const $push7=, .L.str.4
+ i32.const $10=, 80
+ i32.add $10=, $16, $10
block
- br_if 0, $0 # 0: down to label4
+ i32.call $push8=, strcmp@FUNCTION, $pop7, $10
+ br_if 0, $pop8 # 0: down to label4
# BB#3: # %if.end19
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 8
- i32.sub $33=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $33=, 0($14), $33
- i64.const $push6=, -1
- i64.store $discard=, 0($33):p2align=2, $pop6
- i32.const $push15=, .L.str
- i32.const $29=, 16
- i32.add $29=, $33, $29
- i32.call $discard=, sprintf@FUNCTION, $29, $pop15
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 8
- i32.add $33=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $33=, 0($16), $33
- i32.const $push7=, .L.str.5
- i32.const $30=, 16
- i32.add $30=, $33, $30
- i32.call $0=, strcmp@FUNCTION, $pop7, $30
+ i64.const $push9=, -1
+ i64.store $discard=, 16($16):p2align=4, $pop9
+ i32.const $push20=, .L.str
+ i32.const $11=, 80
+ i32.add $11=, $16, $11
+ i32.const $12=, 16
+ i32.add $12=, $16, $12
+ i32.call $discard=, sprintf@FUNCTION, $11, $pop20, $12
+ i32.const $push10=, .L.str.5
+ i32.const $13=, 80
+ i32.add $13=, $16, $13
block
- br_if 0, $0 # 0: down to label5
+ i32.call $push11=, strcmp@FUNCTION, $pop10, $13
+ br_if 0, $pop11 # 0: down to label5
# BB#4: # %if.end27
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.sub $33=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $33=, 0($18), $33
- i32.const $push8=, -1430532899
- i32.store $discard=, 0($33), $pop8
- i32.const $push9=, .L.str.1
- i32.const $31=, 16
- i32.add $31=, $33, $31
- i32.call $discard=, sprintf@FUNCTION, $31, $pop9
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.add $33=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $33=, 0($20), $33
- i32.const $push10=, .L.str.6
- i32.const $32=, 16
- i32.add $32=, $33, $32
- i32.call $0=, strcmp@FUNCTION, $pop10, $32
+ i32.const $push12=, -1430532899
+ i32.store $discard=, 0($16):p2align=4, $pop12
+ i32.const $push13=, .L.str.1
+ i32.const $14=, 80
+ i32.add $14=, $16, $14
+ i32.call $discard=, sprintf@FUNCTION, $14, $pop13, $16
+ i32.const $push14=, .L.str.6
+ i32.const $15=, 80
+ i32.add $15=, $16, $15
block
- br_if 0, $0 # 0: down to label6
+ i32.call $push15=, strcmp@FUNCTION, $pop14, $15
+ br_if 0, $pop15 # 0: down to label6
# BB#5: # %if.end35
- i32.const $push11=, 0
- call exit@FUNCTION, $pop11
+ i32.const $push16=, 0
+ call exit@FUNCTION, $pop16
unreachable
.LBB6_6: # %if.then34
end_block # label6:
diff --git a/test/torture-s/920726-1.c.s b/test/torture-s/920726-1.c.s
index ecbc507a1..89de64838 100644
--- a/test/torture-s/920726-1.c.s
+++ b/test/torture-s/920726-1.c.s
@@ -5,85 +5,72 @@
.globl first
.type first,@function
first: # @first
- .param i32, i32
+ .param i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $11=, $8, $9
- copy_local $12=, $11
- i32.const $9=, __stack_pointer
- i32.store $11=, 0($9), $11
- i32.store $discard=, 12($11), $12
+ i32.const $4=, __stack_pointer
+ 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.store $discard=, 12($7), $2
.LBB0_1: # %for.cond
# =>This Inner Loop Header: Depth=1
loop # label0:
block
block
i32.load8_u $push0=, 0($1)
- tee_local $push9=, $3=, $pop0
- i32.const $push8=, 105
- i32.eq $push1=, $pop9, $pop8
+ tee_local $push10=, $2=, $pop0
+ i32.const $push9=, 105
+ i32.eq $push1=, $pop10, $pop9
br_if 0, $pop1 # 0: down to label3
# BB#2: # %for.cond
# in Loop: Header=BB0_1 Depth=1
block
- i32.const $push17=, 0
- i32.eq $push18=, $3, $pop17
- br_if 0, $pop18 # 0: down to label4
+ i32.const $push18=, 0
+ i32.eq $push19=, $2, $pop18
+ br_if 0, $pop19 # 0: down to label4
# BB#3: # %if.else
# in Loop: Header=BB0_1 Depth=1
- i32.const $push15=, 1
- i32.add $2=, $0, $pop15
- i32.store8 $discard=, 0($0), $3
- copy_local $0=, $2
+ i32.const $push16=, 1
+ i32.add $3=, $0, $pop16
+ i32.store8 $discard=, 0($0), $2
+ copy_local $0=, $3
br 2 # 2: down to label2
.LBB0_4: # %for.end
end_block # label4:
- i32.const $push7=, 0
- i32.store8 $discard=, 0($0), $pop7
- i32.const $10=, 16
- i32.add $11=, $12, $10
- i32.const $10=, __stack_pointer
- i32.store $11=, 0($10), $11
+ i32.const $push8=, 0
+ i32.store8 $discard=, 0($0), $pop8
+ i32.const $6=, 16
+ i32.add $7=, $7, $6
+ i32.const $6=, __stack_pointer
+ i32.store $7=, 0($6), $7
return $0
.LBB0_5: # %if.then
# in Loop: Header=BB0_1 Depth=1
end_block # label3:
- i32.load $push2=, 12($11)
- i32.const $push14=, 3
- i32.add $push3=, $pop2, $pop14
- i32.const $push13=, -4
- i32.and $push4=, $pop3, $pop13
- tee_local $push12=, $3=, $pop4
- i32.const $push11=, 4
- i32.add $push5=, $pop12, $pop11
- i32.store $discard=, 12($11), $pop5
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.sub $11=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $11=, 0($5), $11
- i32.load $push6=, 0($3)
- i32.store $discard=, 0($11), $pop6
- i32.const $push10=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $0, $pop10
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 4
- i32.add $11=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $11=, 0($7), $11
- i32.call $3=, strlen@FUNCTION, $0
- i32.add $0=, $0, $3
+ i32.load $push2=, 12($7)
+ i32.const $push15=, 3
+ i32.add $push3=, $pop2, $pop15
+ i32.const $push14=, -4
+ i32.and $push4=, $pop3, $pop14
+ tee_local $push13=, $2=, $pop4
+ i32.const $push12=, 4
+ i32.add $push5=, $pop13, $pop12
+ i32.store $discard=, 12($7), $pop5
+ i32.load $push6=, 0($2)
+ i32.store $discard=, 0($7):p2align=4, $pop6
+ i32.const $push11=, .L.str
+ i32.call $discard=, sprintf@FUNCTION, $0, $pop11, $7
+ i32.call $push7=, strlen@FUNCTION, $0
+ i32.add $0=, $0, $pop7
.LBB0_6: # %for.inc
# in Loop: Header=BB0_1 Depth=1
end_block # label2:
- i32.const $push16=, 1
- i32.add $1=, $1, $pop16
+ i32.const $push17=, 1
+ i32.add $1=, $1, $pop17
br 0 # 0: up to label0
.LBB0_7:
end_loop # label1:
@@ -96,85 +83,72 @@ first: # @first
.globl second
.type second,@function
second: # @second
- .param i32, i32
+ .param i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $11=, $8, $9
- copy_local $12=, $11
- i32.const $9=, __stack_pointer
- i32.store $11=, 0($9), $11
- i32.store $discard=, 12($11), $12
+ i32.const $4=, __stack_pointer
+ 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.store $discard=, 12($7), $2
.LBB1_1: # %for.cond
# =>This Inner Loop Header: Depth=1
loop # label5:
block
block
i32.load8_u $push0=, 0($1)
- tee_local $push9=, $3=, $pop0
- i32.const $push8=, 105
- i32.eq $push1=, $pop9, $pop8
+ tee_local $push10=, $2=, $pop0
+ i32.const $push9=, 105
+ i32.eq $push1=, $pop10, $pop9
br_if 0, $pop1 # 0: down to label8
# BB#2: # %for.cond
# in Loop: Header=BB1_1 Depth=1
block
- i32.const $push17=, 0
- i32.eq $push18=, $3, $pop17
- br_if 0, $pop18 # 0: down to label9
+ i32.const $push18=, 0
+ i32.eq $push19=, $2, $pop18
+ br_if 0, $pop19 # 0: down to label9
# BB#3: # %if.else
# in Loop: Header=BB1_1 Depth=1
- i32.const $push15=, 1
- i32.add $2=, $0, $pop15
- i32.store8 $discard=, 0($0), $3
- copy_local $0=, $2
+ i32.const $push16=, 1
+ i32.add $3=, $0, $pop16
+ i32.store8 $discard=, 0($0), $2
+ copy_local $0=, $3
br 2 # 2: down to label7
.LBB1_4: # %for.end
end_block # label9:
- i32.const $push7=, 0
- i32.store8 $discard=, 0($0), $pop7
- i32.const $10=, 16
- i32.add $11=, $12, $10
- i32.const $10=, __stack_pointer
- i32.store $11=, 0($10), $11
+ i32.const $push8=, 0
+ i32.store8 $discard=, 0($0), $pop8
+ i32.const $6=, 16
+ i32.add $7=, $7, $6
+ i32.const $6=, __stack_pointer
+ i32.store $7=, 0($6), $7
return $0
.LBB1_5: # %if.then
# in Loop: Header=BB1_1 Depth=1
end_block # label8:
- i32.load $push2=, 12($11)
- i32.const $push14=, 3
- i32.add $push3=, $pop2, $pop14
- i32.const $push13=, -4
- i32.and $push4=, $pop3, $pop13
- tee_local $push12=, $3=, $pop4
- i32.const $push11=, 4
- i32.add $push5=, $pop12, $pop11
- i32.store $discard=, 12($11), $pop5
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.sub $11=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $11=, 0($5), $11
- i32.load $push6=, 0($3)
- i32.store $discard=, 0($11), $pop6
- i32.const $push10=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $0, $pop10
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 4
- i32.add $11=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $11=, 0($7), $11
- i32.call $3=, strlen@FUNCTION, $0
- i32.add $0=, $0, $3
+ i32.load $push2=, 12($7)
+ i32.const $push15=, 3
+ i32.add $push3=, $pop2, $pop15
+ i32.const $push14=, -4
+ i32.and $push4=, $pop3, $pop14
+ tee_local $push13=, $2=, $pop4
+ i32.const $push12=, 4
+ i32.add $push5=, $pop13, $pop12
+ i32.store $discard=, 12($7), $pop5
+ i32.load $push6=, 0($2)
+ i32.store $discard=, 0($7):p2align=4, $pop6
+ i32.const $push11=, .L.str
+ i32.call $discard=, sprintf@FUNCTION, $0, $pop11, $7
+ i32.call $push7=, strlen@FUNCTION, $0
+ i32.add $0=, $0, $pop7
.LBB1_6: # %for.inc
# in Loop: Header=BB1_1 Depth=1
end_block # label7:
- i32.const $push16=, 1
- i32.add $1=, $1, $pop16
+ i32.const $push17=, 1
+ i32.add $1=, $1, $pop17
br 0 # 0: up to label5
.LBB1_7:
end_loop # label6:
@@ -188,64 +162,42 @@ second: # @second
.type main,@function
main: # @main
.result i32
- .local i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i64, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 240
- i32.sub $16=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $16=, 0($11), $16
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 256
+ i32.sub $8=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.sub $16=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $16=, 0($3), $16
+ i32.store $8=, 0($2), $8
i64.const $push0=, 85899345925
- i64.store $0=, 0($16):p2align=2, $pop0
+ i64.store $0=, 16($8):p2align=4, $pop0
i32.const $push1=, .L.str.1
- i32.const $12=, 128
- i32.add $12=, $16, $12
- i32.call $discard=, first@FUNCTION, $12, $pop1
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.add $16=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $16=, 0($5), $16
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 8
- i32.sub $16=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $16=, 0($7), $16
- i64.store $discard=, 0($16):p2align=2, $0
- i32.const $push4=, .L.str.1
- i32.const $13=, 16
- i32.add $13=, $16, $13
- i32.call $discard=, second@FUNCTION, $13, $pop4
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 8
- i32.add $16=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $16=, 0($9), $16
- i32.const $push3=, .L.str.2
- i32.const $14=, 128
- i32.add $14=, $16, $14
- i32.call $1=, strcmp@FUNCTION, $pop3, $14
+ i32.const $3=, 144
+ i32.add $3=, $8, $3
+ i32.const $4=, 16
+ i32.add $4=, $8, $4
+ i32.call $discard=, first@FUNCTION, $3, $pop1, $4
+ i64.store $discard=, 0($8):p2align=4, $0
+ i32.const $push6=, .L.str.1
+ i32.const $5=, 32
+ i32.add $5=, $8, $5
+ i32.call $discard=, second@FUNCTION, $5, $pop6, $8
+ i32.const $push5=, .L.str.2
+ i32.const $6=, 144
+ i32.add $6=, $8, $6
block
- br_if 0, $1 # 0: down to label10
+ i32.call $push2=, strcmp@FUNCTION, $pop5, $6
+ br_if 0, $pop2 # 0: down to label10
# BB#1: # %lor.lhs.false
- i32.const $push5=, .L.str.2
- i32.const $15=, 16
- i32.add $15=, $16, $15
- i32.call $1=, strcmp@FUNCTION, $pop5, $15
- br_if 0, $1 # 0: down to label10
+ i32.const $push7=, .L.str.2
+ i32.const $7=, 32
+ i32.add $7=, $8, $7
+ i32.call $push3=, strcmp@FUNCTION, $pop7, $7
+ br_if 0, $pop3 # 0: down to label10
# BB#2: # %if.end
- i32.const $push2=, 0
- call exit@FUNCTION, $pop2
+ i32.const $push4=, 0
+ call exit@FUNCTION, $pop4
unreachable
.LBB2_3: # %if.then
end_block # label10:
diff --git a/test/torture-s/930513-1.c.s b/test/torture-s/930513-1.c.s
index d6616b5fe..238be4b6b 100644
--- a/test/torture-s/930513-1.c.s
+++ b/test/torture-s/930513-1.c.s
@@ -7,35 +7,23 @@
f: # @f
.param i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $8=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $8=, 0($6), $8
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 8
- i32.sub $8=, $1, $2
+ i32.const $2=, 16
+ i32.sub $4=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $8=, 0($2), $8
+ i32.store $4=, 0($2), $4
i64.const $push0=, 4617315517961601024
- i64.store $discard=, 0($8), $pop0
+ i64.store $discard=, 0($4):p2align=4, $pop0
i32.const $push2=, buf
i32.const $push1=, .L.str
- i32.call_indirect $discard=, $0, $pop2, $pop1
+ i32.call_indirect $discard=, $0, $pop2, $pop1, $4
+ i32.const $3=, 16
+ i32.add $4=, $4, $3
i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 8
- i32.add $8=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $8=, 0($4), $8
- i32.const $7=, 16
- i32.add $8=, $8, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.store $4=, 0($3), $4
return $0
.endfunc
.Lfunc_end0:
@@ -47,31 +35,19 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32
# BB#0: # %entry
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $6=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $6=, 0($5), $6
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 8
- i32.sub $6=, $0, $1
+ i32.const $1=, 16
+ i32.sub $2=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $6=, 0($1), $6
+ i32.store $2=, 0($1), $2
i64.const $push1=, 4617315517961601024
- i64.store $discard=, 0($6), $pop1
+ i64.store $discard=, 0($2):p2align=4, $pop1
i32.const $push3=, buf
i32.const $push2=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $pop3, $pop2
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.add $6=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $6=, 0($3), $6
+ i32.call $discard=, sprintf@FUNCTION, $pop3, $pop2, $2
block
i32.const $push10=, 0
i32.load8_u $push4=, buf($pop10)
diff --git a/test/torture-s/941014-2.c.s b/test/torture-s/941014-2.c.s
index ddae9e22f..d3429ec80 100644
--- a/test/torture-s/941014-2.c.s
+++ b/test/torture-s/941014-2.c.s
@@ -18,46 +18,35 @@ a1: # @a1
.type f,@function
f: # @f
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $8=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $8=, 0($6), $8
- i32.const $push0=, 4
- i32.call $0=, malloc@FUNCTION, $pop0
- block
- i32.load16_u $push1=, 0($0)
- i32.const $push2=, 4096
- i32.lt_u $push3=, $pop1, $pop2
- br_if 0, $pop3 # 0: down to label0
-# BB#1: # %if.then
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $8=, $1, $2
+ i32.const $2=, 16
+ i32.sub $4=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $8=, 0($2), $8
- i32.load16_u $push4=, 0($0)
- i32.store $discard=, 0($8), $pop4
- i32.const $push5=, .L.str
- i32.call $discard=, printf@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $8=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $8=, 0($4), $8
+ i32.store $4=, 0($2), $4
+ block
+ i32.const $push1=, 4
+ i32.call $push0=, malloc@FUNCTION, $pop1
+ tee_local $push8=, $0=, $pop0
+ i32.load16_u $push2=, 0($pop8)
+ i32.const $push3=, 4096
+ i32.lt_u $push4=, $pop2, $pop3
+ br_if 0, $pop4 # 0: down to label0
+# BB#1: # %if.then
+ i32.load16_u $push5=, 0($0)
+ i32.store $discard=, 0($4):p2align=4, $pop5
+ i32.const $push6=, .L.str
+ i32.call $discard=, printf@FUNCTION, $pop6, $4
.LBB1_2: # %if.end
end_block # label0:
- i32.const $push6=, 256
- i32.store16 $discard=, 2($0), $pop6
- i32.const $7=, 16
- i32.add $8=, $8, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $push7=, 256
+ i32.store16 $discard=, 2($0), $pop7
+ i32.const $3=, 16
+ i32.add $4=, $4, $3
+ i32.const $3=, __stack_pointer
+ i32.store $4=, 0($3), $4
return $0
.endfunc
.Lfunc_end1:
@@ -69,49 +58,38 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
- i32.const $push0=, 4
- i32.call $0=, malloc@FUNCTION, $pop0
- block
- i32.load16_u $push1=, 0($0)
- i32.const $push2=, 4096
- i32.lt_u $push3=, $pop1, $pop2
- br_if 0, $pop3 # 0: down to label1
-# BB#1: # %if.then.i
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i32.load16_u $push4=, 0($0)
- i32.store $discard=, 0($7), $pop4
- i32.const $push5=, .L.str
- i32.call $discard=, printf@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $3=, 0($2), $3
+ block
+ i32.const $push1=, 4
+ i32.call $push0=, malloc@FUNCTION, $pop1
+ tee_local $push12=, $0=, $pop0
+ i32.load16_u $push2=, 0($pop12)
+ i32.const $push3=, 4096
+ i32.lt_u $push4=, $pop2, $pop3
+ br_if 0, $pop4 # 0: down to label1
+# BB#1: # %if.then.i
+ i32.load16_u $push5=, 0($0)
+ i32.store $discard=, 0($3):p2align=4, $pop5
+ i32.const $push6=, .L.str
+ i32.call $discard=, printf@FUNCTION, $pop6, $3
.LBB2_2: # %f.exit
end_block # label1:
block
- i32.const $push6=, 256
- i32.store16 $push7=, 2($0), $pop6
- i32.load16_u $push8=, 2($0)
- i32.ne $push9=, $pop7, $pop8
- br_if 0, $pop9 # 0: down to label2
+ i32.const $push7=, 256
+ i32.store16 $push8=, 2($0), $pop7
+ i32.load16_u $push9=, 2($0)
+ i32.ne $push10=, $pop8, $pop9
+ br_if 0, $pop10 # 0: down to label2
# BB#3: # %if.end
- i32.const $push10=, 0
- call exit@FUNCTION, $pop10
+ i32.const $push11=, 0
+ call exit@FUNCTION, $pop11
unreachable
.LBB2_4: # %if.then
end_block # label2:
diff --git a/test/torture-s/980205.c.s b/test/torture-s/980205.c.s
index 24cefe181..1ba136ad6 100644
--- a/test/torture-s/980205.c.s
+++ b/test/torture-s/980205.c.s
@@ -5,17 +5,16 @@
.globl fdouble
.type fdouble,@function
fdouble: # @fdouble
- .param f64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push1=, 12($5), $6
+ i32.store $push1=, 12($5), $1
i32.const $push2=, 7
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -8
@@ -35,7 +34,7 @@ fdouble: # @fdouble
br_if 0, $pop11 # 0: down to label0
# BB#2: # %if.end
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -53,30 +52,18 @@ fdouble: # @fdouble
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32
# BB#0: # %entry
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $6=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $6=, 0($5), $6
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 8
- i32.sub $6=, $0, $1
+ i32.const $1=, 16
+ i32.sub $2=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $6=, 0($1), $6
+ i32.store $2=, 0($1), $2
i64.const $push0=, 4611686018427387904
- i64.store $discard=, 0($6), $pop0
+ i64.store $discard=, 0($2):p2align=4, $pop0
f64.const $push1=, 0x1p0
- call fdouble@FUNCTION, $pop1
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.add $6=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $6=, 0($3), $6
+ call fdouble@FUNCTION, $pop1, $2
i32.const $push2=, 0
call exit@FUNCTION, $pop2
unreachable
diff --git a/test/torture-s/980605-1.c.s b/test/torture-s/980605-1.c.s
index 54df999d1..0a10ceb2a 100644
--- a/test/torture-s/980605-1.c.s
+++ b/test/torture-s/980605-1.c.s
@@ -52,14 +52,14 @@ getval: # @getval
.globl f
.type f,@function
f: # @f
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $8=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $8=, 0($6), $8
+ 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 $push0=, 0
i32.const $push15=, 0
i32.load $push1=, x($pop15)
@@ -67,37 +67,25 @@ f: # @f
i32.const $push2=, 20
i32.add $push3=, $pop14, $pop2
i32.store $discard=, x($pop0), $pop3
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $8=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $8=, 0($2), $8
i32.const $push4=, 10
i32.mul $push5=, $0, $pop4
tee_local $push13=, $0=, $pop5
i32.add $push6=, $pop13, $0
i32.const $push7=, 207
i32.add $push8=, $pop6, $pop7
- i32.store $0=, 0($8), $pop8
+ i32.store $0=, 0($4):p2align=4, $pop8
i32.const $push10=, buf
i32.const $push9=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $pop10, $pop9
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $8=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $8=, 0($4), $8
+ i32.call $discard=, sprintf@FUNCTION, $pop10, $pop9, $4
block
i32.const $push11=, 227
i32.ne $push12=, $0, $pop11
br_if 0, $pop12 # 0: down to label0
# BB#1: # %if.end
- i32.const $7=, 16
- i32.add $8=, $8, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $3=, 16
+ i32.add $4=, $4, $3
+ i32.const $3=, __stack_pointer
+ i32.store $4=, 0($3), $4
return
.LBB2_2: # %if.then
end_block # label0:
diff --git a/test/torture-s/980608-1.c.s b/test/torture-s/980608-1.c.s
index b6ce1e75f..6e6ecbfab 100644
--- a/test/torture-s/980608-1.c.s
+++ b/test/torture-s/980608-1.c.s
@@ -17,17 +17,16 @@ f1: # @f1
.globl debug
.type debug,@function
debug: # @debug
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push45=, 3
i32.add $push1=, $pop0, $pop45
i32.const $push44=, -4
@@ -118,7 +117,7 @@ debug: # @debug
br_if 0, $pop41 # 0: down to label5
# BB#6: # %if.end16
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -156,39 +155,27 @@ debug: # @debug
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 32
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 24
- i32.sub $7=, $1, $2
+ i32.const $2=, 32
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 438086664293
- i64.store $discard=, 0($7):p2align=2, $pop0
- i32.const $push1=, 16
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 16
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 455266533481
- i64.store $discard=, 0($0):p2align=2, $pop2
+ i64.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 8
- i32.add $0=, $7, $pop3
- i64.const $push4=, 446676598887
- i64.store $discard=, 0($0):p2align=2, $pop4
- call debug@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 24
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push5=, 0
- call exit@FUNCTION, $pop5
+ i32.or $push4=, $3, $pop3
+ i64.const $push5=, 446676598887
+ i64.store $discard=, 0($pop4), $pop5
+ i64.const $push6=, 438086664293
+ i64.store $discard=, 0($3):p2align=4, $pop6
+ call debug@FUNCTION, $0, $3
+ i32.const $push7=, 0
+ call exit@FUNCTION, $pop7
unreachable
.endfunc
.Lfunc_end2:
diff --git a/test/torture-s/980716-1.c.s b/test/torture-s/980716-1.c.s
index b7cf6efc5..6d9bee952 100644
--- a/test/torture-s/980716-1.c.s
+++ b/test/torture-s/980716-1.c.s
@@ -5,21 +5,20 @@
.globl stub
.type stub,@function
stub: # @stub
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
- i32.store $5=, 0($3), $5
- i32.store $discard=, 12($5), $6
+ 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 $2=, 12($6), $1
.LBB0_1: # %while.body
# =>This Inner Loop Header: Depth=1
loop # label0:
- i32.load $push0=, 12($5)
+ i32.load $push0=, 12($6)
i32.const $push13=, 3
i32.add $push1=, $pop0, $pop13
i32.const $push12=, -4
@@ -27,16 +26,16 @@ stub: # @stub
tee_local $push11=, $1=, $pop2
i32.const $push10=, 4
i32.add $push3=, $pop11, $pop10
- i32.store $discard=, 12($5), $pop3
+ i32.store $discard=, 12($6), $pop3
i32.load $push4=, 0($1)
br_if 0, $pop4 # 0: up to label0
# BB#2: # %while.end
end_loop # label1:
- i32.store $discard=, 12($5), $6
+ i32.store $discard=, 12($6), $2
.LBB0_3: # %while.body.1
# =>This Inner Loop Header: Depth=1
loop # label2:
- i32.load $push5=, 12($5)
+ i32.load $push5=, 12($6)
i32.const $push17=, 3
i32.add $push6=, $pop5, $pop17
i32.const $push16=, -4
@@ -44,15 +43,15 @@ stub: # @stub
tee_local $push15=, $1=, $pop7
i32.const $push14=, 4
i32.add $push8=, $pop15, $pop14
- i32.store $discard=, 12($5), $pop8
+ i32.store $discard=, 12($6), $pop8
i32.load $push9=, 0($1)
br_if 0, $pop9 # 0: up to label2
# BB#4: # %while.end.1
end_loop # label3:
- i32.const $4=, 16
- i32.add $5=, $6, $4
- i32.const $4=, __stack_pointer
- i32.store $5=, 0($4), $5
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return
.endfunc
.Lfunc_end0:
@@ -64,41 +63,29 @@ stub: # @stub
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $8=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
- i32.const $push0=, .L.str
- i32.store $discard=, 0($8), $pop0
- i32.const $push1=, 12
- i32.add $0=, $8, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 12
+ i32.or $push1=, $3, $pop0
i32.const $push2=, 0
- i32.store $0=, 0($0), $pop2
+ i32.store $0=, 0($pop1), $pop2
i32.const $push3=, 8
- i32.add $1=, $8, $pop3
- i32.const $push4=, .L.str.2
- i32.store $discard=, 0($1), $pop4
- i32.const $push5=, 4
- i32.add $1=, $8, $pop5
- i32.const $push6=, .L.str.1
- i32.store $discard=, 0($1), $pop6
- call stub@FUNCTION, $0
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
+ i32.or $push4=, $3, $pop3
+ i32.const $push5=, .L.str.2
+ i32.store $discard=, 0($pop4):p2align=3, $pop5
+ i32.const $push6=, 4
+ i32.or $push7=, $3, $pop6
+ i32.const $push8=, .L.str.1
+ i32.store $discard=, 0($pop7), $pop8
+ i32.const $push9=, .L.str
+ i32.store $discard=, 0($3):p2align=4, $pop9
+ call stub@FUNCTION, $0, $3
call exit@FUNCTION, $0
unreachable
.endfunc
diff --git a/test/torture-s/fprintf-1.c.s b/test/torture-s/fprintf-1.c.s
index c1245c896..f88788dd6 100644
--- a/test/torture-s/fprintf-1.c.s
+++ b/test/torture-s/fprintf-1.c.s
@@ -6,281 +6,193 @@
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $39=, __stack_pointer
- i32.load $39=, 0($39)
- i32.const $40=, 16
- i32.sub $42=, $39, $40
- i32.const $40=, __stack_pointer
- i32.store $42=, 0($40), $42
+ i32.const $2=, __stack_pointer
+ i32.load $2=, 0($2)
+ i32.const $3=, 144
+ i32.sub $13=, $2, $3
+ i32.const $3=, __stack_pointer
+ i32.store $13=, 0($3), $13
i32.const $push1=, .L.str
i32.const $push2=, 5
- i32.const $push49=, 1
- i32.const $push48=, 0
- i32.load $push0=, stdout($pop48)
- i32.call $discard=, fwrite@FUNCTION, $pop1, $pop2, $pop49, $pop0
- i32.const $push47=, 0
- i32.load $push3=, stdout($pop47)
- i32.const $push46=, .L.str
- i32.call $1=, fprintf@FUNCTION, $pop3, $pop46
+ i32.const $push61=, 1
+ i32.const $push60=, 0
+ i32.load $push0=, stdout($pop60)
+ i32.call $discard=, fwrite@FUNCTION, $pop1, $pop2, $pop61, $pop0
block
- i32.const $push45=, 5
- i32.ne $push4=, $1, $pop45
- br_if 0, $pop4 # 0: down to label0
+ i32.const $push59=, 0
+ i32.load $push3=, stdout($pop59)
+ i32.const $push58=, .L.str
+ i32.const $push57=, 0
+ i32.call $push4=, fprintf@FUNCTION, $pop3, $pop58, $pop57
+ i32.const $push56=, 5
+ i32.ne $push5=, $pop4, $pop56
+ br_if 0, $pop5 # 0: down to label0
# BB#1: # %if.end
- i32.const $push6=, .L.str.1
- i32.const $push7=, 6
- i32.const $push54=, 1
- i32.const $push53=, 0
- i32.load $push5=, stdout($pop53)
- i32.call $discard=, fwrite@FUNCTION, $pop6, $pop7, $pop54, $pop5
- i32.const $push52=, 0
- i32.load $push8=, stdout($pop52)
- i32.const $push51=, .L.str.1
- i32.call $1=, fprintf@FUNCTION, $pop8, $pop51
+ i32.const $push7=, .L.str.1
+ i32.const $push8=, 6
+ i32.const $push67=, 1
+ i32.const $push66=, 0
+ i32.load $push6=, stdout($pop66)
+ i32.call $discard=, fwrite@FUNCTION, $pop7, $pop8, $pop67, $pop6
block
- i32.const $push50=, 6
- i32.ne $push9=, $1, $pop50
- br_if 0, $pop9 # 0: down to label1
+ i32.const $push65=, 0
+ i32.load $push9=, stdout($pop65)
+ i32.const $push64=, .L.str.1
+ i32.const $push63=, 0
+ i32.call $push10=, fprintf@FUNCTION, $pop9, $pop64, $pop63
+ i32.const $push62=, 6
+ i32.ne $push11=, $pop10, $pop62
+ br_if 0, $pop11 # 0: down to label1
# BB#2: # %if.end6
- i32.const $push11=, 97
- i32.const $push56=, 0
- i32.load $push10=, stdout($pop56)
- i32.call $discard=, fputc@FUNCTION, $pop11, $pop10
- i32.const $push55=, 0
- i32.load $push12=, stdout($pop55)
- i32.const $push13=, .L.str.2
- i32.call $1=, fprintf@FUNCTION, $pop12, $pop13
+ i32.const $push13=, 97
+ i32.const $push70=, 0
+ i32.load $push12=, stdout($pop70)
+ i32.call $discard=, fputc@FUNCTION, $pop13, $pop12
block
- i32.const $push14=, 1
- i32.ne $push15=, $1, $pop14
- br_if 0, $pop15 # 0: down to label2
+ i32.const $push69=, 0
+ i32.load $push14=, stdout($pop69)
+ i32.const $push15=, .L.str.2
+ i32.const $push68=, 0
+ i32.call $push16=, fprintf@FUNCTION, $pop14, $pop15, $pop68
+ i32.const $push17=, 1
+ i32.ne $push18=, $pop16, $pop17
+ br_if 0, $pop18 # 0: down to label2
# BB#3: # %if.end11
- i32.const $push57=, 0
- i32.load $push16=, stdout($pop57)
- i32.const $push17=, .L.str.3
- i32.call $1=, fprintf@FUNCTION, $pop16, $pop17
block
- br_if 0, $1 # 0: down to label3
+ i32.const $push72=, 0
+ i32.load $push19=, stdout($pop72)
+ i32.const $push20=, .L.str.3
+ i32.const $push71=, 0
+ i32.call $push21=, fprintf@FUNCTION, $pop19, $pop20, $pop71
+ br_if 0, $pop21 # 0: down to label3
# BB#4: # %if.end16
- i32.const $push19=, .L.str
- i32.const $push20=, 5
- i32.const $push63=, 1
- i32.const $push62=, 0
- i32.load $push18=, stdout($pop62)
- i32.call $discard=, fwrite@FUNCTION, $pop19, $pop20, $pop63, $pop18
- i32.const $push61=, 0
- i32.load $1=, stdout($pop61)
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.sub $42=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $42=, 0($4), $42
- i32.const $push60=, .L.str
- i32.store $discard=, 0($42), $pop60
- i32.const $push59=, .L.str.4
- i32.call $1=, fprintf@FUNCTION, $1, $pop59
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.add $42=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $42=, 0($6), $42
+ i32.const $push23=, .L.str
+ i32.const $push24=, 5
+ i32.const $push78=, 1
+ i32.const $push77=, 0
+ i32.load $push22=, stdout($pop77)
+ i32.call $discard=, fwrite@FUNCTION, $pop23, $pop24, $pop78, $pop22
+ i32.const $push76=, 0
+ i32.load $1=, stdout($pop76)
+ i32.const $push75=, .L.str
+ i32.store $discard=, 128($13):p2align=4, $pop75
+ i32.const $push74=, .L.str.4
+ i32.const $5=, 128
+ i32.add $5=, $13, $5
block
- i32.const $push58=, 5
- i32.ne $push21=, $1, $pop58
- br_if 0, $pop21 # 0: down to label4
+ i32.call $push25=, fprintf@FUNCTION, $1, $pop74, $5
+ i32.const $push73=, 5
+ i32.ne $push26=, $pop25, $pop73
+ br_if 0, $pop26 # 0: down to label4
# BB#5: # %if.end21
- i32.const $push23=, .L.str.1
- i32.const $push24=, 6
- i32.const $push69=, 1
- i32.const $push68=, 0
- i32.load $push22=, stdout($pop68)
- i32.call $discard=, fwrite@FUNCTION, $pop23, $pop24, $pop69, $pop22
- i32.const $push67=, 0
- i32.load $1=, stdout($pop67)
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.sub $42=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $42=, 0($8), $42
- i32.const $push66=, .L.str.1
- i32.store $discard=, 0($42), $pop66
- i32.const $push65=, .L.str.4
- i32.call $1=, fprintf@FUNCTION, $1, $pop65
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.add $42=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $42=, 0($10), $42
+ i32.const $push28=, .L.str.1
+ i32.const $push29=, 6
+ i32.const $push84=, 1
+ i32.const $push83=, 0
+ i32.load $push27=, stdout($pop83)
+ i32.call $discard=, fwrite@FUNCTION, $pop28, $pop29, $pop84, $pop27
+ i32.const $push82=, 0
+ i32.load $1=, stdout($pop82)
+ i32.const $push81=, .L.str.1
+ i32.store $discard=, 112($13):p2align=4, $pop81
+ i32.const $push80=, .L.str.4
+ i32.const $6=, 112
+ i32.add $6=, $13, $6
block
- i32.const $push64=, 6
- i32.ne $push25=, $1, $pop64
- br_if 0, $pop25 # 0: down to label5
+ i32.call $push30=, fprintf@FUNCTION, $1, $pop80, $6
+ i32.const $push79=, 6
+ i32.ne $push31=, $pop30, $pop79
+ br_if 0, $pop31 # 0: down to label5
# BB#6: # %if.end26
- i32.const $push27=, 97
- i32.const $push72=, 0
- i32.load $push26=, stdout($pop72)
- i32.call $discard=, fputc@FUNCTION, $pop27, $pop26
- i32.const $push71=, 0
- i32.load $1=, stdout($pop71)
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.sub $42=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $42=, 0($12), $42
- i32.const $push28=, .L.str.2
- i32.store $discard=, 0($42), $pop28
- i32.const $push70=, .L.str.4
- i32.call $1=, fprintf@FUNCTION, $1, $pop70
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.add $42=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $42=, 0($14), $42
+ i32.const $push33=, 97
+ i32.const $push87=, 0
+ i32.load $push32=, stdout($pop87)
+ i32.call $discard=, fputc@FUNCTION, $pop33, $pop32
+ i32.const $push86=, 0
+ i32.load $1=, stdout($pop86)
+ i32.const $push34=, .L.str.2
+ i32.store $discard=, 96($13):p2align=4, $pop34
+ i32.const $push85=, .L.str.4
+ i32.const $7=, 96
+ i32.add $7=, $13, $7
block
- i32.const $push29=, 1
- i32.ne $push30=, $1, $pop29
- br_if 0, $pop30 # 0: down to label6
+ i32.call $push35=, fprintf@FUNCTION, $1, $pop85, $7
+ i32.const $push36=, 1
+ i32.ne $push37=, $pop35, $pop36
+ br_if 0, $pop37 # 0: down to label6
# BB#7: # %if.end31
- i32.const $push74=, 0
- i32.load $1=, stdout($pop74)
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.sub $42=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $42=, 0($16), $42
- i32.const $push31=, .L.str.3
- i32.store $discard=, 0($42), $pop31
- i32.const $push73=, .L.str.4
- i32.call $1=, fprintf@FUNCTION, $1, $pop73
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.add $42=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $42=, 0($18), $42
+ i32.const $push89=, 0
+ i32.load $1=, stdout($pop89)
+ i32.const $push38=, .L.str.3
+ i32.store $discard=, 80($13):p2align=4, $pop38
+ i32.const $push88=, .L.str.4
+ i32.const $8=, 80
+ i32.add $8=, $13, $8
block
- br_if 0, $1 # 0: down to label7
+ i32.call $push39=, fprintf@FUNCTION, $1, $pop88, $8
+ br_if 0, $pop39 # 0: down to label7
# BB#8: # %if.end36
- i32.const $push33=, 120
- i32.const $push77=, 0
- i32.load $push32=, stdout($pop77)
- i32.call $discard=, fputc@FUNCTION, $pop33, $pop32
- i32.const $push76=, 0
- i32.load $1=, stdout($pop76)
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.sub $42=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $42=, 0($20), $42
- i32.const $push75=, 120
- i32.store $discard=, 0($42), $pop75
- i32.const $push34=, .L.str.5
- i32.call $1=, fprintf@FUNCTION, $1, $pop34
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.add $42=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $42=, 0($22), $42
+ i32.const $push41=, 120
+ i32.const $push92=, 0
+ i32.load $push40=, stdout($pop92)
+ i32.call $discard=, fputc@FUNCTION, $pop41, $pop40
+ i32.const $push91=, 0
+ i32.load $1=, stdout($pop91)
+ i32.const $push90=, 120
+ i32.store $discard=, 64($13):p2align=4, $pop90
+ i32.const $push42=, .L.str.5
+ i32.const $9=, 64
+ i32.add $9=, $13, $9
block
- i32.const $push35=, 1
- i32.ne $push36=, $1, $pop35
- br_if 0, $pop36 # 0: down to label8
+ i32.call $push43=, fprintf@FUNCTION, $1, $pop42, $9
+ i32.const $push44=, 1
+ i32.ne $push45=, $pop43, $pop44
+ br_if 0, $pop45 # 0: down to label8
# BB#9: # %if.end41
- i32.const $push80=, 0
- i32.load $1=, stdout($pop80)
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.sub $42=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $42=, 0($24), $42
- i32.const $push37=, .L.str.1
- i32.store $0=, 0($42), $pop37
- i32.const $push38=, .L.str.6
- i32.call $discard=, fprintf@FUNCTION, $1, $pop38
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.add $42=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $42=, 0($26), $42
- i32.const $push79=, 0
- i32.load $1=, stdout($pop79)
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.sub $42=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $42=, 0($28), $42
- i32.store $discard=, 0($42), $0
- i32.const $push78=, .L.str.6
- i32.call $1=, fprintf@FUNCTION, $1, $pop78
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 4
- i32.add $42=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $42=, 0($30), $42
+ i32.const $push95=, 0
+ i32.load $1=, stdout($pop95)
+ i32.const $push46=, .L.str.1
+ i32.store $0=, 48($13):p2align=4, $pop46
+ i32.const $push47=, .L.str.6
+ i32.const $10=, 48
+ i32.add $10=, $13, $10
+ i32.call $discard=, fprintf@FUNCTION, $1, $pop47, $10
+ i32.const $push94=, 0
+ i32.load $1=, stdout($pop94)
+ i32.store $discard=, 32($13):p2align=4, $0
+ i32.const $push93=, .L.str.6
+ i32.const $11=, 32
+ i32.add $11=, $13, $11
block
- i32.const $push39=, 7
- i32.ne $push40=, $1, $pop39
- br_if 0, $pop40 # 0: down to label9
+ i32.call $push48=, fprintf@FUNCTION, $1, $pop93, $11
+ i32.const $push49=, 7
+ i32.ne $push50=, $pop48, $pop49
+ br_if 0, $pop50 # 0: down to label9
# BB#10: # %if.end46
- i32.const $push41=, 0
- i32.load $0=, stdout($pop41)
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 4
- i32.sub $42=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $42=, 0($32), $42
- i32.const $push82=, 0
- i32.store $1=, 0($42), $pop82
- i32.const $push42=, .L.str.7
- i32.call $discard=, fprintf@FUNCTION, $0, $pop42
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 4
- i32.add $42=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $42=, 0($34), $42
+ i32.const $push51=, 0
+ i32.load $0=, stdout($pop51)
+ i32.const $push97=, 0
+ i32.store $1=, 16($13):p2align=4, $pop97
+ i32.const $push52=, .L.str.7
+ i32.const $12=, 16
+ i32.add $12=, $13, $12
+ i32.call $discard=, fprintf@FUNCTION, $0, $pop52, $12
i32.load $0=, stdout($1)
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 4
- i32.sub $42=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $42=, 0($36), $42
- i32.store $2=, 0($42), $1
- i32.const $push81=, .L.str.7
- i32.call $1=, fprintf@FUNCTION, $0, $pop81
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 4
- i32.add $42=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $42=, 0($38), $42
+ i32.store $discard=, 0($13):p2align=4, $1
block
- i32.const $push43=, 2
- i32.ne $push44=, $1, $pop43
- br_if 0, $pop44 # 0: down to label10
+ i32.const $push96=, .L.str.7
+ i32.call $push53=, fprintf@FUNCTION, $0, $pop96, $13
+ i32.const $push54=, 2
+ i32.ne $push55=, $pop53, $pop54
+ br_if 0, $pop55 # 0: down to label10
# BB#11: # %if.end51
- i32.const $41=, 16
- i32.add $42=, $42, $41
- i32.const $41=, __stack_pointer
- i32.store $42=, 0($41), $42
- return $2
+ i32.const $4=, 144
+ i32.add $13=, $13, $4
+ i32.const $4=, __stack_pointer
+ i32.store $13=, 0($4), $13
+ return $1
.LBB0_12: # %if.then50
end_block # label10:
call abort@FUNCTION
diff --git a/test/torture-s/fprintf-chk-1.c.s b/test/torture-s/fprintf-chk-1.c.s
index 9dd5c1a3d..777f39090 100644
--- a/test/torture-s/fprintf-chk-1.c.s
+++ b/test/torture-s/fprintf-chk-1.c.s
@@ -5,17 +5,16 @@
.globl __fprintf_chk
.type __fprintf_chk,@function
__fprintf_chk: # @__fprintf_chk
- .param i32, i32, i32
+ .param i32, i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32
+ .local 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
- i32.store $6=, 0($4), $6
+ 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
block
i32.const $push4=, 0
i32.load $push0=, should_optimize($pop4)
@@ -24,12 +23,12 @@ __fprintf_chk: # @__fprintf_chk
i32.const $push5=, 0
i32.const $push1=, 1
i32.store $discard=, should_optimize($pop5), $pop1
- i32.store $push2=, 12($6), $7
+ i32.store $push2=, 12($7), $3
i32.call $push3=, vfprintf@FUNCTION, $0, $2, $pop2
- i32.const $5=, 16
- i32.add $6=, $7, $5
- i32.const $5=, __stack_pointer
- i32.store $6=, 0($5), $6
+ i32.const $6=, 16
+ i32.add $7=, $7, $6
+ i32.const $6=, __stack_pointer
+ i32.store $7=, 0($6), $7
return $pop3
.LBB0_2: # %if.then
end_block # label0:
@@ -45,550 +44,414 @@ __fprintf_chk: # @__fprintf_chk
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $59=, __stack_pointer
- i32.load $59=, 0($59)
- i32.const $60=, 16
- i32.sub $62=, $59, $60
- i32.const $60=, __stack_pointer
- i32.store $62=, 0($60), $62
- i32.const $push82=, 0
+ i32.const $3=, __stack_pointer
+ i32.load $3=, 0($3)
+ i32.const $4=, 224
+ i32.sub $19=, $3, $4
+ i32.const $4=, __stack_pointer
+ i32.store $19=, 0($4), $19
+ i32.const $push94=, 0
i32.const $push0=, 1
- i32.store $discard=, should_optimize($pop82), $pop0
- i32.const $push81=, 0
- i32.load $push1=, stdout($pop81)
- i32.const $push80=, .L.str
- i32.call $discard=, __fprintf_chk@FUNCTION, $pop1, $0, $pop80
- block
- i32.const $push79=, 0
- i32.load $push2=, should_optimize($pop79)
- i32.const $push161=, 0
- i32.eq $push162=, $pop2, $pop161
- br_if 0, $pop162 # 0: down to label1
+ i32.store $discard=, should_optimize($pop94), $pop0
+ i32.const $push93=, 0
+ i32.load $push1=, stdout($pop93)
+ i32.const $push92=, .L.str
+ i32.const $push91=, 0
+ i32.call $discard=, __fprintf_chk@FUNCTION, $pop1, $0, $pop92, $pop91
+ block
+ i32.const $push90=, 0
+ i32.load $push2=, should_optimize($pop90)
+ i32.const $push178=, 0
+ i32.eq $push179=, $pop2, $pop178
+ br_if 0, $pop179 # 0: down to label1
# BB#1: # %if.end
- i32.const $push85=, 0
- i32.const $push84=, 0
- i32.store $push3=, should_optimize($pop85), $pop84
- i32.load $push4=, stdout($pop3)
- i32.const $push83=, .L.str
- i32.call $0=, __fprintf_chk@FUNCTION, $pop4, $0, $pop83
- block
- i32.const $push5=, 5
- i32.ne $push6=, $0, $pop5
- br_if 0, $pop6 # 0: down to label2
+ block
+ i32.const $push98=, 0
+ i32.const $push97=, 0
+ i32.store $push3=, should_optimize($pop98), $pop97
+ tee_local $push96=, $0=, $pop3
+ i32.load $push4=, stdout($pop96)
+ i32.const $push95=, .L.str
+ i32.call $push5=, __fprintf_chk@FUNCTION, $pop4, $0, $pop95, $0
+ i32.const $push6=, 5
+ i32.ne $push7=, $pop5, $pop6
+ br_if 0, $pop7 # 0: down to label2
# BB#2: # %if.end3
block
- i32.const $push86=, 0
- i32.load $push7=, should_optimize($pop86)
- i32.const $push163=, 0
- i32.eq $push164=, $pop7, $pop163
- br_if 0, $pop164 # 0: down to label3
+ i32.const $push99=, 0
+ i32.load $push8=, should_optimize($pop99)
+ i32.const $push180=, 0
+ i32.eq $push181=, $pop8, $pop180
+ br_if 0, $pop181 # 0: down to label3
# BB#3: # %if.end6
- i32.const $push90=, 0
- i32.const $push8=, 1
- i32.store $discard=, should_optimize($pop90), $pop8
- i32.const $push89=, 0
- i32.load $push9=, stdout($pop89)
- i32.const $push88=, .L.str.1
- i32.call $discard=, __fprintf_chk@FUNCTION, $pop9, $0, $pop88
- block
- i32.const $push87=, 0
- i32.load $push10=, should_optimize($pop87)
- i32.const $push165=, 0
- i32.eq $push166=, $pop10, $pop165
- br_if 0, $pop166 # 0: down to label4
+ i32.const $push104=, 0
+ i32.const $push9=, 1
+ i32.store $discard=, should_optimize($pop104), $pop9
+ i32.const $push103=, 0
+ i32.load $push10=, stdout($pop103)
+ i32.const $push102=, .L.str.1
+ i32.const $push101=, 0
+ i32.call $discard=, __fprintf_chk@FUNCTION, $pop10, $0, $pop102, $pop101
+ block
+ i32.const $push100=, 0
+ i32.load $push11=, should_optimize($pop100)
+ i32.const $push182=, 0
+ i32.eq $push183=, $pop11, $pop182
+ br_if 0, $pop183 # 0: down to label4
# BB#4: # %if.end10
- i32.const $push11=, 0
- i32.const $push93=, 0
- i32.store $push12=, should_optimize($pop11), $pop93
- tee_local $push92=, $1=, $pop12
- i32.load $push13=, stdout($pop92)
- i32.const $push91=, .L.str.1
- i32.call $0=, __fprintf_chk@FUNCTION, $pop13, $0, $pop91
- block
- i32.const $push14=, 6
- i32.ne $push15=, $0, $pop14
- br_if 0, $pop15 # 0: down to label5
+ block
+ i32.const $push12=, 0
+ i32.const $push107=, 0
+ i32.store $push13=, should_optimize($pop12), $pop107
+ tee_local $push106=, $0=, $pop13
+ i32.load $push14=, stdout($pop106)
+ i32.const $push105=, .L.str.1
+ i32.call $push15=, __fprintf_chk@FUNCTION, $pop14, $0, $pop105, $0
+ i32.const $push16=, 6
+ i32.ne $push17=, $pop15, $pop16
+ br_if 0, $pop17 # 0: down to label5
# BB#5: # %if.end14
block
- i32.load $push16=, should_optimize($1)
- i32.const $push167=, 0
- i32.eq $push168=, $pop16, $pop167
- br_if 0, $pop168 # 0: down to label6
+ i32.load $push18=, should_optimize($0)
+ i32.const $push184=, 0
+ i32.eq $push185=, $pop18, $pop184
+ br_if 0, $pop185 # 0: down to label6
# BB#6: # %if.end17
- i32.const $push97=, 0
- i32.const $push17=, 1
- i32.store $0=, should_optimize($pop97), $pop17
- i32.const $push96=, 0
- i32.load $push18=, stdout($pop96)
- i32.const $push95=, .L.str.2
- i32.call $discard=, __fprintf_chk@FUNCTION, $pop18, $0, $pop95
+ i32.const $push112=, 0
+ i32.const $push19=, 1
+ i32.store $0=, should_optimize($pop112), $pop19
+ i32.const $push111=, 0
+ i32.load $push20=, stdout($pop111)
+ i32.const $push110=, .L.str.2
+ i32.const $push109=, 0
+ i32.call $discard=, __fprintf_chk@FUNCTION, $pop20, $0, $pop110, $pop109
block
- i32.const $push94=, 0
- i32.load $push19=, should_optimize($pop94)
- i32.const $push169=, 0
- i32.eq $push170=, $pop19, $pop169
- br_if 0, $pop170 # 0: down to label7
+ i32.const $push108=, 0
+ i32.load $push21=, should_optimize($pop108)
+ i32.const $push186=, 0
+ i32.eq $push187=, $pop21, $pop186
+ br_if 0, $pop187 # 0: down to label7
# BB#7: # %if.end21
- i32.const $push100=, 0
- i32.const $push99=, 0
- i32.store $push20=, should_optimize($pop100), $pop99
- i32.load $push21=, stdout($pop20)
- i32.const $push98=, .L.str.2
- i32.call $1=, __fprintf_chk@FUNCTION, $pop21, $0, $pop98
block
- i32.ne $push22=, $1, $0
- br_if 0, $pop22 # 0: down to label8
+ i32.const $push116=, 0
+ i32.const $push115=, 0
+ i32.store $push22=, should_optimize($pop116), $pop115
+ tee_local $push114=, $1=, $pop22
+ i32.load $push23=, stdout($pop114)
+ i32.const $push113=, .L.str.2
+ i32.call $push24=, __fprintf_chk@FUNCTION, $pop23, $0, $pop113, $1
+ i32.ne $push25=, $pop24, $0
+ br_if 0, $pop25 # 0: down to label8
# BB#8: # %if.end25
block
- i32.const $push101=, 0
- i32.load $push23=, should_optimize($pop101)
- i32.const $push171=, 0
- i32.eq $push172=, $pop23, $pop171
- br_if 0, $pop172 # 0: down to label9
+ i32.const $push117=, 0
+ i32.load $push26=, should_optimize($pop117)
+ i32.const $push188=, 0
+ i32.eq $push189=, $pop26, $pop188
+ br_if 0, $pop189 # 0: down to label9
# BB#9: # %if.end28
- i32.const $push105=, 0
- i32.const $push24=, 1
- i32.store $discard=, should_optimize($pop105), $pop24
- i32.const $push104=, 0
- i32.load $push25=, stdout($pop104)
- i32.const $push103=, .L.str.3
- i32.call $discard=, __fprintf_chk@FUNCTION, $pop25, $0, $pop103
+ i32.const $push122=, 0
+ i32.const $push27=, 1
+ i32.store $discard=, should_optimize($pop122), $pop27
+ i32.const $push121=, 0
+ i32.load $push28=, stdout($pop121)
+ i32.const $push120=, .L.str.3
+ i32.const $push119=, 0
+ i32.call $discard=, __fprintf_chk@FUNCTION, $pop28, $0, $pop120, $pop119
block
- i32.const $push102=, 0
- i32.load $push26=, should_optimize($pop102)
- i32.const $push173=, 0
- i32.eq $push174=, $pop26, $pop173
- br_if 0, $pop174 # 0: down to label10
+ i32.const $push118=, 0
+ i32.load $push29=, should_optimize($pop118)
+ i32.const $push190=, 0
+ i32.eq $push191=, $pop29, $pop190
+ br_if 0, $pop191 # 0: down to label10
# BB#10: # %if.end32
- i32.const $push27=, 0
- i32.const $push108=, 0
- i32.store $push28=, should_optimize($pop27), $pop108
- tee_local $push107=, $1=, $pop28
- i32.load $push29=, stdout($pop107)
- i32.const $push106=, .L.str.3
- i32.call $0=, __fprintf_chk@FUNCTION, $pop29, $0, $pop106
block
- br_if 0, $0 # 0: down to label11
+ i32.const $push30=, 0
+ i32.const $push125=, 0
+ i32.store $push31=, should_optimize($pop30), $pop125
+ tee_local $push124=, $0=, $pop31
+ i32.load $push32=, stdout($pop124)
+ i32.const $push123=, .L.str.3
+ i32.call $push33=, __fprintf_chk@FUNCTION, $pop32, $0, $pop123, $0
+ br_if 0, $pop33 # 0: down to label11
# BB#11: # %if.end36
block
- i32.load $push30=, should_optimize($1)
- i32.const $push175=, 0
- i32.eq $push176=, $pop30, $pop175
- br_if 0, $pop176 # 0: down to label12
+ i32.load $push34=, should_optimize($0)
+ i32.const $push192=, 0
+ i32.eq $push193=, $pop34, $pop192
+ br_if 0, $pop193 # 0: down to label12
# BB#12: # %if.end39
- i32.const $push112=, 0
- i32.const $push31=, 1
- i32.store $discard=, should_optimize($pop112), $pop31
- i32.const $push111=, 0
- i32.load $0=, stdout($pop111)
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.sub $62=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $62=, 0($4), $62
- i32.const $push32=, .L.str
- i32.store $1=, 0($62), $pop32
- i32.const $push110=, .L.str.4
- i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop110
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.add $62=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $62=, 0($6), $62
+ i32.const $push129=, 0
+ i32.const $push35=, 1
+ i32.store $discard=, should_optimize($pop129), $pop35
+ i32.const $push128=, 0
+ i32.load $0=, stdout($pop128)
+ i32.const $push36=, .L.str
+ i32.store $1=, 208($19):p2align=4, $pop36
+ i32.const $push127=, .L.str.4
+ i32.const $6=, 208
+ i32.add $6=, $19, $6
+ i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop127, $6
block
- i32.const $push109=, 0
- i32.load $push33=, should_optimize($pop109)
- i32.const $push177=, 0
- i32.eq $push178=, $pop33, $pop177
- br_if 0, $pop178 # 0: down to label13
+ i32.const $push126=, 0
+ i32.load $push37=, should_optimize($pop126)
+ i32.const $push194=, 0
+ i32.eq $push195=, $pop37, $pop194
+ br_if 0, $pop195 # 0: down to label13
# BB#13: # %if.end43
- i32.const $push115=, 0
- i32.const $push114=, 0
- i32.store $push34=, should_optimize($pop115), $pop114
- i32.load $0=, stdout($pop34)
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.sub $62=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $62=, 0($8), $62
- i32.store $discard=, 0($62), $1
- i32.const $push113=, .L.str.4
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop113
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.add $62=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $62=, 0($10), $62
- block
- i32.const $push35=, 5
- i32.ne $push36=, $0, $pop35
- br_if 0, $pop36 # 0: down to label14
+ i32.const $push132=, 0
+ i32.const $push131=, 0
+ i32.store $push38=, should_optimize($pop132), $pop131
+ i32.load $0=, stdout($pop38)
+ i32.store $discard=, 192($19):p2align=4, $1
+ i32.const $push130=, .L.str.4
+ i32.const $7=, 192
+ i32.add $7=, $19, $7
+ block
+ i32.call $push39=, __fprintf_chk@FUNCTION, $0, $0, $pop130, $7
+ i32.const $push40=, 5
+ i32.ne $push41=, $pop39, $pop40
+ br_if 0, $pop41 # 0: down to label14
# BB#14: # %if.end47
block
- i32.const $push116=, 0
- i32.load $push37=, should_optimize($pop116)
- i32.const $push179=, 0
- i32.eq $push180=, $pop37, $pop179
- br_if 0, $pop180 # 0: down to label15
+ i32.const $push133=, 0
+ i32.load $push42=, should_optimize($pop133)
+ i32.const $push196=, 0
+ i32.eq $push197=, $pop42, $pop196
+ br_if 0, $pop197 # 0: down to label15
# BB#15: # %if.end50
- i32.const $push120=, 0
- i32.const $push38=, 1
- i32.store $discard=, should_optimize($pop120), $pop38
- i32.const $push119=, 0
- i32.load $0=, stdout($pop119)
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.sub $62=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $62=, 0($12), $62
- i32.const $push39=, .L.str.1
- i32.store $1=, 0($62), $pop39
- i32.const $push118=, .L.str.4
- i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop118
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.add $62=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $62=, 0($14), $62
+ i32.const $push137=, 0
+ i32.const $push43=, 1
+ i32.store $discard=, should_optimize($pop137), $pop43
+ i32.const $push136=, 0
+ i32.load $0=, stdout($pop136)
+ i32.const $push44=, .L.str.1
+ i32.store $1=, 176($19):p2align=4, $pop44
+ i32.const $push135=, .L.str.4
+ i32.const $8=, 176
+ i32.add $8=, $19, $8
+ i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop135, $8
block
- i32.const $push117=, 0
- i32.load $push40=, should_optimize($pop117)
- i32.const $push181=, 0
- i32.eq $push182=, $pop40, $pop181
- br_if 0, $pop182 # 0: down to label16
+ i32.const $push134=, 0
+ i32.load $push45=, should_optimize($pop134)
+ i32.const $push198=, 0
+ i32.eq $push199=, $pop45, $pop198
+ br_if 0, $pop199 # 0: down to label16
# BB#16: # %if.end54
- i32.const $push41=, 0
- i32.const $push123=, 0
- i32.store $push42=, should_optimize($pop41), $pop123
- tee_local $push122=, $2=, $pop42
- i32.load $0=, stdout($pop122)
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.sub $62=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $62=, 0($16), $62
- i32.store $discard=, 0($62), $1
- i32.const $push121=, .L.str.4
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop121
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.add $62=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $62=, 0($18), $62
- block
- i32.const $push43=, 6
- i32.ne $push44=, $0, $pop43
- br_if 0, $pop44 # 0: down to label17
+ i32.const $push46=, 0
+ i32.const $push140=, 0
+ i32.store $push47=, should_optimize($pop46), $pop140
+ tee_local $push139=, $2=, $pop47
+ i32.load $0=, stdout($pop139)
+ i32.store $discard=, 160($19):p2align=4, $1
+ i32.const $push138=, .L.str.4
+ i32.const $9=, 160
+ i32.add $9=, $19, $9
+ block
+ i32.call $push48=, __fprintf_chk@FUNCTION, $0, $0, $pop138, $9
+ i32.const $push49=, 6
+ i32.ne $push50=, $pop48, $pop49
+ br_if 0, $pop50 # 0: down to label17
# BB#17: # %if.end58
block
- i32.load $push45=, should_optimize($2)
- i32.const $push183=, 0
- i32.eq $push184=, $pop45, $pop183
- br_if 0, $pop184 # 0: down to label18
+ i32.load $push51=, should_optimize($2)
+ i32.const $push200=, 0
+ i32.eq $push201=, $pop51, $pop200
+ br_if 0, $pop201 # 0: down to label18
# BB#18: # %if.end61
- i32.const $push127=, 0
- i32.const $push46=, 1
- i32.store $1=, should_optimize($pop127), $pop46
- i32.const $push126=, 0
- i32.load $0=, stdout($pop126)
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.sub $62=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $62=, 0($20), $62
- i32.const $push47=, .L.str.2
- i32.store $2=, 0($62), $pop47
- i32.const $push125=, .L.str.4
- i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop125
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.add $62=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $62=, 0($22), $62
- block
- i32.const $push124=, 0
- i32.load $push48=, should_optimize($pop124)
- i32.const $push185=, 0
- i32.eq $push186=, $pop48, $pop185
- br_if 0, $pop186 # 0: down to label19
+ i32.const $push144=, 0
+ i32.const $push52=, 1
+ i32.store $1=, should_optimize($pop144), $pop52
+ i32.const $push143=, 0
+ i32.load $0=, stdout($pop143)
+ i32.const $push53=, .L.str.2
+ i32.store $2=, 144($19):p2align=4, $pop53
+ i32.const $push142=, .L.str.4
+ i32.const $10=, 144
+ i32.add $10=, $19, $10
+ i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop142, $10
+ block
+ i32.const $push141=, 0
+ i32.load $push54=, should_optimize($pop141)
+ i32.const $push202=, 0
+ i32.eq $push203=, $pop54, $pop202
+ br_if 0, $pop203 # 0: down to label19
# BB#19: # %if.end65
- i32.const $push130=, 0
- i32.const $push129=, 0
- i32.store $push49=, should_optimize($pop130), $pop129
- i32.load $0=, stdout($pop49)
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.sub $62=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $62=, 0($24), $62
- i32.store $discard=, 0($62), $2
- i32.const $push128=, .L.str.4
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop128
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.add $62=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $62=, 0($26), $62
- block
- i32.ne $push50=, $0, $1
- br_if 0, $pop50 # 0: down to label20
+ i32.const $push147=, 0
+ i32.const $push146=, 0
+ i32.store $push55=, should_optimize($pop147), $pop146
+ i32.load $0=, stdout($pop55)
+ i32.store $discard=, 128($19):p2align=4, $2
+ i32.const $push145=, .L.str.4
+ i32.const $11=, 128
+ i32.add $11=, $19, $11
+ block
+ i32.call $push56=, __fprintf_chk@FUNCTION, $0, $0, $pop145, $11
+ i32.ne $push57=, $pop56, $1
+ br_if 0, $pop57 # 0: down to label20
# BB#20: # %if.end69
block
- i32.const $push131=, 0
- i32.load $push51=, should_optimize($pop131)
- i32.const $push187=, 0
- i32.eq $push188=, $pop51, $pop187
- br_if 0, $pop188 # 0: down to label21
+ i32.const $push148=, 0
+ i32.load $push58=, should_optimize($pop148)
+ i32.const $push204=, 0
+ i32.eq $push205=, $pop58, $pop204
+ br_if 0, $pop205 # 0: down to label21
# BB#21: # %if.end72
- i32.const $push135=, 0
- i32.const $push52=, 1
- i32.store $discard=, should_optimize($pop135), $pop52
- i32.const $push134=, 0
- i32.load $0=, stdout($pop134)
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.sub $62=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $62=, 0($28), $62
- i32.const $push53=, .L.str.3
- i32.store $1=, 0($62), $pop53
- i32.const $push133=, .L.str.4
- i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop133
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 4
- i32.add $62=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $62=, 0($30), $62
+ i32.const $push152=, 0
+ i32.const $push59=, 1
+ i32.store $discard=, should_optimize($pop152), $pop59
+ i32.const $push151=, 0
+ i32.load $0=, stdout($pop151)
+ i32.const $push60=, .L.str.3
+ i32.store $1=, 112($19):p2align=4, $pop60
+ i32.const $push150=, .L.str.4
+ i32.const $12=, 112
+ i32.add $12=, $19, $12
+ i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop150, $12
block
- i32.const $push132=, 0
- i32.load $push54=, should_optimize($pop132)
- i32.const $push189=, 0
- i32.eq $push190=, $pop54, $pop189
- br_if 0, $pop190 # 0: down to label22
+ i32.const $push149=, 0
+ i32.load $push61=, should_optimize($pop149)
+ i32.const $push206=, 0
+ i32.eq $push207=, $pop61, $pop206
+ br_if 0, $pop207 # 0: down to label22
# BB#22: # %if.end76
- i32.const $push55=, 0
- i32.const $push138=, 0
- i32.store $push56=, should_optimize($pop55), $pop138
- tee_local $push137=, $2=, $pop56
- i32.load $0=, stdout($pop137)
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 4
- i32.sub $62=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $62=, 0($32), $62
- i32.store $discard=, 0($62), $1
- i32.const $push136=, .L.str.4
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop136
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 4
- i32.add $62=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $62=, 0($34), $62
- block
- br_if 0, $0 # 0: down to label23
+ i32.const $push62=, 0
+ i32.const $push155=, 0
+ i32.store $push63=, should_optimize($pop62), $pop155
+ tee_local $push154=, $2=, $pop63
+ i32.load $0=, stdout($pop154)
+ i32.store $discard=, 96($19):p2align=4, $1
+ i32.const $push153=, .L.str.4
+ i32.const $13=, 96
+ i32.add $13=, $19, $13
+ block
+ i32.call $push64=, __fprintf_chk@FUNCTION, $0, $0, $pop153, $13
+ br_if 0, $pop64 # 0: down to label23
# BB#23: # %if.end80
block
- i32.load $push57=, should_optimize($2)
- i32.const $push191=, 0
- i32.eq $push192=, $pop57, $pop191
- br_if 0, $pop192 # 0: down to label24
+ i32.load $push65=, should_optimize($2)
+ i32.const $push208=, 0
+ i32.eq $push209=, $pop65, $pop208
+ br_if 0, $pop209 # 0: down to label24
# BB#24: # %if.end83
- i32.const $push142=, 0
- i32.const $push58=, 1
- i32.store $1=, should_optimize($pop142), $pop58
- i32.const $push141=, 0
- i32.load $0=, stdout($pop141)
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 4
- i32.sub $62=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $62=, 0($36), $62
- i32.const $push59=, 120
- i32.store $2=, 0($62), $pop59
- i32.const $push140=, .L.str.5
- i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop140
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 4
- i32.add $62=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $62=, 0($38), $62
- block
- i32.const $push139=, 0
- i32.load $push60=, should_optimize($pop139)
- i32.const $push193=, 0
- i32.eq $push194=, $pop60, $pop193
- br_if 0, $pop194 # 0: down to label25
+ i32.const $push159=, 0
+ i32.const $push66=, 1
+ i32.store $1=, should_optimize($pop159), $pop66
+ i32.const $push158=, 0
+ i32.load $0=, stdout($pop158)
+ i32.const $push67=, 120
+ i32.store $2=, 80($19):p2align=4, $pop67
+ i32.const $push157=, .L.str.5
+ i32.const $14=, 80
+ i32.add $14=, $19, $14
+ i32.call $discard=, __fprintf_chk@FUNCTION, $0, $0, $pop157, $14
+ block
+ i32.const $push156=, 0
+ i32.load $push68=, should_optimize($pop156)
+ i32.const $push210=, 0
+ i32.eq $push211=, $pop68, $pop210
+ br_if 0, $pop211 # 0: down to label25
# BB#25: # %if.end87
- i32.const $push145=, 0
- i32.const $push144=, 0
- i32.store $push61=, should_optimize($pop145), $pop144
- i32.load $0=, stdout($pop61)
- i32.const $39=, __stack_pointer
- i32.load $39=, 0($39)
- i32.const $40=, 4
- i32.sub $62=, $39, $40
- i32.const $40=, __stack_pointer
- i32.store $62=, 0($40), $62
- i32.store $discard=, 0($62), $2
- i32.const $push143=, .L.str.5
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop143
- i32.const $41=, __stack_pointer
- i32.load $41=, 0($41)
- i32.const $42=, 4
- i32.add $62=, $41, $42
- i32.const $42=, __stack_pointer
- i32.store $62=, 0($42), $62
- block
- i32.ne $push62=, $0, $1
- br_if 0, $pop62 # 0: down to label26
+ i32.const $push162=, 0
+ i32.const $push161=, 0
+ i32.store $push69=, should_optimize($pop162), $pop161
+ i32.load $0=, stdout($pop69)
+ i32.store $discard=, 64($19):p2align=4, $2
+ i32.const $push160=, .L.str.5
+ i32.const $15=, 64
+ i32.add $15=, $19, $15
+ block
+ i32.call $push70=, __fprintf_chk@FUNCTION, $0, $0, $pop160, $15
+ i32.ne $push71=, $pop70, $1
+ br_if 0, $pop71 # 0: down to label26
# BB#26: # %if.end91
block
- i32.const $push146=, 0
- i32.load $push63=, should_optimize($pop146)
- i32.const $push195=, 0
- i32.eq $push196=, $pop63, $pop195
- br_if 0, $pop196 # 0: down to label27
+ i32.const $push163=, 0
+ i32.load $push72=, should_optimize($pop163)
+ i32.const $push212=, 0
+ i32.eq $push213=, $pop72, $pop212
+ br_if 0, $pop213 # 0: down to label27
# BB#27: # %if.end94
- i32.const $push150=, 0
- i32.const $push149=, 0
- i32.store $push64=, should_optimize($pop150), $pop149
- tee_local $push148=, $0=, $pop64
- i32.load $1=, stdout($pop148)
- i32.const $43=, __stack_pointer
- i32.load $43=, 0($43)
- i32.const $44=, 4
- i32.sub $62=, $43, $44
- i32.const $44=, __stack_pointer
- i32.store $62=, 0($44), $62
- i32.const $push65=, .L.str.1
- i32.store $2=, 0($62), $pop65
- i32.const $push147=, .L.str.6
- i32.call $discard=, __fprintf_chk@FUNCTION, $1, $0, $pop147
- i32.const $45=, __stack_pointer
- i32.load $45=, 0($45)
- i32.const $46=, 4
- i32.add $62=, $45, $46
- i32.const $46=, __stack_pointer
- i32.store $62=, 0($46), $62
- block
- i32.load $push66=, should_optimize($0)
- i32.const $push197=, 0
- i32.eq $push198=, $pop66, $pop197
- br_if 0, $pop198 # 0: down to label28
+ i32.const $push167=, 0
+ i32.const $push166=, 0
+ i32.store $push73=, should_optimize($pop167), $pop166
+ tee_local $push165=, $0=, $pop73
+ i32.load $1=, stdout($pop165)
+ i32.const $push74=, .L.str.1
+ i32.store $2=, 48($19):p2align=4, $pop74
+ i32.const $push164=, .L.str.6
+ i32.const $16=, 48
+ i32.add $16=, $19, $16
+ i32.call $discard=, __fprintf_chk@FUNCTION, $1, $0, $pop164, $16
+ block
+ i32.load $push75=, should_optimize($0)
+ i32.const $push214=, 0
+ i32.eq $push215=, $pop75, $pop214
+ br_if 0, $pop215 # 0: down to label28
# BB#28: # %if.end98
- i32.const $push67=, 0
- i32.const $push153=, 0
- i32.store $push68=, should_optimize($pop67), $pop153
- tee_local $push152=, $1=, $pop68
- i32.load $0=, stdout($pop152)
- i32.const $47=, __stack_pointer
- i32.load $47=, 0($47)
- i32.const $48=, 4
- i32.sub $62=, $47, $48
- i32.const $48=, __stack_pointer
- i32.store $62=, 0($48), $62
- i32.store $discard=, 0($62), $2
- i32.const $push151=, .L.str.6
- i32.call $0=, __fprintf_chk@FUNCTION, $0, $0, $pop151
- i32.const $49=, __stack_pointer
- i32.load $49=, 0($49)
- i32.const $50=, 4
- i32.add $62=, $49, $50
- i32.const $50=, __stack_pointer
- i32.store $62=, 0($50), $62
- block
- i32.const $push69=, 7
- i32.ne $push70=, $0, $pop69
- br_if 0, $pop70 # 0: down to label29
+ i32.const $push76=, 0
+ i32.const $push170=, 0
+ i32.store $push77=, should_optimize($pop76), $pop170
+ tee_local $push169=, $1=, $pop77
+ i32.load $0=, stdout($pop169)
+ i32.store $discard=, 32($19):p2align=4, $2
+ i32.const $push168=, .L.str.6
+ i32.const $17=, 32
+ i32.add $17=, $19, $17
+ block
+ i32.call $push78=, __fprintf_chk@FUNCTION, $0, $0, $pop168, $17
+ i32.const $push79=, 7
+ i32.ne $push80=, $pop78, $pop79
+ br_if 0, $pop80 # 0: down to label29
# BB#29: # %if.end102
block
- i32.load $push71=, should_optimize($1)
- i32.const $push199=, 0
- i32.eq $push200=, $pop71, $pop199
- br_if 0, $pop200 # 0: down to label30
+ i32.load $push81=, should_optimize($1)
+ i32.const $push216=, 0
+ i32.eq $push217=, $pop81, $pop216
+ br_if 0, $pop217 # 0: down to label30
# BB#30: # %if.end105
- i32.const $push72=, 0
- i32.const $push156=, 0
- i32.store $push73=, should_optimize($pop72), $pop156
- tee_local $push155=, $0=, $pop73
- i32.load $1=, stdout($pop155)
- i32.const $51=, __stack_pointer
- i32.load $51=, 0($51)
- i32.const $52=, 4
- i32.sub $62=, $51, $52
- i32.const $52=, __stack_pointer
- i32.store $62=, 0($52), $62
- i32.store $discard=, 0($62), $0
- i32.const $push154=, .L.str.7
- i32.call $discard=, __fprintf_chk@FUNCTION, $1, $0, $pop154
- i32.const $53=, __stack_pointer
- i32.load $53=, 0($53)
- i32.const $54=, 4
- i32.add $62=, $53, $54
- i32.const $54=, __stack_pointer
- i32.store $62=, 0($54), $62
- block
- i32.load $push74=, should_optimize($0)
- i32.const $push201=, 0
- i32.eq $push202=, $pop74, $pop201
- br_if 0, $pop202 # 0: down to label31
+ i32.const $push82=, 0
+ i32.const $push173=, 0
+ i32.store $push83=, should_optimize($pop82), $pop173
+ tee_local $push172=, $0=, $pop83
+ i32.load $1=, stdout($pop172)
+ i32.store $discard=, 16($19):p2align=4, $0
+ i32.const $push171=, .L.str.7
+ i32.const $18=, 16
+ i32.add $18=, $19, $18
+ i32.call $discard=, __fprintf_chk@FUNCTION, $1, $0, $pop171, $18
+ block
+ i32.load $push84=, should_optimize($0)
+ i32.const $push218=, 0
+ i32.eq $push219=, $pop84, $pop218
+ br_if 0, $pop219 # 0: down to label31
# BB#31: # %if.end109
- i32.store $push75=, should_optimize($0), $0
- tee_local $push158=, $0=, $pop75
- i32.load $1=, stdout($pop158)
- i32.const $55=, __stack_pointer
- i32.load $55=, 0($55)
- i32.const $56=, 4
- i32.sub $62=, $55, $56
- i32.const $56=, __stack_pointer
- i32.store $62=, 0($56), $62
- i32.store $discard=, 0($62), $0
- i32.const $push157=, .L.str.7
- i32.call $0=, __fprintf_chk@FUNCTION, $1, $0, $pop157
- i32.const $57=, __stack_pointer
- i32.load $57=, 0($57)
- i32.const $58=, 4
- i32.add $62=, $57, $58
- i32.const $58=, __stack_pointer
- i32.store $62=, 0($58), $62
- block
- i32.const $push76=, 2
- i32.ne $push77=, $0, $pop76
- br_if 0, $pop77 # 0: down to label32
+ i32.store $push85=, should_optimize($0), $0
+ tee_local $push175=, $0=, $pop85
+ i32.load $1=, stdout($pop175)
+ i32.store $discard=, 0($19):p2align=4, $0
+ block
+ i32.const $push174=, .L.str.7
+ i32.call $push86=, __fprintf_chk@FUNCTION, $1, $0, $pop174, $19
+ i32.const $push87=, 2
+ i32.ne $push88=, $pop86, $pop87
+ br_if 0, $pop88 # 0: down to label32
# BB#32: # %if.end113
block
- i32.const $push159=, 0
- i32.load $push78=, should_optimize($pop159)
- i32.const $push203=, 0
- i32.eq $push204=, $pop78, $pop203
- br_if 0, $pop204 # 0: down to label33
+ i32.const $push176=, 0
+ i32.load $push89=, should_optimize($pop176)
+ i32.const $push220=, 0
+ i32.eq $push221=, $pop89, $pop220
+ br_if 0, $pop221 # 0: down to label33
# BB#33: # %if.end116
- i32.const $push160=, 0
- i32.const $61=, 16
- i32.add $62=, $62, $61
- i32.const $61=, __stack_pointer
- i32.store $62=, 0($61), $62
- return $pop160
+ i32.const $push177=, 0
+ i32.const $5=, 224
+ i32.add $19=, $19, $5
+ i32.const $5=, __stack_pointer
+ i32.store $19=, 0($5), $19
+ return $pop177
.LBB1_34: # %if.then115
end_block # label33:
call abort@FUNCTION
diff --git a/test/torture-s/gofast.c.s b/test/torture-s/gofast.c.s
index c974cd280..a29532c28 100644
--- a/test/torture-s/gofast.c.s
+++ b/test/torture-s/gofast.c.s
@@ -427,14 +427,14 @@ fixunsdfsi: # @fixunsdfsi
fail: # @fail
.param i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $9=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $9=, 0($7), $9
+ i32.const $2=, __stack_pointer
+ 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 $push0=, 0
i32.load $1=, stderr($pop0)
i32.const $push6=, 0
@@ -443,25 +443,13 @@ fail: # @fail
i32.const $push2=, 1
i32.add $push3=, $pop1, $pop2
i32.store $discard=, fail_count($pop6), $pop3
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.sub $9=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $9=, 0($3), $9
- i32.store $discard=, 0($9), $0
+ i32.store $discard=, 0($5):p2align=4, $0
i32.const $push4=, .L.str
- i32.call $discard=, fprintf@FUNCTION, $1, $pop4
+ i32.call $discard=, fprintf@FUNCTION, $1, $pop4, $5
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.add $9=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $9=, 0($5), $9
- i32.const $8=, 16
- i32.add $9=, $9, $8
- i32.const $8=, __stack_pointer
- i32.store $9=, 0($8), $9
+ i32.store $5=, 0($4), $5
return $0
.endfunc
.Lfunc_end30:
diff --git a/test/torture-s/loop-2f.c.s b/test/torture-s/loop-2f.c.s
index 91a4b30c3..be59ba00e 100644
--- a/test/torture-s/loop-2f.c.s
+++ b/test/torture-s/loop-2f.c.s
@@ -39,8 +39,9 @@ main: # @main
i32.const $push4=, 3
i32.const $push3=, 50
i32.const $push1=, .L.str
+ i32.const $push16=, 0
i32.const $push15=, 0
- i32.call $push2=, open@FUNCTION, $pop1, $pop15
+ i32.call $push2=, open@FUNCTION, $pop1, $pop16, $pop15
i32.const $push14=, 0
i32.call $push0=, mmap@FUNCTION, $pop6, $pop5, $pop4, $pop3, $pop2, $pop14
tee_local $push13=, $0=, $pop0
@@ -53,12 +54,12 @@ main: # @main
i32.const $push12=, 254
i32.const $push11=, 39
i32.call $discard=, memset@FUNCTION, $pop10, $pop12, $pop11
- i32.const $push16=, 0
- i32.store8 $discard=, 32805($0), $pop16
+ i32.const $push17=, 0
+ i32.store8 $discard=, 32805($0), $pop17
.LBB1_2: # %if.end15
end_block # label1:
- i32.const $push17=, 0
- call exit@FUNCTION, $pop17
+ i32.const $push18=, 0
+ call exit@FUNCTION, $pop18
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/loop-2g.c.s b/test/torture-s/loop-2g.c.s
index 6a60857d4..92d55011c 100644
--- a/test/torture-s/loop-2g.c.s
+++ b/test/torture-s/loop-2g.c.s
@@ -39,8 +39,9 @@ main: # @main
i32.const $push4=, 3
i32.const $push3=, 50
i32.const $push1=, .L.str
+ i32.const $push16=, 0
i32.const $push15=, 0
- i32.call $push2=, open@FUNCTION, $pop1, $pop15
+ i32.call $push2=, open@FUNCTION, $pop1, $pop16, $pop15
i32.const $push14=, 0
i32.call $push0=, mmap@FUNCTION, $pop6, $pop5, $pop4, $pop3, $pop2, $pop14
tee_local $push13=, $0=, $pop0
@@ -53,12 +54,12 @@ main: # @main
i32.const $push12=, 254
i32.const $push11=, 39
i32.call $discard=, memset@FUNCTION, $pop10, $pop12, $pop11
- i32.const $push16=, 0
- i32.store8 $discard=, 32805($0), $pop16
+ i32.const $push17=, 0
+ i32.store8 $discard=, 32805($0), $pop17
.LBB1_2: # %if.end15
end_block # label1:
- i32.const $push17=, 0
- call exit@FUNCTION, $pop17
+ i32.const $push18=, 0
+ call exit@FUNCTION, $pop18
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/multi-ix.c.s b/test/torture-s/multi-ix.c.s
index eeeb517c7..674151c18 100644
--- a/test/torture-s/multi-ix.c.s
+++ b/test/torture-s/multi-ix.c.s
@@ -6,14 +6,14 @@
.type f,@function
f: # @f
.param i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $54=, __stack_pointer
- i32.load $54=, 0($54)
- i32.const $55=, 80160
- i32.sub $217=, $54, $55
- i32.const $55=, __stack_pointer
- i32.store $217=, 0($55), $217
+ i32.const $41=, __stack_pointer
+ i32.load $41=, 0($41)
+ i32.const $42=, 80480
+ i32.sub $284=, $41, $42
+ i32.const $42=, __stack_pointer
+ i32.store $284=, 0($42), $284
block
i32.const $push0=, 1
i32.lt_s $push1=, $0, $pop0
@@ -21,932 +21,1056 @@ f: # @f
.LBB0_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label1:
- i32.const $42=, __stack_pointer
- i32.load $42=, 0($42)
- i32.const $43=, 160
- i32.sub $217=, $42, $43
- i32.const $43=, __stack_pointer
- i32.store $217=, 0($43), $217
- i32.const $57=, 78160
- i32.add $57=, $217, $57
- i32.store $discard=, 0($217), $57
- i32.const $push242=, 156
- i32.add $1=, $217, $pop242
- i32.const $58=, 160
- i32.add $58=, $217, $58
- i32.store $discard=, 0($1), $58
- i32.const $push241=, 152
- i32.add $1=, $217, $pop241
- i32.const $59=, 2160
- i32.add $59=, $217, $59
- i32.store $discard=, 0($1), $59
- i32.const $push240=, 148
- i32.add $1=, $217, $pop240
- i32.const $60=, 4160
- i32.add $60=, $217, $60
- i32.store $discard=, 0($1), $60
- i32.const $push239=, 144
- i32.add $1=, $217, $pop239
- i32.const $61=, 6160
- i32.add $61=, $217, $61
- i32.store $discard=, 0($1), $61
- i32.const $push238=, 140
- i32.add $1=, $217, $pop238
- i32.const $62=, 8160
- i32.add $62=, $217, $62
- i32.store $discard=, 0($1), $62
- i32.const $push237=, 136
- i32.add $1=, $217, $pop237
- i32.const $63=, 10160
- i32.add $63=, $217, $63
- i32.store $discard=, 0($1), $63
- i32.const $push236=, 132
- i32.add $1=, $217, $pop236
- i32.const $64=, 12160
- i32.add $64=, $217, $64
- i32.store $discard=, 0($1), $64
- i32.const $push235=, 128
- i32.add $1=, $217, $pop235
- i32.const $65=, 14160
- i32.add $65=, $217, $65
- i32.store $discard=, 0($1), $65
- i32.const $push234=, 124
- i32.add $1=, $217, $pop234
- i32.const $66=, 16160
- i32.add $66=, $217, $66
- i32.store $discard=, 0($1), $66
- i32.const $push233=, 120
- i32.add $1=, $217, $pop233
- i32.const $67=, 18160
- i32.add $67=, $217, $67
- i32.store $discard=, 0($1), $67
- i32.const $push232=, 116
- i32.add $1=, $217, $pop232
- i32.const $68=, 20160
- i32.add $68=, $217, $68
- i32.store $discard=, 0($1), $68
- i32.const $push231=, 112
- i32.add $1=, $217, $pop231
- i32.const $69=, 22160
- i32.add $69=, $217, $69
- i32.store $discard=, 0($1), $69
- i32.const $push230=, 108
- i32.add $1=, $217, $pop230
- i32.const $70=, 24160
- i32.add $70=, $217, $70
- i32.store $discard=, 0($1), $70
- i32.const $push229=, 104
- i32.add $1=, $217, $pop229
- i32.const $71=, 26160
- i32.add $71=, $217, $71
- i32.store $discard=, 0($1), $71
- i32.const $push228=, 100
- i32.add $1=, $217, $pop228
- i32.const $72=, 28160
- i32.add $72=, $217, $72
- i32.store $discard=, 0($1), $72
- i32.const $push227=, 96
- i32.add $1=, $217, $pop227
- i32.const $73=, 30160
- i32.add $73=, $217, $73
- i32.store $discard=, 0($1), $73
- i32.const $push226=, 92
- i32.add $1=, $217, $pop226
- i32.const $74=, 32160
- i32.add $74=, $217, $74
- i32.store $discard=, 0($1), $74
- i32.const $push225=, 88
- i32.add $1=, $217, $pop225
- i32.const $75=, 34160
- i32.add $75=, $217, $75
- i32.store $discard=, 0($1), $75
- i32.const $push224=, 84
- i32.add $1=, $217, $pop224
- i32.const $76=, 36160
- i32.add $76=, $217, $76
- i32.store $discard=, 0($1), $76
- i32.const $push223=, 80
- i32.add $1=, $217, $pop223
- i32.const $77=, 38160
- i32.add $77=, $217, $77
- i32.store $discard=, 0($1), $77
- i32.const $push222=, 76
- i32.add $1=, $217, $pop222
- i32.const $78=, 40160
- i32.add $78=, $217, $78
- i32.store $discard=, 0($1), $78
- i32.const $push221=, 72
- i32.add $1=, $217, $pop221
- i32.const $79=, 42160
- i32.add $79=, $217, $79
- i32.store $discard=, 0($1), $79
- i32.const $push220=, 68
- i32.add $1=, $217, $pop220
- i32.const $80=, 44160
- i32.add $80=, $217, $80
- i32.store $discard=, 0($1), $80
- i32.const $push219=, 64
- i32.add $1=, $217, $pop219
- i32.const $81=, 46160
- i32.add $81=, $217, $81
- i32.store $discard=, 0($1), $81
- i32.const $push218=, 60
- i32.add $1=, $217, $pop218
- i32.const $82=, 48160
- i32.add $82=, $217, $82
- i32.store $discard=, 0($1), $82
- i32.const $push217=, 56
- i32.add $1=, $217, $pop217
- i32.const $83=, 50160
- i32.add $83=, $217, $83
- i32.store $discard=, 0($1), $83
- i32.const $push216=, 52
- i32.add $1=, $217, $pop216
- i32.const $84=, 52160
- i32.add $84=, $217, $84
- i32.store $discard=, 0($1), $84
- i32.const $push215=, 48
- i32.add $1=, $217, $pop215
- i32.const $85=, 54160
- i32.add $85=, $217, $85
- i32.store $discard=, 0($1), $85
- i32.const $push214=, 44
- i32.add $1=, $217, $pop214
- i32.const $86=, 56160
- i32.add $86=, $217, $86
- i32.store $discard=, 0($1), $86
- i32.const $push213=, 40
- i32.add $1=, $217, $pop213
- i32.const $87=, 58160
- i32.add $87=, $217, $87
- i32.store $discard=, 0($1), $87
- i32.const $push212=, 36
- i32.add $1=, $217, $pop212
- i32.const $88=, 60160
- i32.add $88=, $217, $88
- i32.store $discard=, 0($1), $88
- i32.const $push211=, 32
- i32.add $1=, $217, $pop211
- i32.const $89=, 62160
- i32.add $89=, $217, $89
- i32.store $discard=, 0($1), $89
- i32.const $push210=, 28
- i32.add $1=, $217, $pop210
- i32.const $90=, 64160
- i32.add $90=, $217, $90
- i32.store $discard=, 0($1), $90
- i32.const $push209=, 24
- i32.add $1=, $217, $pop209
- i32.const $91=, 66160
- i32.add $91=, $217, $91
- i32.store $discard=, 0($1), $91
- i32.const $push208=, 20
- i32.add $1=, $217, $pop208
- i32.const $92=, 68160
- i32.add $92=, $217, $92
- i32.store $discard=, 0($1), $92
- i32.const $push207=, 16
- i32.add $1=, $217, $pop207
- i32.const $93=, 70160
- i32.add $93=, $217, $93
- i32.store $discard=, 0($1), $93
- i32.const $push206=, 12
- i32.add $1=, $217, $pop206
- i32.const $94=, 72160
- i32.add $94=, $217, $94
- i32.store $discard=, 0($1), $94
- i32.const $push205=, 8
- i32.add $1=, $217, $pop205
- i32.const $95=, 74160
- i32.add $95=, $217, $95
- i32.store $discard=, 0($1), $95
- i32.const $push204=, 4
- i32.add $1=, $217, $pop204
- i32.const $96=, 76160
- i32.add $96=, $217, $96
- i32.store $discard=, 0($1), $96
- i32.const $push203=, 40
- call s@FUNCTION, $pop203
- i32.const $44=, __stack_pointer
- i32.load $44=, 0($44)
- i32.const $45=, 160
- i32.add $217=, $44, $45
- i32.const $45=, __stack_pointer
- i32.store $217=, 0($45), $217
- i32.load $1=, 78160($217):p2align=4
- i32.load $2=, 76160($217):p2align=4
- i32.load $3=, 74160($217):p2align=4
- i32.load $4=, 72160($217):p2align=4
- i32.load $5=, 70160($217):p2align=4
- i32.load $6=, 68160($217):p2align=4
- i32.load $7=, 66160($217):p2align=4
- i32.load $8=, 64160($217):p2align=4
- i32.load $9=, 62160($217):p2align=4
- i32.load $10=, 60160($217):p2align=4
- i32.load $11=, 58160($217):p2align=4
- i32.load $12=, 56160($217):p2align=4
- i32.load $13=, 54160($217):p2align=4
- i32.load $14=, 52160($217):p2align=4
- i32.load $15=, 50160($217):p2align=4
- i32.load $16=, 48160($217):p2align=4
- i32.load $17=, 46160($217):p2align=4
- i32.load $18=, 44160($217):p2align=4
- i32.load $19=, 42160($217):p2align=4
- i32.load $20=, 40160($217):p2align=4
- i32.load $21=, 38160($217):p2align=4
- i32.load $22=, 36160($217):p2align=4
- i32.load $23=, 34160($217):p2align=4
- i32.load $24=, 32160($217):p2align=4
- i32.load $25=, 30160($217):p2align=4
- i32.load $26=, 28160($217):p2align=4
- i32.load $27=, 26160($217):p2align=4
- i32.load $28=, 24160($217):p2align=4
- i32.load $29=, 22160($217):p2align=4
- i32.load $30=, 20160($217):p2align=4
- i32.load $31=, 18160($217):p2align=4
- i32.load $32=, 16160($217):p2align=4
- i32.load $33=, 14160($217):p2align=4
- i32.load $34=, 12160($217):p2align=4
- i32.load $35=, 10160($217):p2align=4
- i32.load $36=, 8160($217):p2align=4
- i32.load $37=, 6160($217):p2align=4
- i32.load $38=, 4160($217):p2align=4
- i32.load $39=, 2160($217):p2align=4
- i32.load $40=, 160($217):p2align=4
- i32.const $46=, __stack_pointer
- i32.load $46=, 0($46)
- i32.const $47=, 160
- i32.sub $217=, $46, $47
- i32.const $47=, __stack_pointer
- i32.store $217=, 0($47), $217
- i32.const $97=, 78160
- i32.add $97=, $217, $97
- i32.store $discard=, 0($217), $97
- i32.const $push202=, 156
- i32.add $41=, $217, $pop202
- i32.const $98=, 160
- i32.add $98=, $217, $98
- i32.store $discard=, 0($41), $98
- i32.const $push201=, 152
- i32.add $41=, $217, $pop201
- i32.const $99=, 2160
- i32.add $99=, $217, $99
- i32.store $discard=, 0($41), $99
- i32.const $push200=, 148
- i32.add $41=, $217, $pop200
- i32.const $100=, 4160
- i32.add $100=, $217, $100
- i32.store $discard=, 0($41), $100
- i32.const $push199=, 144
- i32.add $41=, $217, $pop199
- i32.const $101=, 6160
- i32.add $101=, $217, $101
- i32.store $discard=, 0($41), $101
- i32.const $push198=, 140
- i32.add $41=, $217, $pop198
- i32.const $102=, 8160
- i32.add $102=, $217, $102
- i32.store $discard=, 0($41), $102
- i32.const $push197=, 136
- i32.add $41=, $217, $pop197
- i32.const $103=, 10160
- i32.add $103=, $217, $103
- i32.store $discard=, 0($41), $103
- i32.const $push196=, 132
- i32.add $41=, $217, $pop196
- i32.const $104=, 12160
- i32.add $104=, $217, $104
- i32.store $discard=, 0($41), $104
- i32.const $push195=, 128
- i32.add $41=, $217, $pop195
- i32.const $105=, 14160
- i32.add $105=, $217, $105
- i32.store $discard=, 0($41), $105
- i32.const $push194=, 124
- i32.add $41=, $217, $pop194
- i32.const $106=, 16160
- i32.add $106=, $217, $106
- i32.store $discard=, 0($41), $106
- i32.const $push193=, 120
- i32.add $41=, $217, $pop193
- i32.const $107=, 18160
- i32.add $107=, $217, $107
- i32.store $discard=, 0($41), $107
- i32.const $push192=, 116
- i32.add $41=, $217, $pop192
- i32.const $108=, 20160
- i32.add $108=, $217, $108
- i32.store $discard=, 0($41), $108
- i32.const $push191=, 112
- i32.add $41=, $217, $pop191
- i32.const $109=, 22160
- i32.add $109=, $217, $109
- i32.store $discard=, 0($41), $109
- i32.const $push190=, 108
- i32.add $41=, $217, $pop190
- i32.const $110=, 24160
- i32.add $110=, $217, $110
- i32.store $discard=, 0($41), $110
- i32.const $push189=, 104
- i32.add $41=, $217, $pop189
- i32.const $111=, 26160
- i32.add $111=, $217, $111
- i32.store $discard=, 0($41), $111
- i32.const $push188=, 100
- i32.add $41=, $217, $pop188
- i32.const $112=, 28160
- i32.add $112=, $217, $112
- i32.store $discard=, 0($41), $112
- i32.const $push187=, 96
- i32.add $41=, $217, $pop187
- i32.const $113=, 30160
- i32.add $113=, $217, $113
- i32.store $discard=, 0($41), $113
- i32.const $push186=, 92
- i32.add $41=, $217, $pop186
- i32.const $114=, 32160
- i32.add $114=, $217, $114
- i32.store $discard=, 0($41), $114
- i32.const $push185=, 88
- i32.add $41=, $217, $pop185
- i32.const $115=, 34160
- i32.add $115=, $217, $115
- i32.store $discard=, 0($41), $115
- i32.const $push184=, 84
- i32.add $41=, $217, $pop184
- i32.const $116=, 36160
- i32.add $116=, $217, $116
- i32.store $discard=, 0($41), $116
- i32.const $push183=, 80
- i32.add $41=, $217, $pop183
- i32.const $117=, 38160
- i32.add $117=, $217, $117
- i32.store $discard=, 0($41), $117
- i32.const $push182=, 76
- i32.add $41=, $217, $pop182
- i32.const $118=, 40160
- i32.add $118=, $217, $118
- i32.store $discard=, 0($41), $118
- i32.const $push181=, 72
- i32.add $41=, $217, $pop181
- i32.const $119=, 42160
- i32.add $119=, $217, $119
- i32.store $discard=, 0($41), $119
- i32.const $push180=, 68
- i32.add $41=, $217, $pop180
- i32.const $120=, 44160
- i32.add $120=, $217, $120
- i32.store $discard=, 0($41), $120
- i32.const $push179=, 64
- i32.add $41=, $217, $pop179
- i32.const $121=, 46160
- i32.add $121=, $217, $121
- i32.store $discard=, 0($41), $121
- i32.const $push178=, 60
- i32.add $41=, $217, $pop178
- i32.const $122=, 48160
- i32.add $122=, $217, $122
- i32.store $discard=, 0($41), $122
- i32.const $push177=, 56
- i32.add $41=, $217, $pop177
- i32.const $123=, 50160
- i32.add $123=, $217, $123
- i32.store $discard=, 0($41), $123
- i32.const $push176=, 52
- i32.add $41=, $217, $pop176
- i32.const $124=, 52160
- i32.add $124=, $217, $124
- i32.store $discard=, 0($41), $124
- i32.const $push175=, 48
- i32.add $41=, $217, $pop175
- i32.const $125=, 54160
- i32.add $125=, $217, $125
- i32.store $discard=, 0($41), $125
- i32.const $push174=, 44
- i32.add $41=, $217, $pop174
- i32.const $126=, 56160
- i32.add $126=, $217, $126
- i32.store $discard=, 0($41), $126
- i32.const $push173=, 40
- i32.add $41=, $217, $pop173
- i32.const $127=, 58160
- i32.add $127=, $217, $127
- i32.store $discard=, 0($41), $127
- i32.const $push172=, 36
- i32.add $41=, $217, $pop172
- i32.const $128=, 60160
- i32.add $128=, $217, $128
- i32.store $discard=, 0($41), $128
- i32.const $push171=, 32
- i32.add $41=, $217, $pop171
- i32.const $129=, 62160
- i32.add $129=, $217, $129
- i32.store $discard=, 0($41), $129
- i32.const $push170=, 28
- i32.add $41=, $217, $pop170
- i32.const $130=, 64160
- i32.add $130=, $217, $130
- i32.store $discard=, 0($41), $130
- i32.const $push169=, 24
- i32.add $41=, $217, $pop169
- i32.const $131=, 66160
- i32.add $131=, $217, $131
- i32.store $discard=, 0($41), $131
- i32.const $push168=, 20
- i32.add $41=, $217, $pop168
- i32.const $132=, 68160
- i32.add $132=, $217, $132
- i32.store $discard=, 0($41), $132
- i32.const $push167=, 16
- i32.add $41=, $217, $pop167
- i32.const $133=, 70160
- i32.add $133=, $217, $133
- i32.store $discard=, 0($41), $133
- i32.const $push166=, 12
- i32.add $41=, $217, $pop166
- i32.const $134=, 72160
- i32.add $134=, $217, $134
- i32.store $discard=, 0($41), $134
- i32.const $push165=, 8
- i32.add $41=, $217, $pop165
- i32.const $135=, 74160
- i32.add $135=, $217, $135
- i32.store $discard=, 0($41), $135
- i32.const $push164=, 4
- i32.add $41=, $217, $pop164
- i32.const $136=, 76160
- i32.add $136=, $217, $136
- i32.store $discard=, 0($41), $136
- i32.const $push163=, 40
- call z@FUNCTION, $pop163
- i32.const $48=, __stack_pointer
- i32.load $48=, 0($48)
- i32.const $49=, 160
- i32.add $217=, $48, $49
- i32.const $49=, __stack_pointer
- i32.store $217=, 0($49), $217
- i32.const $push162=, 2
- i32.shl $push2=, $1, $pop162
- i32.const $137=, 78160
- i32.add $137=, $217, $137
- i32.add $push3=, $137, $pop2
- i32.store $discard=, 0($pop3), $1
- i32.const $push161=, 2
- i32.shl $push4=, $2, $pop161
- i32.const $138=, 76160
- i32.add $138=, $217, $138
- i32.add $push5=, $138, $pop4
- i32.store $discard=, 0($pop5), $2
- i32.const $push160=, 2
- i32.shl $push6=, $3, $pop160
- i32.const $139=, 74160
- i32.add $139=, $217, $139
- i32.add $push7=, $139, $pop6
- i32.store $discard=, 0($pop7), $3
- i32.const $push159=, 2
- i32.shl $push8=, $4, $pop159
- i32.const $140=, 72160
- i32.add $140=, $217, $140
- i32.add $push9=, $140, $pop8
- i32.store $discard=, 0($pop9), $4
- i32.const $push158=, 2
- i32.shl $push10=, $5, $pop158
- i32.const $141=, 70160
- i32.add $141=, $217, $141
- i32.add $push11=, $141, $pop10
- i32.store $discard=, 0($pop11), $5
- i32.const $push157=, 2
- i32.shl $push12=, $6, $pop157
- i32.const $142=, 68160
- i32.add $142=, $217, $142
- i32.add $push13=, $142, $pop12
- i32.store $discard=, 0($pop13), $6
- i32.const $push156=, 2
- i32.shl $push14=, $7, $pop156
- i32.const $143=, 66160
- i32.add $143=, $217, $143
- i32.add $push15=, $143, $pop14
- i32.store $discard=, 0($pop15), $7
- i32.const $push155=, 2
- i32.shl $push16=, $8, $pop155
- i32.const $144=, 64160
- i32.add $144=, $217, $144
- i32.add $push17=, $144, $pop16
- i32.store $discard=, 0($pop17), $8
- i32.const $push154=, 2
- i32.shl $push18=, $9, $pop154
- i32.const $145=, 62160
- i32.add $145=, $217, $145
- i32.add $push19=, $145, $pop18
- i32.store $discard=, 0($pop19), $9
- i32.const $push153=, 2
- i32.shl $push20=, $10, $pop153
- i32.const $146=, 60160
- i32.add $146=, $217, $146
- i32.add $push21=, $146, $pop20
- i32.store $discard=, 0($pop21), $10
- i32.const $push152=, 2
- i32.shl $push22=, $11, $pop152
- i32.const $147=, 58160
- i32.add $147=, $217, $147
- i32.add $push23=, $147, $pop22
- i32.store $discard=, 0($pop23), $11
- i32.const $push151=, 2
- i32.shl $push24=, $12, $pop151
- i32.const $148=, 56160
- i32.add $148=, $217, $148
- i32.add $push25=, $148, $pop24
- i32.store $discard=, 0($pop25), $12
- i32.const $push150=, 2
- i32.shl $push26=, $13, $pop150
- i32.const $149=, 54160
- i32.add $149=, $217, $149
- i32.add $push27=, $149, $pop26
- i32.store $discard=, 0($pop27), $13
- i32.const $push149=, 2
- i32.shl $push28=, $14, $pop149
- i32.const $150=, 52160
- i32.add $150=, $217, $150
- i32.add $push29=, $150, $pop28
- i32.store $discard=, 0($pop29), $14
- i32.const $push148=, 2
- i32.shl $push30=, $15, $pop148
- i32.const $151=, 50160
- i32.add $151=, $217, $151
- i32.add $push31=, $151, $pop30
- i32.store $discard=, 0($pop31), $15
- i32.const $push147=, 2
- i32.shl $push32=, $16, $pop147
- i32.const $152=, 48160
- i32.add $152=, $217, $152
- i32.add $push33=, $152, $pop32
- i32.store $discard=, 0($pop33), $16
- i32.const $push146=, 2
- i32.shl $push34=, $17, $pop146
- i32.const $153=, 46160
- i32.add $153=, $217, $153
- i32.add $push35=, $153, $pop34
- i32.store $discard=, 0($pop35), $17
- i32.const $push145=, 2
- i32.shl $push36=, $18, $pop145
- i32.const $154=, 44160
- i32.add $154=, $217, $154
- i32.add $push37=, $154, $pop36
- i32.store $discard=, 0($pop37), $18
- i32.const $push144=, 2
- i32.shl $push38=, $19, $pop144
- i32.const $155=, 42160
- i32.add $155=, $217, $155
- i32.add $push39=, $155, $pop38
- i32.store $discard=, 0($pop39), $19
- i32.const $push143=, 2
- i32.shl $push40=, $20, $pop143
- i32.const $156=, 40160
- i32.add $156=, $217, $156
- i32.add $push41=, $156, $pop40
- i32.store $discard=, 0($pop41), $20
- i32.const $push142=, 2
- i32.shl $push42=, $21, $pop142
- i32.const $157=, 38160
- i32.add $157=, $217, $157
- i32.add $push43=, $157, $pop42
- i32.store $discard=, 0($pop43), $21
- i32.const $push141=, 2
- i32.shl $push44=, $22, $pop141
- i32.const $158=, 36160
- i32.add $158=, $217, $158
- i32.add $push45=, $158, $pop44
- i32.store $discard=, 0($pop45), $22
- i32.const $push140=, 2
- i32.shl $push46=, $23, $pop140
- i32.const $159=, 34160
- i32.add $159=, $217, $159
- i32.add $push47=, $159, $pop46
- i32.store $discard=, 0($pop47), $23
- i32.const $push139=, 2
- i32.shl $push48=, $24, $pop139
- i32.const $160=, 32160
- i32.add $160=, $217, $160
- i32.add $push49=, $160, $pop48
- i32.store $discard=, 0($pop49), $24
- i32.const $push138=, 2
- i32.shl $push50=, $25, $pop138
- i32.const $161=, 30160
- i32.add $161=, $217, $161
- i32.add $push51=, $161, $pop50
- i32.store $discard=, 0($pop51), $25
- i32.const $push137=, 2
- i32.shl $push52=, $26, $pop137
- i32.const $162=, 28160
- i32.add $162=, $217, $162
- i32.add $push53=, $162, $pop52
- i32.store $discard=, 0($pop53), $26
- i32.const $push136=, 2
- i32.shl $push54=, $27, $pop136
- i32.const $163=, 26160
- i32.add $163=, $217, $163
- i32.add $push55=, $163, $pop54
- i32.store $discard=, 0($pop55), $27
- i32.const $push135=, 2
- i32.shl $push56=, $28, $pop135
- i32.const $164=, 24160
- i32.add $164=, $217, $164
- i32.add $push57=, $164, $pop56
- i32.store $discard=, 0($pop57), $28
- i32.const $push134=, 2
- i32.shl $push58=, $29, $pop134
- i32.const $165=, 22160
- i32.add $165=, $217, $165
- i32.add $push59=, $165, $pop58
- i32.store $discard=, 0($pop59), $29
- i32.const $push133=, 2
- i32.shl $push60=, $30, $pop133
- i32.const $166=, 20160
- i32.add $166=, $217, $166
- i32.add $push61=, $166, $pop60
- i32.store $discard=, 0($pop61), $30
- i32.const $push132=, 2
- i32.shl $push62=, $31, $pop132
- i32.const $167=, 18160
- i32.add $167=, $217, $167
- i32.add $push63=, $167, $pop62
- i32.store $discard=, 0($pop63), $31
- i32.const $push131=, 2
- i32.shl $push64=, $32, $pop131
- i32.const $168=, 16160
- i32.add $168=, $217, $168
- i32.add $push65=, $168, $pop64
- i32.store $discard=, 0($pop65), $32
- i32.const $push130=, 2
- i32.shl $push66=, $33, $pop130
- i32.const $169=, 14160
- i32.add $169=, $217, $169
- i32.add $push67=, $169, $pop66
- i32.store $discard=, 0($pop67), $33
- i32.const $push129=, 2
- i32.shl $push68=, $34, $pop129
- i32.const $170=, 12160
- i32.add $170=, $217, $170
- i32.add $push69=, $170, $pop68
- i32.store $discard=, 0($pop69), $34
- i32.const $push128=, 2
- i32.shl $push70=, $35, $pop128
- i32.const $171=, 10160
- i32.add $171=, $217, $171
- i32.add $push71=, $171, $pop70
- i32.store $discard=, 0($pop71), $35
- i32.const $push127=, 2
- i32.shl $push72=, $36, $pop127
- i32.const $172=, 8160
- i32.add $172=, $217, $172
- i32.add $push73=, $172, $pop72
- i32.store $discard=, 0($pop73), $36
- i32.const $push126=, 2
- i32.shl $push74=, $37, $pop126
- i32.const $173=, 6160
- i32.add $173=, $217, $173
- i32.add $push75=, $173, $pop74
- i32.store $discard=, 0($pop75), $37
- i32.const $push125=, 2
- i32.shl $push76=, $38, $pop125
- i32.const $174=, 4160
- i32.add $174=, $217, $174
- i32.add $push77=, $174, $pop76
- i32.store $discard=, 0($pop77), $38
- i32.const $push124=, 2
- i32.shl $push78=, $39, $pop124
- i32.const $175=, 2160
- i32.add $175=, $217, $175
- i32.add $push79=, $175, $pop78
- i32.store $discard=, 0($pop79), $39
- i32.const $push123=, 2
- i32.shl $push80=, $40, $pop123
+ i32.const $push359=, 156
+ i32.const $44=, 320
+ i32.add $44=, $284, $44
+ i32.add $push2=, $44, $pop359
+ i32.const $45=, 480
+ i32.add $45=, $284, $45
+ i32.store $discard=, 0($pop2), $45
+ i32.const $push358=, 152
+ i32.const $46=, 320
+ i32.add $46=, $284, $46
+ i32.add $push3=, $46, $pop358
+ i32.const $47=, 2480
+ i32.add $47=, $284, $47
+ i32.store $discard=, 0($pop3):p2align=3, $47
+ i32.const $push357=, 148
+ i32.const $48=, 320
+ i32.add $48=, $284, $48
+ i32.add $push4=, $48, $pop357
+ i32.const $49=, 4480
+ i32.add $49=, $284, $49
+ i32.store $discard=, 0($pop4), $49
+ i32.const $push356=, 144
+ i32.const $50=, 320
+ i32.add $50=, $284, $50
+ i32.add $push5=, $50, $pop356
+ i32.const $51=, 6480
+ i32.add $51=, $284, $51
+ i32.store $discard=, 0($pop5):p2align=4, $51
+ i32.const $push355=, 140
+ i32.const $52=, 320
+ i32.add $52=, $284, $52
+ i32.add $push6=, $52, $pop355
+ i32.const $53=, 8480
+ i32.add $53=, $284, $53
+ i32.store $discard=, 0($pop6), $53
+ i32.const $push354=, 136
+ i32.const $54=, 320
+ i32.add $54=, $284, $54
+ i32.add $push7=, $54, $pop354
+ i32.const $55=, 10480
+ i32.add $55=, $284, $55
+ i32.store $discard=, 0($pop7):p2align=3, $55
+ i32.const $push353=, 132
+ i32.const $56=, 320
+ i32.add $56=, $284, $56
+ i32.add $push8=, $56, $pop353
+ i32.const $57=, 12480
+ i32.add $57=, $284, $57
+ i32.store $discard=, 0($pop8), $57
+ i32.const $push352=, 128
+ i32.const $58=, 320
+ i32.add $58=, $284, $58
+ i32.add $push9=, $58, $pop352
+ i32.const $59=, 14480
+ i32.add $59=, $284, $59
+ i32.store $discard=, 0($pop9):p2align=4, $59
+ i32.const $push351=, 124
+ i32.const $60=, 320
+ i32.add $60=, $284, $60
+ i32.add $push10=, $60, $pop351
+ i32.const $61=, 16480
+ i32.add $61=, $284, $61
+ i32.store $discard=, 0($pop10), $61
+ i32.const $push350=, 120
+ i32.const $62=, 320
+ i32.add $62=, $284, $62
+ i32.add $push11=, $62, $pop350
+ i32.const $63=, 18480
+ i32.add $63=, $284, $63
+ i32.store $discard=, 0($pop11):p2align=3, $63
+ i32.const $push349=, 116
+ i32.const $64=, 320
+ i32.add $64=, $284, $64
+ i32.add $push12=, $64, $pop349
+ i32.const $65=, 20480
+ i32.add $65=, $284, $65
+ i32.store $discard=, 0($pop12), $65
+ i32.const $push348=, 112
+ i32.const $66=, 320
+ i32.add $66=, $284, $66
+ i32.add $push13=, $66, $pop348
+ i32.const $67=, 22480
+ i32.add $67=, $284, $67
+ i32.store $discard=, 0($pop13):p2align=4, $67
+ i32.const $push347=, 108
+ i32.const $68=, 320
+ i32.add $68=, $284, $68
+ i32.add $push14=, $68, $pop347
+ i32.const $69=, 24480
+ i32.add $69=, $284, $69
+ i32.store $discard=, 0($pop14), $69
+ i32.const $push346=, 104
+ i32.const $70=, 320
+ i32.add $70=, $284, $70
+ i32.add $push15=, $70, $pop346
+ i32.const $71=, 26480
+ i32.add $71=, $284, $71
+ i32.store $discard=, 0($pop15):p2align=3, $71
+ i32.const $push345=, 100
+ i32.const $72=, 320
+ i32.add $72=, $284, $72
+ i32.add $push16=, $72, $pop345
+ i32.const $73=, 28480
+ i32.add $73=, $284, $73
+ i32.store $discard=, 0($pop16), $73
+ i32.const $push344=, 96
+ i32.const $74=, 320
+ i32.add $74=, $284, $74
+ i32.add $push17=, $74, $pop344
+ i32.const $75=, 30480
+ i32.add $75=, $284, $75
+ i32.store $discard=, 0($pop17):p2align=4, $75
+ i32.const $push343=, 92
+ i32.const $76=, 320
+ i32.add $76=, $284, $76
+ i32.add $push18=, $76, $pop343
+ i32.const $77=, 32480
+ i32.add $77=, $284, $77
+ i32.store $discard=, 0($pop18), $77
+ i32.const $push342=, 88
+ i32.const $78=, 320
+ i32.add $78=, $284, $78
+ i32.add $push19=, $78, $pop342
+ i32.const $79=, 34480
+ i32.add $79=, $284, $79
+ i32.store $discard=, 0($pop19):p2align=3, $79
+ i32.const $push341=, 84
+ i32.const $80=, 320
+ i32.add $80=, $284, $80
+ i32.add $push20=, $80, $pop341
+ i32.const $81=, 36480
+ i32.add $81=, $284, $81
+ i32.store $discard=, 0($pop20), $81
+ i32.const $push340=, 80
+ i32.const $82=, 320
+ i32.add $82=, $284, $82
+ i32.add $push21=, $82, $pop340
+ i32.const $83=, 38480
+ i32.add $83=, $284, $83
+ i32.store $discard=, 0($pop21):p2align=4, $83
+ i32.const $push339=, 76
+ i32.const $84=, 320
+ i32.add $84=, $284, $84
+ i32.add $push22=, $84, $pop339
+ i32.const $85=, 40480
+ i32.add $85=, $284, $85
+ i32.store $discard=, 0($pop22), $85
+ i32.const $push338=, 72
+ i32.const $86=, 320
+ i32.add $86=, $284, $86
+ i32.add $push23=, $86, $pop338
+ i32.const $87=, 42480
+ i32.add $87=, $284, $87
+ i32.store $discard=, 0($pop23):p2align=3, $87
+ i32.const $push337=, 68
+ i32.const $88=, 320
+ i32.add $88=, $284, $88
+ i32.add $push24=, $88, $pop337
+ i32.const $89=, 44480
+ i32.add $89=, $284, $89
+ i32.store $discard=, 0($pop24), $89
+ i32.const $push336=, 64
+ i32.const $90=, 320
+ i32.add $90=, $284, $90
+ i32.add $push25=, $90, $pop336
+ i32.const $91=, 46480
+ i32.add $91=, $284, $91
+ i32.store $discard=, 0($pop25):p2align=4, $91
+ i32.const $push335=, 60
+ i32.const $92=, 320
+ i32.add $92=, $284, $92
+ i32.add $push26=, $92, $pop335
+ i32.const $93=, 48480
+ i32.add $93=, $284, $93
+ i32.store $discard=, 0($pop26), $93
+ i32.const $push334=, 56
+ i32.const $94=, 320
+ i32.add $94=, $284, $94
+ i32.add $push27=, $94, $pop334
+ i32.const $95=, 50480
+ i32.add $95=, $284, $95
+ i32.store $discard=, 0($pop27):p2align=3, $95
+ i32.const $push333=, 52
+ i32.const $96=, 320
+ i32.add $96=, $284, $96
+ i32.add $push28=, $96, $pop333
+ i32.const $97=, 52480
+ i32.add $97=, $284, $97
+ i32.store $discard=, 0($pop28), $97
+ i32.const $push332=, 48
+ i32.const $98=, 320
+ i32.add $98=, $284, $98
+ i32.add $push29=, $98, $pop332
+ i32.const $99=, 54480
+ i32.add $99=, $284, $99
+ i32.store $discard=, 0($pop29):p2align=4, $99
+ i32.const $push331=, 44
+ i32.const $100=, 320
+ i32.add $100=, $284, $100
+ i32.add $push30=, $100, $pop331
+ i32.const $101=, 56480
+ i32.add $101=, $284, $101
+ i32.store $discard=, 0($pop30), $101
+ i32.const $push330=, 40
+ i32.const $102=, 320
+ i32.add $102=, $284, $102
+ i32.add $push31=, $102, $pop330
+ i32.const $103=, 58480
+ i32.add $103=, $284, $103
+ i32.store $discard=, 0($pop31):p2align=3, $103
+ i32.const $push329=, 36
+ i32.const $104=, 320
+ i32.add $104=, $284, $104
+ i32.add $push32=, $104, $pop329
+ i32.const $105=, 60480
+ i32.add $105=, $284, $105
+ i32.store $discard=, 0($pop32), $105
+ i32.const $push328=, 32
+ i32.const $106=, 320
+ i32.add $106=, $284, $106
+ i32.add $push33=, $106, $pop328
+ i32.const $107=, 62480
+ i32.add $107=, $284, $107
+ i32.store $discard=, 0($pop33):p2align=4, $107
+ i32.const $push327=, 28
+ i32.const $108=, 320
+ i32.add $108=, $284, $108
+ i32.add $push34=, $108, $pop327
+ i32.const $109=, 64480
+ i32.add $109=, $284, $109
+ i32.store $discard=, 0($pop34), $109
+ i32.const $push326=, 24
+ i32.const $110=, 320
+ i32.add $110=, $284, $110
+ i32.add $push35=, $110, $pop326
+ i32.const $111=, 66480
+ i32.add $111=, $284, $111
+ i32.store $discard=, 0($pop35):p2align=3, $111
+ i32.const $push325=, 20
+ i32.const $112=, 320
+ i32.add $112=, $284, $112
+ i32.add $push36=, $112, $pop325
+ i32.const $113=, 68480
+ i32.add $113=, $284, $113
+ i32.store $discard=, 0($pop36), $113
+ i32.const $push324=, 16
+ i32.const $114=, 320
+ i32.add $114=, $284, $114
+ i32.add $push37=, $114, $pop324
+ i32.const $115=, 70480
+ i32.add $115=, $284, $115
+ i32.store $discard=, 0($pop37):p2align=4, $115
+ i32.const $push323=, 12
+ i32.const $116=, 320
+ i32.add $116=, $284, $116
+ i32.or $push38=, $116, $pop323
+ i32.const $117=, 72480
+ i32.add $117=, $284, $117
+ i32.store $discard=, 0($pop38), $117
+ i32.const $push322=, 8
+ i32.const $118=, 320
+ i32.add $118=, $284, $118
+ i32.or $push39=, $118, $pop322
+ i32.const $119=, 74480
+ i32.add $119=, $284, $119
+ i32.store $discard=, 0($pop39):p2align=3, $119
+ i32.const $push321=, 4
+ i32.const $120=, 320
+ i32.add $120=, $284, $120
+ i32.or $push40=, $120, $pop321
+ i32.const $121=, 76480
+ i32.add $121=, $284, $121
+ i32.store $discard=, 0($pop40), $121
+ i32.const $122=, 78480
+ i32.add $122=, $284, $122
+ i32.store $discard=, 320($284):p2align=4, $122
+ i32.const $push320=, 40
+ i32.const $123=, 320
+ i32.add $123=, $284, $123
+ call s@FUNCTION, $pop320, $123
+ i32.load $1=, 78480($284):p2align=4
+ i32.load $2=, 76480($284):p2align=4
+ i32.load $3=, 74480($284):p2align=4
+ i32.load $4=, 72480($284):p2align=4
+ i32.load $5=, 70480($284):p2align=4
+ i32.load $6=, 68480($284):p2align=4
+ i32.load $7=, 66480($284):p2align=4
+ i32.load $8=, 64480($284):p2align=4
+ i32.load $9=, 62480($284):p2align=4
+ i32.load $10=, 60480($284):p2align=4
+ i32.load $11=, 58480($284):p2align=4
+ i32.load $12=, 56480($284):p2align=4
+ i32.load $13=, 54480($284):p2align=4
+ i32.load $14=, 52480($284):p2align=4
+ i32.load $15=, 50480($284):p2align=4
+ i32.load $16=, 48480($284):p2align=4
+ i32.load $17=, 46480($284):p2align=4
+ i32.load $18=, 44480($284):p2align=4
+ i32.load $19=, 42480($284):p2align=4
+ i32.load $20=, 40480($284):p2align=4
+ i32.load $21=, 38480($284):p2align=4
+ i32.load $22=, 36480($284):p2align=4
+ i32.load $23=, 34480($284):p2align=4
+ i32.load $24=, 32480($284):p2align=4
+ i32.load $25=, 30480($284):p2align=4
+ i32.load $26=, 28480($284):p2align=4
+ i32.load $27=, 26480($284):p2align=4
+ i32.load $28=, 24480($284):p2align=4
+ i32.load $29=, 22480($284):p2align=4
+ i32.load $30=, 20480($284):p2align=4
+ i32.load $31=, 18480($284):p2align=4
+ i32.load $32=, 16480($284):p2align=4
+ i32.load $33=, 14480($284):p2align=4
+ i32.load $34=, 12480($284):p2align=4
+ i32.load $35=, 10480($284):p2align=4
+ i32.load $36=, 8480($284):p2align=4
+ i32.load $37=, 6480($284):p2align=4
+ i32.load $38=, 4480($284):p2align=4
+ i32.load $39=, 2480($284):p2align=4
+ i32.load $40=, 480($284):p2align=4
+ i32.const $push319=, 156
+ i32.const $124=, 160
+ i32.add $124=, $284, $124
+ i32.add $push41=, $124, $pop319
+ i32.const $125=, 480
+ i32.add $125=, $284, $125
+ i32.store $discard=, 0($pop41), $125
+ i32.const $push318=, 152
+ i32.const $126=, 160
+ i32.add $126=, $284, $126
+ i32.add $push42=, $126, $pop318
+ i32.const $127=, 2480
+ i32.add $127=, $284, $127
+ i32.store $discard=, 0($pop42):p2align=3, $127
+ i32.const $push317=, 148
+ i32.const $128=, 160
+ i32.add $128=, $284, $128
+ i32.add $push43=, $128, $pop317
+ i32.const $129=, 4480
+ i32.add $129=, $284, $129
+ i32.store $discard=, 0($pop43), $129
+ i32.const $push316=, 144
+ i32.const $130=, 160
+ i32.add $130=, $284, $130
+ i32.add $push44=, $130, $pop316
+ i32.const $131=, 6480
+ i32.add $131=, $284, $131
+ i32.store $discard=, 0($pop44):p2align=4, $131
+ i32.const $push315=, 140
+ i32.const $132=, 160
+ i32.add $132=, $284, $132
+ i32.add $push45=, $132, $pop315
+ i32.const $133=, 8480
+ i32.add $133=, $284, $133
+ i32.store $discard=, 0($pop45), $133
+ i32.const $push314=, 136
+ i32.const $134=, 160
+ i32.add $134=, $284, $134
+ i32.add $push46=, $134, $pop314
+ i32.const $135=, 10480
+ i32.add $135=, $284, $135
+ i32.store $discard=, 0($pop46):p2align=3, $135
+ i32.const $push313=, 132
+ i32.const $136=, 160
+ i32.add $136=, $284, $136
+ i32.add $push47=, $136, $pop313
+ i32.const $137=, 12480
+ i32.add $137=, $284, $137
+ i32.store $discard=, 0($pop47), $137
+ i32.const $push312=, 128
+ i32.const $138=, 160
+ i32.add $138=, $284, $138
+ i32.add $push48=, $138, $pop312
+ i32.const $139=, 14480
+ i32.add $139=, $284, $139
+ i32.store $discard=, 0($pop48):p2align=4, $139
+ i32.const $push311=, 124
+ i32.const $140=, 160
+ i32.add $140=, $284, $140
+ i32.add $push49=, $140, $pop311
+ i32.const $141=, 16480
+ i32.add $141=, $284, $141
+ i32.store $discard=, 0($pop49), $141
+ i32.const $push310=, 120
+ i32.const $142=, 160
+ i32.add $142=, $284, $142
+ i32.add $push50=, $142, $pop310
+ i32.const $143=, 18480
+ i32.add $143=, $284, $143
+ i32.store $discard=, 0($pop50):p2align=3, $143
+ i32.const $push309=, 116
+ i32.const $144=, 160
+ i32.add $144=, $284, $144
+ i32.add $push51=, $144, $pop309
+ i32.const $145=, 20480
+ i32.add $145=, $284, $145
+ i32.store $discard=, 0($pop51), $145
+ i32.const $push308=, 112
+ i32.const $146=, 160
+ i32.add $146=, $284, $146
+ i32.add $push52=, $146, $pop308
+ i32.const $147=, 22480
+ i32.add $147=, $284, $147
+ i32.store $discard=, 0($pop52):p2align=4, $147
+ i32.const $push307=, 108
+ i32.const $148=, 160
+ i32.add $148=, $284, $148
+ i32.add $push53=, $148, $pop307
+ i32.const $149=, 24480
+ i32.add $149=, $284, $149
+ i32.store $discard=, 0($pop53), $149
+ i32.const $push306=, 104
+ i32.const $150=, 160
+ i32.add $150=, $284, $150
+ i32.add $push54=, $150, $pop306
+ i32.const $151=, 26480
+ i32.add $151=, $284, $151
+ i32.store $discard=, 0($pop54):p2align=3, $151
+ i32.const $push305=, 100
+ i32.const $152=, 160
+ i32.add $152=, $284, $152
+ i32.add $push55=, $152, $pop305
+ i32.const $153=, 28480
+ i32.add $153=, $284, $153
+ i32.store $discard=, 0($pop55), $153
+ i32.const $push304=, 96
+ i32.const $154=, 160
+ i32.add $154=, $284, $154
+ i32.add $push56=, $154, $pop304
+ i32.const $155=, 30480
+ i32.add $155=, $284, $155
+ i32.store $discard=, 0($pop56):p2align=4, $155
+ i32.const $push303=, 92
+ i32.const $156=, 160
+ i32.add $156=, $284, $156
+ i32.add $push57=, $156, $pop303
+ i32.const $157=, 32480
+ i32.add $157=, $284, $157
+ i32.store $discard=, 0($pop57), $157
+ i32.const $push302=, 88
+ i32.const $158=, 160
+ i32.add $158=, $284, $158
+ i32.add $push58=, $158, $pop302
+ i32.const $159=, 34480
+ i32.add $159=, $284, $159
+ i32.store $discard=, 0($pop58):p2align=3, $159
+ i32.const $push301=, 84
+ i32.const $160=, 160
+ i32.add $160=, $284, $160
+ i32.add $push59=, $160, $pop301
+ i32.const $161=, 36480
+ i32.add $161=, $284, $161
+ i32.store $discard=, 0($pop59), $161
+ i32.const $push300=, 80
+ i32.const $162=, 160
+ i32.add $162=, $284, $162
+ i32.add $push60=, $162, $pop300
+ i32.const $163=, 38480
+ i32.add $163=, $284, $163
+ i32.store $discard=, 0($pop60):p2align=4, $163
+ i32.const $push299=, 76
+ i32.const $164=, 160
+ i32.add $164=, $284, $164
+ i32.add $push61=, $164, $pop299
+ i32.const $165=, 40480
+ i32.add $165=, $284, $165
+ i32.store $discard=, 0($pop61), $165
+ i32.const $push298=, 72
+ i32.const $166=, 160
+ i32.add $166=, $284, $166
+ i32.add $push62=, $166, $pop298
+ i32.const $167=, 42480
+ i32.add $167=, $284, $167
+ i32.store $discard=, 0($pop62):p2align=3, $167
+ i32.const $push297=, 68
+ i32.const $168=, 160
+ i32.add $168=, $284, $168
+ i32.add $push63=, $168, $pop297
+ i32.const $169=, 44480
+ i32.add $169=, $284, $169
+ i32.store $discard=, 0($pop63), $169
+ i32.const $push296=, 64
+ i32.const $170=, 160
+ i32.add $170=, $284, $170
+ i32.add $push64=, $170, $pop296
+ i32.const $171=, 46480
+ i32.add $171=, $284, $171
+ i32.store $discard=, 0($pop64):p2align=4, $171
+ i32.const $push295=, 60
+ i32.const $172=, 160
+ i32.add $172=, $284, $172
+ i32.add $push65=, $172, $pop295
+ i32.const $173=, 48480
+ i32.add $173=, $284, $173
+ i32.store $discard=, 0($pop65), $173
+ i32.const $push294=, 56
+ i32.const $174=, 160
+ i32.add $174=, $284, $174
+ i32.add $push66=, $174, $pop294
+ i32.const $175=, 50480
+ i32.add $175=, $284, $175
+ i32.store $discard=, 0($pop66):p2align=3, $175
+ i32.const $push293=, 52
i32.const $176=, 160
- i32.add $176=, $217, $176
- i32.add $push81=, $176, $pop80
- i32.store $discard=, 0($pop81), $40
- i32.const $50=, __stack_pointer
- i32.load $50=, 0($50)
- i32.const $51=, 160
- i32.sub $217=, $50, $51
- i32.const $51=, __stack_pointer
- i32.store $217=, 0($51), $217
- i32.const $177=, 78160
- i32.add $177=, $217, $177
- i32.store $discard=, 0($217), $177
- i32.const $push122=, 156
- i32.add $1=, $217, $pop122
+ i32.add $176=, $284, $176
+ i32.add $push67=, $176, $pop293
+ i32.const $177=, 52480
+ i32.add $177=, $284, $177
+ i32.store $discard=, 0($pop67), $177
+ i32.const $push292=, 48
i32.const $178=, 160
- i32.add $178=, $217, $178
- i32.store $discard=, 0($1), $178
- i32.const $push121=, 152
- i32.add $1=, $217, $pop121
- i32.const $179=, 2160
- i32.add $179=, $217, $179
- i32.store $discard=, 0($1), $179
- i32.const $push120=, 148
- i32.add $1=, $217, $pop120
- i32.const $180=, 4160
- i32.add $180=, $217, $180
- i32.store $discard=, 0($1), $180
- i32.const $push119=, 144
- i32.add $1=, $217, $pop119
- i32.const $181=, 6160
- i32.add $181=, $217, $181
- i32.store $discard=, 0($1), $181
- i32.const $push118=, 140
- i32.add $1=, $217, $pop118
- i32.const $182=, 8160
- i32.add $182=, $217, $182
- i32.store $discard=, 0($1), $182
- i32.const $push117=, 136
- i32.add $1=, $217, $pop117
- i32.const $183=, 10160
- i32.add $183=, $217, $183
- i32.store $discard=, 0($1), $183
- i32.const $push116=, 132
- i32.add $1=, $217, $pop116
- i32.const $184=, 12160
- i32.add $184=, $217, $184
- i32.store $discard=, 0($1), $184
- i32.const $push115=, 128
- i32.add $1=, $217, $pop115
- i32.const $185=, 14160
- i32.add $185=, $217, $185
- i32.store $discard=, 0($1), $185
- i32.const $push114=, 124
- i32.add $1=, $217, $pop114
- i32.const $186=, 16160
- i32.add $186=, $217, $186
- i32.store $discard=, 0($1), $186
- i32.const $push113=, 120
- i32.add $1=, $217, $pop113
- i32.const $187=, 18160
- i32.add $187=, $217, $187
- i32.store $discard=, 0($1), $187
- i32.const $push112=, 116
- i32.add $1=, $217, $pop112
- i32.const $188=, 20160
- i32.add $188=, $217, $188
- i32.store $discard=, 0($1), $188
- i32.const $push111=, 112
- i32.add $1=, $217, $pop111
- i32.const $189=, 22160
- i32.add $189=, $217, $189
- i32.store $discard=, 0($1), $189
- i32.const $push110=, 108
- i32.add $1=, $217, $pop110
- i32.const $190=, 24160
- i32.add $190=, $217, $190
- i32.store $discard=, 0($1), $190
- i32.const $push109=, 104
- i32.add $1=, $217, $pop109
- i32.const $191=, 26160
- i32.add $191=, $217, $191
- i32.store $discard=, 0($1), $191
- i32.const $push108=, 100
- i32.add $1=, $217, $pop108
- i32.const $192=, 28160
- i32.add $192=, $217, $192
- i32.store $discard=, 0($1), $192
- i32.const $push107=, 96
- i32.add $1=, $217, $pop107
- i32.const $193=, 30160
- i32.add $193=, $217, $193
- i32.store $discard=, 0($1), $193
- i32.const $push106=, 92
- i32.add $1=, $217, $pop106
- i32.const $194=, 32160
- i32.add $194=, $217, $194
- i32.store $discard=, 0($1), $194
- i32.const $push105=, 88
- i32.add $1=, $217, $pop105
- i32.const $195=, 34160
- i32.add $195=, $217, $195
- i32.store $discard=, 0($1), $195
- i32.const $push104=, 84
- i32.add $1=, $217, $pop104
- i32.const $196=, 36160
- i32.add $196=, $217, $196
- i32.store $discard=, 0($1), $196
- i32.const $push103=, 80
- i32.add $1=, $217, $pop103
- i32.const $197=, 38160
- i32.add $197=, $217, $197
- i32.store $discard=, 0($1), $197
- i32.const $push102=, 76
- i32.add $1=, $217, $pop102
- i32.const $198=, 40160
- i32.add $198=, $217, $198
- i32.store $discard=, 0($1), $198
- i32.const $push101=, 72
- i32.add $1=, $217, $pop101
- i32.const $199=, 42160
- i32.add $199=, $217, $199
- i32.store $discard=, 0($1), $199
- i32.const $push100=, 68
- i32.add $1=, $217, $pop100
- i32.const $200=, 44160
- i32.add $200=, $217, $200
- i32.store $discard=, 0($1), $200
- i32.const $push99=, 64
- i32.add $1=, $217, $pop99
- i32.const $201=, 46160
- i32.add $201=, $217, $201
- i32.store $discard=, 0($1), $201
- i32.const $push98=, 60
- i32.add $1=, $217, $pop98
- i32.const $202=, 48160
- i32.add $202=, $217, $202
- i32.store $discard=, 0($1), $202
- i32.const $push97=, 56
- i32.add $1=, $217, $pop97
- i32.const $203=, 50160
- i32.add $203=, $217, $203
- i32.store $discard=, 0($1), $203
- i32.const $push96=, 52
- i32.add $1=, $217, $pop96
- i32.const $204=, 52160
- i32.add $204=, $217, $204
- i32.store $discard=, 0($1), $204
- i32.const $push95=, 48
- i32.add $1=, $217, $pop95
- i32.const $205=, 54160
- i32.add $205=, $217, $205
- i32.store $discard=, 0($1), $205
- i32.const $push94=, 44
- i32.add $1=, $217, $pop94
- i32.const $206=, 56160
- i32.add $206=, $217, $206
- i32.store $discard=, 0($1), $206
- i32.const $push93=, 40
- i32.add $1=, $217, $pop93
- i32.const $207=, 58160
- i32.add $207=, $217, $207
- i32.store $discard=, 0($1), $207
- i32.const $push92=, 36
- i32.add $1=, $217, $pop92
- i32.const $208=, 60160
- i32.add $208=, $217, $208
- i32.store $discard=, 0($1), $208
- i32.const $push91=, 32
- i32.add $1=, $217, $pop91
- i32.const $209=, 62160
- i32.add $209=, $217, $209
- i32.store $discard=, 0($1), $209
- i32.const $push90=, 28
- i32.add $1=, $217, $pop90
- i32.const $210=, 64160
- i32.add $210=, $217, $210
- i32.store $discard=, 0($1), $210
- i32.const $push89=, 24
- i32.add $1=, $217, $pop89
- i32.const $211=, 66160
- i32.add $211=, $217, $211
- i32.store $discard=, 0($1), $211
- i32.const $push88=, 20
- i32.add $1=, $217, $pop88
- i32.const $212=, 68160
- i32.add $212=, $217, $212
- i32.store $discard=, 0($1), $212
- i32.const $push87=, 16
- i32.add $1=, $217, $pop87
- i32.const $213=, 70160
- i32.add $213=, $217, $213
- i32.store $discard=, 0($1), $213
- i32.const $push86=, 12
- i32.add $1=, $217, $pop86
- i32.const $214=, 72160
- i32.add $214=, $217, $214
- i32.store $discard=, 0($1), $214
- i32.const $push85=, 8
- i32.add $1=, $217, $pop85
- i32.const $215=, 74160
- i32.add $215=, $217, $215
- i32.store $discard=, 0($1), $215
- i32.const $push84=, 4
- i32.add $1=, $217, $pop84
- i32.const $216=, 76160
- i32.add $216=, $217, $216
- i32.store $discard=, 0($1), $216
- i32.const $push83=, 40
- call c@FUNCTION, $pop83
- i32.const $52=, __stack_pointer
- i32.load $52=, 0($52)
- i32.const $53=, 160
- i32.add $217=, $52, $53
- i32.const $53=, __stack_pointer
- i32.store $217=, 0($53), $217
- i32.const $push82=, -1
- i32.add $0=, $0, $pop82
+ i32.add $178=, $284, $178
+ i32.add $push68=, $178, $pop292
+ i32.const $179=, 54480
+ i32.add $179=, $284, $179
+ i32.store $discard=, 0($pop68):p2align=4, $179
+ i32.const $push291=, 44
+ i32.const $180=, 160
+ i32.add $180=, $284, $180
+ i32.add $push69=, $180, $pop291
+ i32.const $181=, 56480
+ i32.add $181=, $284, $181
+ i32.store $discard=, 0($pop69), $181
+ i32.const $push290=, 40
+ i32.const $182=, 160
+ i32.add $182=, $284, $182
+ i32.add $push70=, $182, $pop290
+ i32.const $183=, 58480
+ i32.add $183=, $284, $183
+ i32.store $discard=, 0($pop70):p2align=3, $183
+ i32.const $push289=, 36
+ i32.const $184=, 160
+ i32.add $184=, $284, $184
+ i32.add $push71=, $184, $pop289
+ i32.const $185=, 60480
+ i32.add $185=, $284, $185
+ i32.store $discard=, 0($pop71), $185
+ i32.const $push288=, 32
+ i32.const $186=, 160
+ i32.add $186=, $284, $186
+ i32.add $push72=, $186, $pop288
+ i32.const $187=, 62480
+ i32.add $187=, $284, $187
+ i32.store $discard=, 0($pop72):p2align=4, $187
+ i32.const $push287=, 28
+ i32.const $188=, 160
+ i32.add $188=, $284, $188
+ i32.add $push73=, $188, $pop287
+ i32.const $189=, 64480
+ i32.add $189=, $284, $189
+ i32.store $discard=, 0($pop73), $189
+ i32.const $push286=, 24
+ i32.const $190=, 160
+ i32.add $190=, $284, $190
+ i32.add $push74=, $190, $pop286
+ i32.const $191=, 66480
+ i32.add $191=, $284, $191
+ i32.store $discard=, 0($pop74):p2align=3, $191
+ i32.const $push285=, 20
+ i32.const $192=, 160
+ i32.add $192=, $284, $192
+ i32.add $push75=, $192, $pop285
+ i32.const $193=, 68480
+ i32.add $193=, $284, $193
+ i32.store $discard=, 0($pop75), $193
+ i32.const $push284=, 16
+ i32.const $194=, 160
+ i32.add $194=, $284, $194
+ i32.add $push76=, $194, $pop284
+ i32.const $195=, 70480
+ i32.add $195=, $284, $195
+ i32.store $discard=, 0($pop76):p2align=4, $195
+ i32.const $push283=, 12
+ i32.const $196=, 160
+ i32.add $196=, $284, $196
+ i32.or $push77=, $196, $pop283
+ i32.const $197=, 72480
+ i32.add $197=, $284, $197
+ i32.store $discard=, 0($pop77), $197
+ i32.const $push282=, 8
+ i32.const $198=, 160
+ i32.add $198=, $284, $198
+ i32.or $push78=, $198, $pop282
+ i32.const $199=, 74480
+ i32.add $199=, $284, $199
+ i32.store $discard=, 0($pop78):p2align=3, $199
+ i32.const $push281=, 4
+ i32.const $200=, 160
+ i32.add $200=, $284, $200
+ i32.or $push79=, $200, $pop281
+ i32.const $201=, 76480
+ i32.add $201=, $284, $201
+ i32.store $discard=, 0($pop79), $201
+ i32.const $202=, 78480
+ i32.add $202=, $284, $202
+ i32.store $discard=, 160($284):p2align=4, $202
+ i32.const $push280=, 40
+ i32.const $203=, 160
+ i32.add $203=, $284, $203
+ call z@FUNCTION, $pop280, $203
+ i32.const $push279=, 2
+ i32.shl $push80=, $1, $pop279
+ i32.const $204=, 78480
+ i32.add $204=, $284, $204
+ i32.add $push81=, $204, $pop80
+ i32.store $discard=, 0($pop81), $1
+ i32.const $push278=, 2
+ i32.shl $push82=, $2, $pop278
+ i32.const $205=, 76480
+ i32.add $205=, $284, $205
+ i32.add $push83=, $205, $pop82
+ i32.store $discard=, 0($pop83), $2
+ i32.const $push277=, 2
+ i32.shl $push84=, $3, $pop277
+ i32.const $206=, 74480
+ i32.add $206=, $284, $206
+ i32.add $push85=, $206, $pop84
+ i32.store $discard=, 0($pop85), $3
+ i32.const $push276=, 2
+ i32.shl $push86=, $4, $pop276
+ i32.const $207=, 72480
+ i32.add $207=, $284, $207
+ i32.add $push87=, $207, $pop86
+ i32.store $discard=, 0($pop87), $4
+ i32.const $push275=, 2
+ i32.shl $push88=, $5, $pop275
+ i32.const $208=, 70480
+ i32.add $208=, $284, $208
+ i32.add $push89=, $208, $pop88
+ i32.store $discard=, 0($pop89), $5
+ i32.const $push274=, 2
+ i32.shl $push90=, $6, $pop274
+ i32.const $209=, 68480
+ i32.add $209=, $284, $209
+ i32.add $push91=, $209, $pop90
+ i32.store $discard=, 0($pop91), $6
+ i32.const $push273=, 2
+ i32.shl $push92=, $7, $pop273
+ i32.const $210=, 66480
+ i32.add $210=, $284, $210
+ i32.add $push93=, $210, $pop92
+ i32.store $discard=, 0($pop93), $7
+ i32.const $push272=, 2
+ i32.shl $push94=, $8, $pop272
+ i32.const $211=, 64480
+ i32.add $211=, $284, $211
+ i32.add $push95=, $211, $pop94
+ i32.store $discard=, 0($pop95), $8
+ i32.const $push271=, 2
+ i32.shl $push96=, $9, $pop271
+ i32.const $212=, 62480
+ i32.add $212=, $284, $212
+ i32.add $push97=, $212, $pop96
+ i32.store $discard=, 0($pop97), $9
+ i32.const $push270=, 2
+ i32.shl $push98=, $10, $pop270
+ i32.const $213=, 60480
+ i32.add $213=, $284, $213
+ i32.add $push99=, $213, $pop98
+ i32.store $discard=, 0($pop99), $10
+ i32.const $push269=, 2
+ i32.shl $push100=, $11, $pop269
+ i32.const $214=, 58480
+ i32.add $214=, $284, $214
+ i32.add $push101=, $214, $pop100
+ i32.store $discard=, 0($pop101), $11
+ i32.const $push268=, 2
+ i32.shl $push102=, $12, $pop268
+ i32.const $215=, 56480
+ i32.add $215=, $284, $215
+ i32.add $push103=, $215, $pop102
+ i32.store $discard=, 0($pop103), $12
+ i32.const $push267=, 2
+ i32.shl $push104=, $13, $pop267
+ i32.const $216=, 54480
+ i32.add $216=, $284, $216
+ i32.add $push105=, $216, $pop104
+ i32.store $discard=, 0($pop105), $13
+ i32.const $push266=, 2
+ i32.shl $push106=, $14, $pop266
+ i32.const $217=, 52480
+ i32.add $217=, $284, $217
+ i32.add $push107=, $217, $pop106
+ i32.store $discard=, 0($pop107), $14
+ i32.const $push265=, 2
+ i32.shl $push108=, $15, $pop265
+ i32.const $218=, 50480
+ i32.add $218=, $284, $218
+ i32.add $push109=, $218, $pop108
+ i32.store $discard=, 0($pop109), $15
+ i32.const $push264=, 2
+ i32.shl $push110=, $16, $pop264
+ i32.const $219=, 48480
+ i32.add $219=, $284, $219
+ i32.add $push111=, $219, $pop110
+ i32.store $discard=, 0($pop111), $16
+ i32.const $push263=, 2
+ i32.shl $push112=, $17, $pop263
+ i32.const $220=, 46480
+ i32.add $220=, $284, $220
+ i32.add $push113=, $220, $pop112
+ i32.store $discard=, 0($pop113), $17
+ i32.const $push262=, 2
+ i32.shl $push114=, $18, $pop262
+ i32.const $221=, 44480
+ i32.add $221=, $284, $221
+ i32.add $push115=, $221, $pop114
+ i32.store $discard=, 0($pop115), $18
+ i32.const $push261=, 2
+ i32.shl $push116=, $19, $pop261
+ i32.const $222=, 42480
+ i32.add $222=, $284, $222
+ i32.add $push117=, $222, $pop116
+ i32.store $discard=, 0($pop117), $19
+ i32.const $push260=, 2
+ i32.shl $push118=, $20, $pop260
+ i32.const $223=, 40480
+ i32.add $223=, $284, $223
+ i32.add $push119=, $223, $pop118
+ i32.store $discard=, 0($pop119), $20
+ i32.const $push259=, 2
+ i32.shl $push120=, $21, $pop259
+ i32.const $224=, 38480
+ i32.add $224=, $284, $224
+ i32.add $push121=, $224, $pop120
+ i32.store $discard=, 0($pop121), $21
+ i32.const $push258=, 2
+ i32.shl $push122=, $22, $pop258
+ i32.const $225=, 36480
+ i32.add $225=, $284, $225
+ i32.add $push123=, $225, $pop122
+ i32.store $discard=, 0($pop123), $22
+ i32.const $push257=, 2
+ i32.shl $push124=, $23, $pop257
+ i32.const $226=, 34480
+ i32.add $226=, $284, $226
+ i32.add $push125=, $226, $pop124
+ i32.store $discard=, 0($pop125), $23
+ i32.const $push256=, 2
+ i32.shl $push126=, $24, $pop256
+ i32.const $227=, 32480
+ i32.add $227=, $284, $227
+ i32.add $push127=, $227, $pop126
+ i32.store $discard=, 0($pop127), $24
+ i32.const $push255=, 2
+ i32.shl $push128=, $25, $pop255
+ i32.const $228=, 30480
+ i32.add $228=, $284, $228
+ i32.add $push129=, $228, $pop128
+ i32.store $discard=, 0($pop129), $25
+ i32.const $push254=, 2
+ i32.shl $push130=, $26, $pop254
+ i32.const $229=, 28480
+ i32.add $229=, $284, $229
+ i32.add $push131=, $229, $pop130
+ i32.store $discard=, 0($pop131), $26
+ i32.const $push253=, 2
+ i32.shl $push132=, $27, $pop253
+ i32.const $230=, 26480
+ i32.add $230=, $284, $230
+ i32.add $push133=, $230, $pop132
+ i32.store $discard=, 0($pop133), $27
+ i32.const $push252=, 2
+ i32.shl $push134=, $28, $pop252
+ i32.const $231=, 24480
+ i32.add $231=, $284, $231
+ i32.add $push135=, $231, $pop134
+ i32.store $discard=, 0($pop135), $28
+ i32.const $push251=, 2
+ i32.shl $push136=, $29, $pop251
+ i32.const $232=, 22480
+ i32.add $232=, $284, $232
+ i32.add $push137=, $232, $pop136
+ i32.store $discard=, 0($pop137), $29
+ i32.const $push250=, 2
+ i32.shl $push138=, $30, $pop250
+ i32.const $233=, 20480
+ i32.add $233=, $284, $233
+ i32.add $push139=, $233, $pop138
+ i32.store $discard=, 0($pop139), $30
+ i32.const $push249=, 2
+ i32.shl $push140=, $31, $pop249
+ i32.const $234=, 18480
+ i32.add $234=, $284, $234
+ i32.add $push141=, $234, $pop140
+ i32.store $discard=, 0($pop141), $31
+ i32.const $push248=, 2
+ i32.shl $push142=, $32, $pop248
+ i32.const $235=, 16480
+ i32.add $235=, $284, $235
+ i32.add $push143=, $235, $pop142
+ i32.store $discard=, 0($pop143), $32
+ i32.const $push247=, 2
+ i32.shl $push144=, $33, $pop247
+ i32.const $236=, 14480
+ i32.add $236=, $284, $236
+ i32.add $push145=, $236, $pop144
+ i32.store $discard=, 0($pop145), $33
+ i32.const $push246=, 2
+ i32.shl $push146=, $34, $pop246
+ i32.const $237=, 12480
+ i32.add $237=, $284, $237
+ i32.add $push147=, $237, $pop146
+ i32.store $discard=, 0($pop147), $34
+ i32.const $push245=, 2
+ i32.shl $push148=, $35, $pop245
+ i32.const $238=, 10480
+ i32.add $238=, $284, $238
+ i32.add $push149=, $238, $pop148
+ i32.store $discard=, 0($pop149), $35
+ i32.const $push244=, 2
+ i32.shl $push150=, $36, $pop244
+ i32.const $239=, 8480
+ i32.add $239=, $284, $239
+ i32.add $push151=, $239, $pop150
+ i32.store $discard=, 0($pop151), $36
+ i32.const $push243=, 2
+ i32.shl $push152=, $37, $pop243
+ i32.const $240=, 6480
+ i32.add $240=, $284, $240
+ i32.add $push153=, $240, $pop152
+ i32.store $discard=, 0($pop153), $37
+ i32.const $push242=, 2
+ i32.shl $push154=, $38, $pop242
+ i32.const $241=, 4480
+ i32.add $241=, $284, $241
+ i32.add $push155=, $241, $pop154
+ i32.store $discard=, 0($pop155), $38
+ i32.const $push241=, 2
+ i32.shl $push156=, $39, $pop241
+ i32.const $242=, 2480
+ i32.add $242=, $284, $242
+ i32.add $push157=, $242, $pop156
+ i32.store $discard=, 0($pop157), $39
+ i32.const $push240=, 2
+ i32.shl $push158=, $40, $pop240
+ i32.const $243=, 480
+ i32.add $243=, $284, $243
+ i32.add $push159=, $243, $pop158
+ i32.store $discard=, 0($pop159), $40
+ i32.const $push239=, 156
+ i32.add $push160=, $284, $pop239
+ i32.const $244=, 480
+ i32.add $244=, $284, $244
+ i32.store $discard=, 0($pop160), $244
+ i32.const $push238=, 152
+ i32.add $push161=, $284, $pop238
+ i32.const $245=, 2480
+ i32.add $245=, $284, $245
+ i32.store $discard=, 0($pop161):p2align=3, $245
+ i32.const $push237=, 148
+ i32.add $push162=, $284, $pop237
+ i32.const $246=, 4480
+ i32.add $246=, $284, $246
+ i32.store $discard=, 0($pop162), $246
+ i32.const $push236=, 144
+ i32.add $push163=, $284, $pop236
+ i32.const $247=, 6480
+ i32.add $247=, $284, $247
+ i32.store $discard=, 0($pop163):p2align=4, $247
+ i32.const $push235=, 140
+ i32.add $push164=, $284, $pop235
+ i32.const $248=, 8480
+ i32.add $248=, $284, $248
+ i32.store $discard=, 0($pop164), $248
+ i32.const $push234=, 136
+ i32.add $push165=, $284, $pop234
+ i32.const $249=, 10480
+ i32.add $249=, $284, $249
+ i32.store $discard=, 0($pop165):p2align=3, $249
+ i32.const $push233=, 132
+ i32.add $push166=, $284, $pop233
+ i32.const $250=, 12480
+ i32.add $250=, $284, $250
+ i32.store $discard=, 0($pop166), $250
+ i32.const $push232=, 128
+ i32.add $push167=, $284, $pop232
+ i32.const $251=, 14480
+ i32.add $251=, $284, $251
+ i32.store $discard=, 0($pop167):p2align=4, $251
+ i32.const $push231=, 124
+ i32.add $push168=, $284, $pop231
+ i32.const $252=, 16480
+ i32.add $252=, $284, $252
+ i32.store $discard=, 0($pop168), $252
+ i32.const $push230=, 120
+ i32.add $push169=, $284, $pop230
+ i32.const $253=, 18480
+ i32.add $253=, $284, $253
+ i32.store $discard=, 0($pop169):p2align=3, $253
+ i32.const $push229=, 116
+ i32.add $push170=, $284, $pop229
+ i32.const $254=, 20480
+ i32.add $254=, $284, $254
+ i32.store $discard=, 0($pop170), $254
+ i32.const $push228=, 112
+ i32.add $push171=, $284, $pop228
+ i32.const $255=, 22480
+ i32.add $255=, $284, $255
+ i32.store $discard=, 0($pop171):p2align=4, $255
+ i32.const $push227=, 108
+ i32.add $push172=, $284, $pop227
+ i32.const $256=, 24480
+ i32.add $256=, $284, $256
+ i32.store $discard=, 0($pop172), $256
+ i32.const $push226=, 104
+ i32.add $push173=, $284, $pop226
+ i32.const $257=, 26480
+ i32.add $257=, $284, $257
+ i32.store $discard=, 0($pop173):p2align=3, $257
+ i32.const $push225=, 100
+ i32.add $push174=, $284, $pop225
+ i32.const $258=, 28480
+ i32.add $258=, $284, $258
+ i32.store $discard=, 0($pop174), $258
+ i32.const $push224=, 96
+ i32.add $push175=, $284, $pop224
+ i32.const $259=, 30480
+ i32.add $259=, $284, $259
+ i32.store $discard=, 0($pop175):p2align=4, $259
+ i32.const $push223=, 92
+ i32.add $push176=, $284, $pop223
+ i32.const $260=, 32480
+ i32.add $260=, $284, $260
+ i32.store $discard=, 0($pop176), $260
+ i32.const $push222=, 88
+ i32.add $push177=, $284, $pop222
+ i32.const $261=, 34480
+ i32.add $261=, $284, $261
+ i32.store $discard=, 0($pop177):p2align=3, $261
+ i32.const $push221=, 84
+ i32.add $push178=, $284, $pop221
+ i32.const $262=, 36480
+ i32.add $262=, $284, $262
+ i32.store $discard=, 0($pop178), $262
+ i32.const $push220=, 80
+ i32.add $push179=, $284, $pop220
+ i32.const $263=, 38480
+ i32.add $263=, $284, $263
+ i32.store $discard=, 0($pop179):p2align=4, $263
+ i32.const $push219=, 76
+ i32.add $push180=, $284, $pop219
+ i32.const $264=, 40480
+ i32.add $264=, $284, $264
+ i32.store $discard=, 0($pop180), $264
+ i32.const $push218=, 72
+ i32.add $push181=, $284, $pop218
+ i32.const $265=, 42480
+ i32.add $265=, $284, $265
+ i32.store $discard=, 0($pop181):p2align=3, $265
+ i32.const $push217=, 68
+ i32.add $push182=, $284, $pop217
+ i32.const $266=, 44480
+ i32.add $266=, $284, $266
+ i32.store $discard=, 0($pop182), $266
+ i32.const $push216=, 64
+ i32.add $push183=, $284, $pop216
+ i32.const $267=, 46480
+ i32.add $267=, $284, $267
+ i32.store $discard=, 0($pop183):p2align=4, $267
+ i32.const $push215=, 60
+ i32.add $push184=, $284, $pop215
+ i32.const $268=, 48480
+ i32.add $268=, $284, $268
+ i32.store $discard=, 0($pop184), $268
+ i32.const $push214=, 56
+ i32.add $push185=, $284, $pop214
+ i32.const $269=, 50480
+ i32.add $269=, $284, $269
+ i32.store $discard=, 0($pop185):p2align=3, $269
+ i32.const $push213=, 52
+ i32.add $push186=, $284, $pop213
+ i32.const $270=, 52480
+ i32.add $270=, $284, $270
+ i32.store $discard=, 0($pop186), $270
+ i32.const $push212=, 48
+ i32.add $push187=, $284, $pop212
+ i32.const $271=, 54480
+ i32.add $271=, $284, $271
+ i32.store $discard=, 0($pop187):p2align=4, $271
+ i32.const $push211=, 44
+ i32.add $push188=, $284, $pop211
+ i32.const $272=, 56480
+ i32.add $272=, $284, $272
+ i32.store $discard=, 0($pop188), $272
+ i32.const $push210=, 40
+ i32.add $push189=, $284, $pop210
+ i32.const $273=, 58480
+ i32.add $273=, $284, $273
+ i32.store $discard=, 0($pop189):p2align=3, $273
+ i32.const $push209=, 36
+ i32.add $push190=, $284, $pop209
+ i32.const $274=, 60480
+ i32.add $274=, $284, $274
+ i32.store $discard=, 0($pop190), $274
+ i32.const $push208=, 32
+ i32.add $push191=, $284, $pop208
+ i32.const $275=, 62480
+ i32.add $275=, $284, $275
+ i32.store $discard=, 0($pop191):p2align=4, $275
+ i32.const $push207=, 28
+ i32.add $push192=, $284, $pop207
+ i32.const $276=, 64480
+ i32.add $276=, $284, $276
+ i32.store $discard=, 0($pop192), $276
+ i32.const $push206=, 24
+ i32.add $push193=, $284, $pop206
+ i32.const $277=, 66480
+ i32.add $277=, $284, $277
+ i32.store $discard=, 0($pop193):p2align=3, $277
+ i32.const $push205=, 20
+ i32.add $push194=, $284, $pop205
+ i32.const $278=, 68480
+ i32.add $278=, $284, $278
+ i32.store $discard=, 0($pop194), $278
+ i32.const $push204=, 16
+ i32.add $push195=, $284, $pop204
+ i32.const $279=, 70480
+ i32.add $279=, $284, $279
+ i32.store $discard=, 0($pop195):p2align=4, $279
+ i32.const $push203=, 12
+ i32.or $push196=, $284, $pop203
+ i32.const $280=, 72480
+ i32.add $280=, $284, $280
+ i32.store $discard=, 0($pop196), $280
+ i32.const $push202=, 8
+ i32.or $push197=, $284, $pop202
+ i32.const $281=, 74480
+ i32.add $281=, $284, $281
+ i32.store $discard=, 0($pop197):p2align=3, $281
+ i32.const $push201=, 4
+ i32.or $push198=, $284, $pop201
+ i32.const $282=, 76480
+ i32.add $282=, $284, $282
+ i32.store $discard=, 0($pop198), $282
+ i32.const $283=, 78480
+ i32.add $283=, $284, $283
+ i32.store $discard=, 0($284):p2align=4, $283
+ i32.const $push200=, 40
+ call c@FUNCTION, $pop200, $284
+ i32.const $push199=, -1
+ i32.add $0=, $0, $pop199
br_if 0, $0 # 0: up to label1
.LBB0_2: # %for.end
end_loop # label2:
end_block # label0:
- i32.const $56=, 80160
- i32.add $217=, $217, $56
- i32.const $56=, __stack_pointer
- i32.store $217=, 0($56), $217
+ i32.const $43=, 80480
+ i32.add $284=, $284, $43
+ i32.const $43=, __stack_pointer
+ i32.store $284=, 0($43), $284
return
.endfunc
.Lfunc_end0:
@@ -957,17 +1081,16 @@ f: # @f
.globl s
.type s,@function
s: # @s
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $discard=, 12($5), $6
+ i32.store $discard=, 12($5), $1
block
i32.const $push14=, 0
i32.eq $push15=, $0, $pop14
@@ -998,7 +1121,7 @@ s: # @s
end_loop # label5:
end_block # label3:
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -1011,17 +1134,16 @@ s: # @s
.globl z
.type z,@function
z: # @z
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $discard=, 12($5), $6
+ i32.store $discard=, 12($5), $1
block
i32.const $push12=, 0
i32.eq $push13=, $0, $pop12
@@ -1049,7 +1171,7 @@ z: # @z
end_loop # label8:
end_block # label6:
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -1062,17 +1184,16 @@ z: # @z
.globl c
.type c,@function
c: # @c
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $discard=, 12($6), $7
+ i32.store $discard=, 12($6), $1
i32.const $push0=, 2
i32.shl $push1=, $0, $pop0
i32.const $push9=, -4
@@ -1111,7 +1232,7 @@ c: # @c
.LBB3_4: # %while.end
end_block # label9:
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
diff --git a/test/torture-s/pr41239.c.s b/test/torture-s/pr41239.c.s
index d78201662..13a68acfd 100644
--- a/test/torture-s/pr41239.c.s
+++ b/test/torture-s/pr41239.c.s
@@ -7,60 +7,49 @@
test: # @test
.param i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $11=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $11=, 0($9), $11
+ 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.load $1=, 4($0)
block
i32.const $push1=, 8
i32.add $push2=, $0, $pop1
i32.load $push0=, 0($pop2)
- tee_local $push13=, $0=, $pop0
- br_if 0, $pop13 # 0: down to label0
+ tee_local $push14=, $0=, $pop0
+ br_if 0, $pop14 # 0: down to label0
# BB#1: # %if.then
- i32.const $push7=, 20
+ i32.const $push6=, 20
i32.const $push4=, .L.str
- i32.const $push6=, 924
+ i32.const $push5=, 924
i32.const $push3=, .L__func__.test
- i32.const $push5=, 0
- i32.call $2=, fn1@FUNCTION, $pop7, $pop4, $pop6, $pop3, $pop5
+ i32.const $push15=, 0
+ i32.call $push7=, fn1@FUNCTION, $pop6, $pop4, $pop5, $pop3, $pop15
i32.const $push8=, 255
- i32.and $push9=, $2, $pop8
- i32.const $push14=, 0
- i32.eq $push15=, $pop9, $pop14
- br_if 0, $pop15 # 0: down to label0
+ i32.and $push9=, $pop7, $pop8
+ i32.const $push17=, 0
+ i32.eq $push18=, $pop9, $pop17
+ br_if 0, $pop18 # 0: down to label0
# BB#2: # %cond.true
i32.const $push10=, 33816706
i32.call $2=, fn3@FUNCTION, $pop10
i32.const $push11=, .L.str.1
- i32.call $3=, fn4@FUNCTION, $pop11
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.sub $11=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $11=, 0($5), $11
- i32.store $discard=, 0($11), $3
- call fn2@FUNCTION, $2
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 4
- i32.add $11=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $11=, 0($7), $11
+ i32.const $push16=, 0
+ i32.call $push12=, fn4@FUNCTION, $pop11, $pop16
+ i32.store $discard=, 0($6):p2align=4, $pop12
+ call fn2@FUNCTION, $2, $6
.LBB0_3: # %if.end
end_block # label0:
- i32.div_s $push12=, $1, $0
- i32.const $10=, 16
- i32.add $11=, $11, $10
- i32.const $10=, __stack_pointer
- i32.store $11=, 0($10), $11
- return $pop12
+ i32.div_s $push13=, $1, $0
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
+ return $pop13
.endfunc
.Lfunc_end0:
.size test, .Lfunc_end0-test
@@ -91,7 +80,7 @@ fn1: # @fn1
.globl fn2
.type fn2,@function
fn2: # @fn2
- .param i32
+ .param i32, i32
# BB#0: # %entry
#APP
#NO_APP
@@ -128,7 +117,7 @@ fn3: # @fn3
.globl fn4
.type fn4,@function
fn4: # @fn4
- .param i32
+ .param i32, i32
.result i32
# BB#0: # %entry
#APP
diff --git a/test/torture-s/pr44942.c.s b/test/torture-s/pr44942.c.s
index 1242033ea..a9bfd4522 100644
--- a/test/torture-s/pr44942.c.s
+++ b/test/torture-s/pr44942.c.s
@@ -5,17 +5,16 @@
.globl test1
.type test1,@function
test1: # @test1
- .param i32, i32, i32, i32, i32, i32, i32, i64, i64
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i64, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
@@ -31,7 +30,7 @@ test1: # @test1
br_if 0, $pop9 # 0: down to label0
# BB#1: # %if.end
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -48,17 +47,16 @@ test1: # @test1
.globl test2
.type test2,@function
test2: # @test2
- .param i32, i32, i32, i32, i32, i32, i32, i64, i64, i32, i64, i64, i32, i64, i64, i32, i64, i64
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i64, i64, i32, i64, i64, i32, i64, i64, i32, i64, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $19=, __stack_pointer
i32.load $19=, 0($19)
i32.const $20=, 16
i32.sub $22=, $19, $20
- copy_local $23=, $22
i32.const $20=, __stack_pointer
i32.store $22=, 0($20), $22
- i32.store $push0=, 12($22), $23
+ i32.store $push0=, 12($22), $18
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
@@ -74,7 +72,7 @@ test2: # @test2
br_if 0, $pop9 # 0: down to label1
# BB#1: # %if.end
i32.const $21=, 16
- i32.add $22=, $23, $21
+ i32.add $22=, $22, $21
i32.const $21=, __stack_pointer
i32.store $22=, 0($21), $22
return
@@ -91,17 +89,16 @@ test2: # @test2
.globl test3
.type test3,@function
test3: # @test3
- .param f64, f64, f64, f64, f64, f64, f64, i64, i64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, f64, f64, f64, f64, f64, f64, i64, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push1=, 7
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -8
@@ -117,7 +114,7 @@ test3: # @test3
br_if 0, $pop9 # 0: down to label2
# BB#1: # %if.end
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -134,17 +131,16 @@ test3: # @test3
.globl test4
.type test4,@function
test4: # @test4
- .param f64, f64, f64, f64, f64, f64, f64, i64, i64, f64, i64, i64, f64, i64, i64, f64, i64, i64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, f64, f64, f64, f64, f64, f64, i64, i64, f64, i64, i64, f64, i64, i64, f64, i64, i64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $19=, __stack_pointer
i32.load $19=, 0($19)
i32.const $20=, 16
i32.sub $22=, $19, $20
- copy_local $23=, $22
i32.const $20=, __stack_pointer
i32.store $22=, 0($20), $22
- i32.store $push0=, 12($22), $23
+ i32.store $push0=, 12($22), $18
i32.const $push1=, 7
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -8
@@ -160,7 +156,7 @@ test4: # @test4
br_if 0, $pop9 # 0: down to label3
# BB#1: # %if.end
i32.const $21=, 16
- i32.add $22=, $23, $21
+ i32.add $22=, $22, $21
i32.const $21=, __stack_pointer
i32.store $22=, 0($21), $22
return
@@ -178,86 +174,50 @@ test4: # @test4
.type main,@function
main: # @main
.result i32
- .local i32, i32, i64, f64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i64, f64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $20=, __stack_pointer
- i32.load $20=, 0($20)
- i32.const $21=, 48
- i32.sub $23=, $20, $21
- i32.const $21=, __stack_pointer
- i32.store $23=, 0($21), $23
+ i32.const $3=, __stack_pointer
+ i32.load $3=, 0($3)
+ i32.const $4=, 128
+ i32.sub $12=, $3, $4
i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $23=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $23=, 0($5), $23
+ i32.store $12=, 0($4), $12
i32.const $push0=, 8
- i32.add $0=, $23, $pop0
- i32.const $push1=, 1234
- i32.store $0=, 0($0), $pop1
- call test1@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $2
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.add $23=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $23=, 0($7), $23
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 40
- i32.sub $23=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $23=, 0($9), $23
- i32.const $push2=, 32
- i32.add $1=, $23, $pop2
- i32.store $discard=, 0($1), $0
- call test2@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $2, $2, $0, $2, $2, $0, $2
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 40
- i32.add $23=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $23=, 0($11), $23
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 16
- i32.sub $23=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $23=, 0($13), $23
- i32.const $push6=, 8
- i32.add $0=, $23, $pop6
- i64.const $push3=, 4653142004841054208
- i64.store $2=, 0($0), $pop3
- call test3@FUNCTION, $3, $3, $3, $3, $3, $3, $3, $2
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 16
- i32.add $23=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $23=, 0($15), $23
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 40
- i32.sub $23=, $16, $17
- i32.const $17=, __stack_pointer
- i32.store $23=, 0($17), $23
- i32.const $push5=, 32
- i32.add $0=, $23, $pop5
- i64.store $discard=, 0($0), $2
- call test4@FUNCTION, $3, $3, $3, $3, $3, $3, $3, $2, $2, $3, $2, $2, $3, $2
- i32.const $18=, __stack_pointer
- i32.load $18=, 0($18)
- i32.const $19=, 40
- i32.add $23=, $18, $19
- i32.const $19=, __stack_pointer
- i32.store $23=, 0($19), $23
- i32.const $push4=, 0
- i32.const $22=, 48
- i32.add $23=, $23, $22
- i32.const $22=, __stack_pointer
- i32.store $23=, 0($22), $23
- return $pop4
+ i32.const $6=, 112
+ i32.add $6=, $12, $6
+ i32.or $push1=, $6, $pop0
+ i32.const $push2=, 1234
+ i32.store $0=, 0($pop1):p2align=3, $pop2
+ i32.const $7=, 112
+ i32.add $7=, $12, $7
+ call test1@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $1, $7
+ i32.const $push3=, 32
+ i32.const $8=, 64
+ i32.add $8=, $12, $8
+ i32.add $push4=, $8, $pop3
+ i32.store $discard=, 0($pop4):p2align=4, $0
+ i32.const $9=, 64
+ i32.add $9=, $12, $9
+ call test2@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $1, $1, $0, $1, $1, $0, $1, $9
+ i32.const $push10=, 8
+ i32.const $10=, 48
+ i32.add $10=, $12, $10
+ i32.or $push5=, $10, $pop10
+ i64.const $push6=, 4653142004841054208
+ i64.store $1=, 0($pop5), $pop6
+ i32.const $11=, 48
+ i32.add $11=, $12, $11
+ call test3@FUNCTION, $2, $2, $2, $2, $2, $2, $2, $1, $11
+ i32.const $push9=, 32
+ i32.add $push7=, $12, $pop9
+ i64.store $discard=, 0($pop7):p2align=4, $1
+ call test4@FUNCTION, $2, $2, $2, $2, $2, $2, $2, $1, $1, $2, $1, $1, $2, $1, $12
+ i32.const $push8=, 0
+ i32.const $5=, 128
+ i32.add $12=, $12, $5
+ i32.const $5=, __stack_pointer
+ i32.store $12=, 0($5), $12
+ return $pop8
.endfunc
.Lfunc_end4:
.size main, .Lfunc_end4-main
diff --git a/test/torture-s/pr56205.c.s b/test/torture-s/pr56205.c.s
index 89b855826..ba1a94c7f 100644
--- a/test/torture-s/pr56205.c.s
+++ b/test/torture-s/pr56205.c.s
@@ -5,110 +5,91 @@
.globl f4
.type f4,@function
f4: # @f4
- .param i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 16
- i32.sub $16=, $13, $14
- copy_local $17=, $16
- i32.const $14=, __stack_pointer
- i32.store $16=, 0($14), $16
- i32.store $discard=, 12($16), $17
+ i32.const $5=, __stack_pointer
+ i32.load $5=, 0($5)
+ i32.const $6=, 32
+ i32.sub $11=, $5, $6
+ i32.const $6=, __stack_pointer
+ i32.store $11=, 0($6), $11
+ i32.store $discard=, 28($11), $2
block
br_if 0, $0 # 0: down to label0
# BB#1: # %entry
- i32.const $push18=, 0
- i32.load8_u $push1=, c($pop18):p2align=4
+ i32.const $push22=, 0
+ i32.load8_u $push1=, c($pop22):p2align=4
i32.const $push2=, 255
i32.and $push3=, $pop1, $pop2
br_if 0, $pop3 # 0: down to label0
# BB#2: # %if.then
i32.const $push4=, 0
- i32.const $push19=, 0
- i32.load $push5=, b($pop19)
+ i32.const $push23=, 0
+ i32.load $push5=, b($pop23)
i32.const $push6=, 1
i32.add $push7=, $pop5, $pop6
i32.store $discard=, b($pop4), $pop7
.LBB0_3: # %if.end
end_block # label0:
- i32.const $push22=, .L.str.3
+ i32.const $push26=, .L.str.3
i32.const $push8=, .L.str.1
- i32.select $0=, $pop22, $pop8, $0
- i32.load $2=, 12($16)
- i32.const $push21=, 0
- i32.const $push20=, 0
- i32.load $push9=, a($pop20)
+ i32.select $0=, $pop26, $pop8, $0
+ i32.load $3=, 28($11)
+ i32.const $push25=, 0
+ i32.const $push24=, 0
+ i32.load $push9=, a($pop24)
i32.const $push10=, 1
i32.add $push0=, $pop9, $pop10
- i32.store $3=, a($pop21), $pop0
+ i32.store $2=, a($pop25), $pop0
block
block
- i32.const $push25=, 0
- i32.eq $push26=, $1, $pop25
- br_if 0, $pop26 # 0: down to label2
+ i32.const $push29=, 0
+ i32.eq $push30=, $1, $pop29
+ br_if 0, $pop30 # 0: down to label2
# BB#4: # %land.rhs.i
i32.load8_u $4=, 0($1)
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 12
- i32.sub $16=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $16=, 0($6), $16
- i32.store $discard=, 0($16), $0
- i32.const $push13=, 8
- i32.add $0=, $16, $pop13
+ i32.const $push13=, 4
+ i32.const $8=, 16
+ i32.add $8=, $11, $8
+ i32.or $push14=, $8, $pop13
+ i32.store $discard=, 0($pop14), $2
+ i32.const $push15=, 8
+ i32.const $9=, 16
+ i32.add $9=, $11, $9
+ i32.or $push16=, $9, $pop15
i32.const $push11=, .L.str.4
- i32.const $push23=, .L.str.3
- i32.select $push12=, $pop11, $pop23, $4
- i32.store $discard=, 0($0), $pop12
- i32.const $push14=, 4
- i32.add $0=, $16, $pop14
- i32.store $discard=, 0($0), $3
- call f1@FUNCTION, $1
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 12
- i32.add $16=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $16=, 0($8), $16
- i32.load8_u $push15=, 0($1)
- i32.const $push27=, 0
- i32.eq $push28=, $pop15, $pop27
- br_if 1, $pop28 # 1: down to label1
+ i32.const $push27=, .L.str.3
+ i32.select $push12=, $pop11, $pop27, $4
+ i32.store $discard=, 0($pop16):p2align=3, $pop12
+ i32.store $discard=, 16($11):p2align=4, $0
+ i32.const $10=, 16
+ i32.add $10=, $11, $10
+ call f1@FUNCTION, $1, $10
+ i32.load8_u $push17=, 0($1)
+ i32.const $push31=, 0
+ i32.eq $push32=, $pop17, $pop31
+ br_if 1, $pop32 # 1: down to label1
# BB#5: # %if.then.i
- call f2@FUNCTION, $1, $2
+ call f2@FUNCTION, $1, $3
br 1 # 1: down to label1
.LBB0_6: # %if.end.critedge.i
end_block # label2:
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 12
- i32.sub $16=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $16=, 0($10), $16
- i32.store $discard=, 0($16), $0
- i32.const $push16=, 8
- i32.add $1=, $16, $pop16
- i32.const $push24=, .L.str.3
- i32.store $discard=, 0($1), $pop24
- i32.const $push17=, 4
- i32.add $1=, $16, $pop17
- i32.store $discard=, 0($1), $3
- call f1@FUNCTION, $1
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 12
- i32.add $16=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $16=, 0($12), $16
+ i32.const $push18=, 8
+ i32.or $push19=, $11, $pop18
+ i32.const $push28=, .L.str.3
+ i32.store $discard=, 0($pop19):p2align=3, $pop28
+ i32.const $push20=, 4
+ i32.or $push21=, $11, $pop20
+ i32.store $discard=, 0($pop21), $2
+ i32.store $discard=, 0($11):p2align=4, $0
+ call f1@FUNCTION, $1, $11
.LBB0_7: # %f3.exit
end_block # label1:
- i32.const $15=, 16
- i32.add $16=, $17, $15
- i32.const $15=, __stack_pointer
- i32.store $16=, 0($15), $16
+ i32.const $7=, 32
+ i32.add $11=, $11, $7
+ i32.const $7=, __stack_pointer
+ i32.store $11=, 0($7), $11
return
.endfunc
.Lfunc_end0:
@@ -120,60 +101,48 @@ f4: # @f4
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 32
- i32.sub $8=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $8=, 0($6), $8
+ i32.const $0=, __stack_pointer
+ i32.load $0=, 0($0)
+ i32.const $1=, 32
+ i32.sub $3=, $0, $1
+ i32.const $1=, __stack_pointer
+ i32.store $3=, 0($1), $3
#APP
#NO_APP
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 24
- i32.sub $8=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $8=, 0($2), $8
- i32.const $push1=, .L.str.1
- i32.store $discard=, 0($8), $pop1
- i32.const $push2=, 16
- i32.add $0=, $8, $pop2
+ i32.const $push1=, 16
+ i32.add $push2=, $3, $pop1
i32.const $push3=, 26
- i32.store $discard=, 0($0), $pop3
+ i32.store $discard=, 0($pop2):p2align=4, $pop3
i32.const $push4=, 8
- i32.add $0=, $8, $pop4
- i64.const $push5=, 4622945017495814144
- i64.store $discard=, 0($0), $pop5
- i32.const $push13=, 0
- i32.const $push6=, .L.str
- call f4@FUNCTION, $pop13, $pop6
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 24
- i32.add $8=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $8=, 0($4), $8
+ i32.or $push5=, $3, $pop4
+ i64.const $push6=, 4622945017495814144
+ i64.store $discard=, 0($pop5), $pop6
+ i32.const $push7=, .L.str.1
+ i32.store $discard=, 0($3):p2align=4, $pop7
+ i32.const $push15=, 0
+ i32.const $push8=, .L.str
+ call f4@FUNCTION, $pop15, $pop8, $3
block
- i32.const $push12=, 0
- i32.load $push7=, a($pop12)
- i32.const $push11=, 1
- i32.ne $push8=, $pop7, $pop11
- br_if 0, $pop8 # 0: down to label3
+ i32.const $push14=, 0
+ i32.load $push9=, a($pop14)
+ i32.const $push13=, 1
+ i32.ne $push10=, $pop9, $pop13
+ br_if 0, $pop10 # 0: down to label3
# BB#1: # %entry
- i32.const $push15=, 0
- i32.load $push0=, b($pop15)
- i32.const $push14=, 1
- i32.ne $push9=, $pop0, $pop14
- br_if 0, $pop9 # 0: down to label3
+ i32.const $push17=, 0
+ i32.load $push0=, b($pop17)
+ i32.const $push16=, 1
+ i32.ne $push11=, $pop0, $pop16
+ br_if 0, $pop11 # 0: down to label3
# BB#2: # %if.end
- i32.const $push10=, 0
- i32.const $7=, 32
- i32.add $8=, $8, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
- return $pop10
+ i32.const $push12=, 0
+ i32.const $2=, 32
+ i32.add $3=, $3, $2
+ i32.const $2=, __stack_pointer
+ i32.store $3=, 0($2), $3
+ return $pop12
.LBB1_3: # %if.then
end_block # label3:
call abort@FUNCTION
@@ -185,19 +154,18 @@ main: # @main
.section .text.f1,"ax",@progbits
.type f1,@function
f1: # @f1
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
#APP
#NO_APP
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push27=, 3
i32.add $push1=, $pop0, $pop27
i32.const $push26=, -4
@@ -241,7 +209,7 @@ f1: # @f1
br_if 0, $pop23 # 0: down to label4
# BB#3: # %if.end9
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
diff --git a/test/torture-s/printf-1.c.s b/test/torture-s/printf-1.c.s
index 2ef8aefd3..312c4aebe 100644
--- a/test/torture-s/printf-1.c.s
+++ b/test/torture-s/printf-1.c.s
@@ -6,270 +6,152 @@
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $50=, __stack_pointer
- i32.load $50=, 0($50)
- i32.const $51=, 16
- i32.sub $53=, $50, $51
- i32.const $51=, __stack_pointer
- i32.store $53=, 0($51), $53
- i32.const $push32=, .Lstr
- i32.call $discard=, printf@FUNCTION, $pop32
- i32.const $push31=, .Lstr
- i32.call $0=, printf@FUNCTION, $pop31
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 192
+ i32.sub $15=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $15=, 0($2), $15
+ i32.const $push45=, .Lstr
+ i32.const $push44=, 0
+ i32.call $discard=, printf@FUNCTION, $pop45, $pop44
block
- i32.const $push0=, 5
- i32.ne $push1=, $0, $pop0
- br_if 0, $pop1 # 0: down to label0
+ i32.const $push43=, .Lstr
+ i32.const $push42=, 0
+ i32.call $push0=, printf@FUNCTION, $pop43, $pop42
+ i32.const $push1=, 5
+ i32.ne $push2=, $pop0, $pop1
+ br_if 0, $pop2 # 0: down to label0
# BB#1: # %if.end
- i32.const $push33=, .Lstr
- i32.call $discard=, puts@FUNCTION, $pop33
- i32.const $push2=, .L.str.1
- i32.call $0=, printf@FUNCTION, $pop2
+ i32.const $push47=, .Lstr
+ i32.call $discard=, puts@FUNCTION, $pop47
block
- i32.const $push3=, 6
- i32.ne $push4=, $0, $pop3
- br_if 0, $pop4 # 0: down to label1
+ i32.const $push3=, .L.str.1
+ i32.const $push46=, 0
+ i32.call $push4=, printf@FUNCTION, $pop3, $pop46
+ i32.const $push5=, 6
+ i32.ne $push6=, $pop4, $pop5
+ br_if 0, $pop6 # 0: down to label1
# BB#2: # %if.end6
- i32.const $push5=, 97
- i32.call $discard=, putchar@FUNCTION, $pop5
- i32.const $push6=, .L.str.2
- i32.call $0=, printf@FUNCTION, $pop6
+ i32.const $push7=, 97
+ i32.call $discard=, putchar@FUNCTION, $pop7
block
- i32.const $push7=, 1
- i32.ne $push8=, $0, $pop7
- br_if 0, $pop8 # 0: down to label2
+ i32.const $push8=, .L.str.2
+ i32.const $push9=, 0
+ i32.call $push10=, printf@FUNCTION, $pop8, $pop9
+ i32.const $push11=, 1
+ i32.ne $push12=, $pop10, $pop11
+ br_if 0, $pop12 # 0: down to label2
# BB#3: # %if.end16
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.sub $53=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $53=, 0($3), $53
- i32.const $push9=, .Lstr
- i32.store $0=, 0($53), $pop9
- i32.const $push35=, .L.str.4
- i32.call $discard=, printf@FUNCTION, $pop35
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.add $53=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $53=, 0($5), $53
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 4
- i32.sub $53=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $53=, 0($7), $53
- i32.store $discard=, 0($53), $0
- i32.const $push34=, .L.str.4
- i32.call $0=, printf@FUNCTION, $pop34
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 4
- i32.add $53=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $53=, 0($9), $53
+ i32.const $push13=, .Lstr
+ i32.store $0=, 176($15):p2align=4, $pop13
+ i32.const $push49=, .L.str.4
+ i32.const $4=, 176
+ i32.add $4=, $15, $4
+ i32.call $discard=, printf@FUNCTION, $pop49, $4
+ i32.store $discard=, 160($15):p2align=4, $0
+ i32.const $push48=, .L.str.4
+ i32.const $5=, 160
+ i32.add $5=, $15, $5
block
- i32.const $push10=, 5
- i32.ne $push11=, $0, $pop10
- br_if 0, $pop11 # 0: down to label3
+ i32.call $push14=, printf@FUNCTION, $pop48, $5
+ i32.const $push15=, 5
+ i32.ne $push16=, $pop14, $pop15
+ br_if 0, $pop16 # 0: down to label3
# BB#4: # %if.end21
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 4
- i32.sub $53=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $53=, 0($11), $53
- i32.const $push12=, .L.str.1
- i32.store $0=, 0($53), $pop12
- i32.const $push37=, .L.str.4
- i32.call $discard=, printf@FUNCTION, $pop37
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 4
- i32.add $53=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $53=, 0($13), $53
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 4
- i32.sub $53=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $53=, 0($15), $53
- i32.store $discard=, 0($53), $0
- i32.const $push36=, .L.str.4
- i32.call $0=, printf@FUNCTION, $pop36
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 4
- i32.add $53=, $16, $17
- i32.const $17=, __stack_pointer
- i32.store $53=, 0($17), $53
+ i32.const $push17=, .L.str.1
+ i32.store $0=, 144($15):p2align=4, $pop17
+ i32.const $push51=, .L.str.4
+ i32.const $6=, 144
+ i32.add $6=, $15, $6
+ i32.call $discard=, printf@FUNCTION, $pop51, $6
+ i32.store $discard=, 128($15):p2align=4, $0
+ i32.const $push50=, .L.str.4
+ i32.const $7=, 128
+ i32.add $7=, $15, $7
block
- i32.const $push13=, 6
- i32.ne $push14=, $0, $pop13
- br_if 0, $pop14 # 0: down to label4
+ i32.call $push18=, printf@FUNCTION, $pop50, $7
+ i32.const $push19=, 6
+ i32.ne $push20=, $pop18, $pop19
+ br_if 0, $pop20 # 0: down to label4
# BB#5: # %if.end26
- i32.const $18=, __stack_pointer
- i32.load $18=, 0($18)
- i32.const $19=, 4
- i32.sub $53=, $18, $19
- i32.const $19=, __stack_pointer
- i32.store $53=, 0($19), $53
- i32.const $push15=, .L.str.2
- i32.store $0=, 0($53), $pop15
- i32.const $push39=, .L.str.4
- i32.call $discard=, printf@FUNCTION, $pop39
- i32.const $20=, __stack_pointer
- i32.load $20=, 0($20)
- i32.const $21=, 4
- i32.add $53=, $20, $21
- i32.const $21=, __stack_pointer
- i32.store $53=, 0($21), $53
- i32.const $22=, __stack_pointer
- i32.load $22=, 0($22)
- i32.const $23=, 4
- i32.sub $53=, $22, $23
- i32.const $23=, __stack_pointer
- i32.store $53=, 0($23), $53
- i32.store $discard=, 0($53), $0
- i32.const $push38=, .L.str.4
- i32.call $0=, printf@FUNCTION, $pop38
- i32.const $24=, __stack_pointer
- i32.load $24=, 0($24)
- i32.const $25=, 4
- i32.add $53=, $24, $25
- i32.const $25=, __stack_pointer
- i32.store $53=, 0($25), $53
+ i32.const $push21=, .L.str.2
+ i32.store $0=, 112($15):p2align=4, $pop21
+ i32.const $push53=, .L.str.4
+ i32.const $8=, 112
+ i32.add $8=, $15, $8
+ i32.call $discard=, printf@FUNCTION, $pop53, $8
+ i32.store $discard=, 96($15):p2align=4, $0
+ i32.const $push52=, .L.str.4
+ i32.const $9=, 96
+ i32.add $9=, $15, $9
block
- i32.const $push16=, 1
- i32.ne $push17=, $0, $pop16
- br_if 0, $pop17 # 0: down to label5
+ i32.call $push22=, printf@FUNCTION, $pop52, $9
+ i32.const $push23=, 1
+ i32.ne $push24=, $pop22, $pop23
+ br_if 0, $pop24 # 0: down to label5
# BB#6: # %if.end31
- i32.const $26=, __stack_pointer
- i32.load $26=, 0($26)
- i32.const $27=, 4
- i32.sub $53=, $26, $27
- i32.const $27=, __stack_pointer
- i32.store $53=, 0($27), $53
- i32.const $push18=, .L.str.3
- i32.store $0=, 0($53), $pop18
- i32.const $push41=, .L.str.4
- i32.call $discard=, printf@FUNCTION, $pop41
- i32.const $28=, __stack_pointer
- i32.load $28=, 0($28)
- i32.const $29=, 4
- i32.add $53=, $28, $29
- i32.const $29=, __stack_pointer
- i32.store $53=, 0($29), $53
- i32.const $30=, __stack_pointer
- i32.load $30=, 0($30)
- i32.const $31=, 4
- i32.sub $53=, $30, $31
- i32.const $31=, __stack_pointer
- i32.store $53=, 0($31), $53
- i32.store $discard=, 0($53), $0
- i32.const $push40=, .L.str.4
- i32.call $0=, printf@FUNCTION, $pop40
- i32.const $32=, __stack_pointer
- i32.load $32=, 0($32)
- i32.const $33=, 4
- i32.add $53=, $32, $33
- i32.const $33=, __stack_pointer
- i32.store $53=, 0($33), $53
+ i32.const $push25=, .L.str.3
+ i32.store $0=, 80($15):p2align=4, $pop25
+ i32.const $push55=, .L.str.4
+ i32.const $10=, 80
+ i32.add $10=, $15, $10
+ i32.call $discard=, printf@FUNCTION, $pop55, $10
+ i32.store $discard=, 64($15):p2align=4, $0
+ i32.const $push54=, .L.str.4
+ i32.const $11=, 64
+ i32.add $11=, $15, $11
block
- br_if 0, $0 # 0: down to label6
+ i32.call $push26=, printf@FUNCTION, $pop54, $11
+ br_if 0, $pop26 # 0: down to label6
# BB#7: # %if.end36
- i32.const $push19=, 120
- i32.call $discard=, putchar@FUNCTION, $pop19
- i32.const $34=, __stack_pointer
- i32.load $34=, 0($34)
- i32.const $35=, 4
- i32.sub $53=, $34, $35
- i32.const $35=, __stack_pointer
- i32.store $53=, 0($35), $53
- i32.const $push42=, 120
- i32.store $discard=, 0($53), $pop42
- i32.const $push20=, .L.str.5
- i32.call $0=, printf@FUNCTION, $pop20
- i32.const $36=, __stack_pointer
- i32.load $36=, 0($36)
- i32.const $37=, 4
- i32.add $53=, $36, $37
- i32.const $37=, __stack_pointer
- i32.store $53=, 0($37), $53
+ i32.const $push27=, 120
+ i32.call $discard=, putchar@FUNCTION, $pop27
+ i32.const $push56=, 120
+ i32.store $discard=, 48($15):p2align=4, $pop56
+ i32.const $push28=, .L.str.5
+ i32.const $12=, 48
+ i32.add $12=, $15, $12
block
- i32.const $push21=, 1
- i32.ne $push22=, $0, $pop21
- br_if 0, $pop22 # 0: down to label7
+ i32.call $push29=, printf@FUNCTION, $pop28, $12
+ i32.const $push30=, 1
+ i32.ne $push31=, $pop29, $pop30
+ br_if 0, $pop31 # 0: down to label7
# BB#8: # %if.end41
- i32.const $push23=, .L.str.1
- i32.call $discard=, puts@FUNCTION, $pop23
- i32.const $38=, __stack_pointer
- i32.load $38=, 0($38)
- i32.const $39=, 4
- i32.sub $53=, $38, $39
- i32.const $39=, __stack_pointer
- i32.store $53=, 0($39), $53
- i32.const $push43=, .L.str.1
- i32.store $discard=, 0($53), $pop43
- i32.const $push24=, .L.str.6
- i32.call $0=, printf@FUNCTION, $pop24
- i32.const $40=, __stack_pointer
- i32.load $40=, 0($40)
- i32.const $41=, 4
- i32.add $53=, $40, $41
- i32.const $41=, __stack_pointer
- i32.store $53=, 0($41), $53
+ i32.const $push32=, .L.str.1
+ i32.call $discard=, puts@FUNCTION, $pop32
+ i32.const $push57=, .L.str.1
+ i32.store $discard=, 32($15):p2align=4, $pop57
+ i32.const $push33=, .L.str.6
+ i32.const $13=, 32
+ i32.add $13=, $15, $13
block
- i32.const $push25=, 7
- i32.ne $push26=, $0, $pop25
- br_if 0, $pop26 # 0: down to label8
+ i32.call $push34=, printf@FUNCTION, $pop33, $13
+ i32.const $push35=, 7
+ i32.ne $push36=, $pop34, $pop35
+ br_if 0, $pop36 # 0: down to label8
# BB#9: # %if.end46
- i32.const $42=, __stack_pointer
- i32.load $42=, 0($42)
- i32.const $43=, 4
- i32.sub $53=, $42, $43
- i32.const $43=, __stack_pointer
- i32.store $53=, 0($43), $53
- i32.const $push27=, 0
- i32.store $0=, 0($53), $pop27
- i32.const $push28=, .L.str.7
- i32.call $discard=, printf@FUNCTION, $pop28
- i32.const $44=, __stack_pointer
- i32.load $44=, 0($44)
- i32.const $45=, 4
- i32.add $53=, $44, $45
- i32.const $45=, __stack_pointer
- i32.store $53=, 0($45), $53
- i32.const $46=, __stack_pointer
- i32.load $46=, 0($46)
- i32.const $47=, 4
- i32.sub $53=, $46, $47
- i32.const $47=, __stack_pointer
- i32.store $53=, 0($47), $53
- i32.store $1=, 0($53), $0
- i32.const $push44=, .L.str.7
- i32.call $0=, printf@FUNCTION, $pop44
- i32.const $48=, __stack_pointer
- i32.load $48=, 0($48)
- i32.const $49=, 4
- i32.add $53=, $48, $49
- i32.const $49=, __stack_pointer
- i32.store $53=, 0($49), $53
+ i32.const $push37=, 0
+ i32.store $0=, 16($15):p2align=4, $pop37
+ i32.const $push38=, .L.str.7
+ i32.const $14=, 16
+ i32.add $14=, $15, $14
+ i32.call $discard=, printf@FUNCTION, $pop38, $14
+ i32.store $discard=, 0($15):p2align=4, $0
block
- i32.const $push29=, 2
- i32.ne $push30=, $0, $pop29
- br_if 0, $pop30 # 0: down to label9
+ i32.const $push58=, .L.str.7
+ i32.call $push39=, printf@FUNCTION, $pop58, $15
+ i32.const $push40=, 2
+ i32.ne $push41=, $pop39, $pop40
+ br_if 0, $pop41 # 0: down to label9
# BB#10: # %if.end51
- i32.const $52=, 16
- i32.add $53=, $53, $52
- i32.const $52=, __stack_pointer
- i32.store $53=, 0($52), $53
- return $1
+ i32.const $3=, 192
+ i32.add $15=, $15, $3
+ i32.const $3=, __stack_pointer
+ i32.store $15=, 0($3), $15
+ return $0
.LBB0_11: # %if.then50
end_block # label9:
call abort@FUNCTION
diff --git a/test/torture-s/printf-chk-1.c.s b/test/torture-s/printf-chk-1.c.s
index af735ee23..690f0d81e 100644
--- a/test/torture-s/printf-chk-1.c.s
+++ b/test/torture-s/printf-chk-1.c.s
@@ -5,17 +5,16 @@
.globl __printf_chk
.type __printf_chk,@function
__printf_chk: # @__printf_chk
- .param i32, i32
+ .param i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
- i32.store $5=, 0($3), $5
+ 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
block
i32.const $push5=, 0
i32.load $push0=, should_optimize($pop5)
@@ -26,12 +25,12 @@ __printf_chk: # @__printf_chk
i32.store $discard=, should_optimize($pop7), $pop1
i32.const $push6=, 0
i32.load $push3=, stdout($pop6)
- i32.store $push2=, 12($5), $6
+ i32.store $push2=, 12($6), $2
i32.call $push4=, vfprintf@FUNCTION, $pop3, $1, $pop2
- i32.const $4=, 16
- i32.add $5=, $6, $4
- i32.const $4=, __stack_pointer
- i32.store $5=, 0($4), $5
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return $pop4
.LBB0_2: # %if.then
end_block # label0:
@@ -47,506 +46,370 @@ __printf_chk: # @__printf_chk
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $58=, __stack_pointer
- i32.load $58=, 0($58)
- i32.const $59=, 16
- i32.sub $61=, $58, $59
- i32.const $59=, __stack_pointer
- i32.store $61=, 0($59), $61
+ i32.const $2=, __stack_pointer
+ i32.load $2=, 0($2)
+ i32.const $3=, 224
+ i32.sub $18=, $2, $3
+ i32.const $3=, __stack_pointer
+ i32.store $18=, 0($3), $18
+ i32.const $push79=, .L.str
i32.const $push0=, 0
- i32.const $push62=, 0
- i32.store $0=, should_optimize($pop0), $pop62
- i32.const $push61=, .L.str
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop61
+ i32.const $push78=, 0
+ i32.store $push1=, should_optimize($pop0), $pop78
+ tee_local $push77=, $1=, $pop1
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop79, $pop77
block
- i32.load $push1=, should_optimize($0)
- i32.const $push120=, 0
- i32.eq $push121=, $pop1, $pop120
- br_if 0, $pop121 # 0: down to label1
+ i32.load $push2=, should_optimize($1)
+ i32.const $push142=, 0
+ i32.eq $push143=, $pop2, $pop142
+ br_if 0, $pop143 # 0: down to label1
# BB#1: # %if.end
- i32.store $discard=, should_optimize($0), $0
- i32.const $push63=, .L.str
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop63
block
- i32.const $push2=, 5
- i32.ne $push3=, $0, $pop2
- br_if 0, $pop3 # 0: down to label2
+ i32.const $push80=, .L.str
+ i32.store $push3=, should_optimize($1), $1
+ i32.call $push4=, __printf_chk@FUNCTION, $1, $pop80, $pop3
+ i32.const $push5=, 5
+ i32.ne $push6=, $pop4, $pop5
+ br_if 0, $pop6 # 0: down to label2
# BB#2: # %if.end3
block
- i32.const $push64=, 0
- i32.load $push4=, should_optimize($pop64)
- i32.const $push122=, 0
- i32.eq $push123=, $pop4, $pop122
- br_if 0, $pop123 # 0: down to label3
+ i32.const $push81=, 0
+ i32.load $push7=, should_optimize($pop81)
+ i32.const $push144=, 0
+ i32.eq $push145=, $pop7, $pop144
+ br_if 0, $pop145 # 0: down to label3
# BB#3: # %if.end6
- i32.const $push67=, 0
- i32.const $push5=, 1
- i32.store $discard=, should_optimize($pop67), $pop5
- i32.const $push66=, .L.str.1
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop66
- block
- i32.const $push65=, 0
- i32.load $push6=, should_optimize($pop65)
- i32.const $push124=, 0
- i32.eq $push125=, $pop6, $pop124
- br_if 0, $pop125 # 0: down to label4
+ i32.const $push85=, 0
+ i32.const $push8=, 1
+ i32.store $discard=, should_optimize($pop85), $pop8
+ i32.const $push84=, .L.str.1
+ i32.const $push83=, 0
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop84, $pop83
+ block
+ i32.const $push82=, 0
+ i32.load $push9=, should_optimize($pop82)
+ i32.const $push146=, 0
+ i32.eq $push147=, $pop9, $pop146
+ br_if 0, $pop147 # 0: down to label4
# BB#4: # %if.end10
- i32.const $push7=, 0
- i32.const $push69=, 0
- i32.store $1=, should_optimize($pop7), $pop69
- i32.const $push68=, .L.str.1
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop68
block
- i32.const $push8=, 6
- i32.ne $push9=, $0, $pop8
- br_if 0, $pop9 # 0: down to label5
+ i32.const $push88=, .L.str.1
+ i32.const $push10=, 0
+ i32.const $push87=, 0
+ i32.store $push11=, should_optimize($pop10), $pop87
+ tee_local $push86=, $1=, $pop11
+ i32.call $push12=, __printf_chk@FUNCTION, $1, $pop88, $pop86
+ i32.const $push13=, 6
+ i32.ne $push14=, $pop12, $pop13
+ br_if 0, $pop14 # 0: down to label5
# BB#5: # %if.end14
block
- i32.load $push10=, should_optimize($1)
- i32.const $push126=, 0
- i32.eq $push127=, $pop10, $pop126
- br_if 0, $pop127 # 0: down to label6
+ i32.load $push15=, should_optimize($1)
+ i32.const $push148=, 0
+ i32.eq $push149=, $pop15, $pop148
+ br_if 0, $pop149 # 0: down to label6
# BB#6: # %if.end17
- i32.const $push72=, 0
- i32.const $push11=, 1
- i32.store $0=, should_optimize($pop72), $pop11
- i32.const $push71=, .L.str.2
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop71
- block
- i32.const $push70=, 0
- i32.load $push12=, should_optimize($pop70)
- i32.const $push128=, 0
- i32.eq $push129=, $pop12, $pop128
- br_if 0, $pop129 # 0: down to label7
+ i32.const $push92=, 0
+ i32.const $push16=, 1
+ i32.store $1=, should_optimize($pop92), $pop16
+ i32.const $push91=, .L.str.2
+ i32.const $push90=, 0
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop91, $pop90
+ block
+ i32.const $push89=, 0
+ i32.load $push17=, should_optimize($pop89)
+ i32.const $push150=, 0
+ i32.eq $push151=, $pop17, $pop150
+ br_if 0, $pop151 # 0: down to label7
# BB#7: # %if.end21
- i32.const $push75=, 0
- i32.const $push74=, 0
- i32.store $discard=, should_optimize($pop75), $pop74
- i32.const $push73=, .L.str.2
- i32.call $1=, __printf_chk@FUNCTION, $0, $pop73
- block
- i32.ne $push13=, $1, $0
- br_if 0, $pop13 # 0: down to label8
+ block
+ i32.const $push95=, .L.str.2
+ i32.const $push94=, 0
+ i32.const $push93=, 0
+ i32.store $push18=, should_optimize($pop94), $pop93
+ i32.call $push19=, __printf_chk@FUNCTION, $1, $pop95, $pop18
+ i32.ne $push20=, $pop19, $1
+ br_if 0, $pop20 # 0: down to label8
# BB#8: # %if.end25
block
- i32.const $push76=, 0
- i32.load $push14=, should_optimize($pop76)
- i32.const $push130=, 0
- i32.eq $push131=, $pop14, $pop130
- br_if 0, $pop131 # 0: down to label9
+ i32.const $push96=, 0
+ i32.load $push21=, should_optimize($pop96)
+ i32.const $push152=, 0
+ i32.eq $push153=, $pop21, $pop152
+ br_if 0, $pop153 # 0: down to label9
# BB#9: # %if.end28
- i32.const $push79=, 0
- i32.const $push15=, 1
- i32.store $discard=, should_optimize($pop79), $pop15
- i32.const $push78=, .L.str.3
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop78
- block
- i32.const $push77=, 0
- i32.load $push16=, should_optimize($pop77)
- i32.const $push132=, 0
- i32.eq $push133=, $pop16, $pop132
- br_if 0, $pop133 # 0: down to label10
+ i32.const $push100=, 0
+ i32.const $push22=, 1
+ i32.store $discard=, should_optimize($pop100), $pop22
+ i32.const $push99=, .L.str.3
+ i32.const $push98=, 0
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop99, $pop98
+ block
+ i32.const $push97=, 0
+ i32.load $push23=, should_optimize($pop97)
+ i32.const $push154=, 0
+ i32.eq $push155=, $pop23, $pop154
+ br_if 0, $pop155 # 0: down to label10
# BB#10: # %if.end32
- i32.const $push17=, 0
- i32.const $push81=, 0
- i32.store $1=, should_optimize($pop17), $pop81
- i32.const $push80=, .L.str.3
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop80
block
- br_if 0, $0 # 0: down to label11
+ i32.const $push103=, .L.str.3
+ i32.const $push24=, 0
+ i32.const $push102=, 0
+ i32.store $push25=, should_optimize($pop24), $pop102
+ tee_local $push101=, $1=, $pop25
+ i32.call $push26=, __printf_chk@FUNCTION, $1, $pop103, $pop101
+ br_if 0, $pop26 # 0: down to label11
# BB#11: # %if.end36
block
- i32.load $push18=, should_optimize($1)
- i32.const $push134=, 0
- i32.eq $push135=, $pop18, $pop134
- br_if 0, $pop135 # 0: down to label12
+ i32.load $push27=, should_optimize($1)
+ i32.const $push156=, 0
+ i32.eq $push157=, $pop27, $pop156
+ br_if 0, $pop157 # 0: down to label12
# BB#12: # %if.end39
- i32.const $push19=, 0
- i32.const $push83=, 0
- i32.store $0=, should_optimize($pop19), $pop83
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 4
- i32.sub $61=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $61=, 0($3), $61
- i32.const $push20=, .L.str
- i32.store $1=, 0($61), $pop20
- i32.const $push82=, .L.str.4
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop82
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 4
- i32.add $61=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $61=, 0($5), $61
- block
- i32.load $push21=, should_optimize($0)
- i32.const $push136=, 0
- i32.eq $push137=, $pop21, $pop136
- br_if 0, $pop137 # 0: down to label13
+ i32.const $push28=, 0
+ i32.const $push105=, 0
+ i32.store $1=, should_optimize($pop28), $pop105
+ i32.const $push29=, .L.str
+ i32.store $0=, 208($18):p2align=4, $pop29
+ i32.const $push104=, .L.str.4
+ i32.const $5=, 208
+ i32.add $5=, $18, $5
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop104, $5
+ block
+ i32.load $push30=, should_optimize($1)
+ i32.const $push158=, 0
+ i32.eq $push159=, $pop30, $pop158
+ br_if 0, $pop159 # 0: down to label13
# BB#13: # %if.end43
- i32.store $discard=, should_optimize($0), $0
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 4
- i32.sub $61=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $61=, 0($7), $61
- i32.store $discard=, 0($61), $1
- i32.const $push84=, .L.str.4
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop84
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 4
- i32.add $61=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $61=, 0($9), $61
- block
- i32.const $push22=, 5
- i32.ne $push23=, $0, $pop22
- br_if 0, $pop23 # 0: down to label14
+ i32.store $discard=, should_optimize($1), $1
+ i32.store $discard=, 192($18):p2align=4, $0
+ i32.const $push106=, .L.str.4
+ i32.const $6=, 192
+ i32.add $6=, $18, $6
+ block
+ i32.call $push31=, __printf_chk@FUNCTION, $1, $pop106, $6
+ i32.const $push32=, 5
+ i32.ne $push33=, $pop31, $pop32
+ br_if 0, $pop33 # 0: down to label14
# BB#14: # %if.end47
block
- i32.const $push85=, 0
- i32.load $push24=, should_optimize($pop85)
- i32.const $push138=, 0
- i32.eq $push139=, $pop24, $pop138
- br_if 0, $pop139 # 0: down to label15
+ i32.const $push107=, 0
+ i32.load $push34=, should_optimize($pop107)
+ i32.const $push160=, 0
+ i32.eq $push161=, $pop34, $pop160
+ br_if 0, $pop161 # 0: down to label15
# BB#15: # %if.end50
- i32.const $push88=, 0
- i32.const $push25=, 1
- i32.store $discard=, should_optimize($pop88), $pop25
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 4
- i32.sub $61=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $61=, 0($11), $61
- i32.const $push26=, .L.str.1
- i32.store $0=, 0($61), $pop26
- i32.const $push87=, .L.str.4
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop87
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 4
- i32.add $61=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $61=, 0($13), $61
- block
- i32.const $push86=, 0
- i32.load $push27=, should_optimize($pop86)
- i32.const $push140=, 0
- i32.eq $push141=, $pop27, $pop140
- br_if 0, $pop141 # 0: down to label16
+ i32.const $push110=, 0
+ i32.const $push35=, 1
+ i32.store $discard=, should_optimize($pop110), $pop35
+ i32.const $push36=, .L.str.1
+ i32.store $1=, 176($18):p2align=4, $pop36
+ i32.const $push109=, .L.str.4
+ i32.const $7=, 176
+ i32.add $7=, $18, $7
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop109, $7
+ block
+ i32.const $push108=, 0
+ i32.load $push37=, should_optimize($pop108)
+ i32.const $push162=, 0
+ i32.eq $push163=, $pop37, $pop162
+ br_if 0, $pop163 # 0: down to label16
# BB#16: # %if.end54
- i32.const $push28=, 0
- i32.const $push90=, 0
- i32.store $1=, should_optimize($pop28), $pop90
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 4
- i32.sub $61=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $61=, 0($15), $61
- i32.store $discard=, 0($61), $0
- i32.const $push89=, .L.str.4
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop89
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 4
- i32.add $61=, $16, $17
- i32.const $17=, __stack_pointer
- i32.store $61=, 0($17), $61
- block
- i32.const $push29=, 6
- i32.ne $push30=, $0, $pop29
- br_if 0, $pop30 # 0: down to label17
+ i32.const $push38=, 0
+ i32.const $push112=, 0
+ i32.store $0=, should_optimize($pop38), $pop112
+ i32.store $discard=, 160($18):p2align=4, $1
+ i32.const $push111=, .L.str.4
+ i32.const $8=, 160
+ i32.add $8=, $18, $8
+ block
+ i32.call $push39=, __printf_chk@FUNCTION, $1, $pop111, $8
+ i32.const $push40=, 6
+ i32.ne $push41=, $pop39, $pop40
+ br_if 0, $pop41 # 0: down to label17
# BB#17: # %if.end58
block
- i32.load $push31=, should_optimize($1)
- i32.const $push142=, 0
- i32.eq $push143=, $pop31, $pop142
- br_if 0, $pop143 # 0: down to label18
+ i32.load $push42=, should_optimize($0)
+ i32.const $push164=, 0
+ i32.eq $push165=, $pop42, $pop164
+ br_if 0, $pop165 # 0: down to label18
# BB#18: # %if.end61
- i32.const $push93=, 0
- i32.const $push32=, 1
- i32.store $0=, should_optimize($pop93), $pop32
- i32.const $18=, __stack_pointer
- i32.load $18=, 0($18)
- i32.const $19=, 4
- i32.sub $61=, $18, $19
- i32.const $19=, __stack_pointer
- i32.store $61=, 0($19), $61
- i32.const $push33=, .L.str.2
- i32.store $1=, 0($61), $pop33
- i32.const $push92=, .L.str.4
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop92
- i32.const $20=, __stack_pointer
- i32.load $20=, 0($20)
- i32.const $21=, 4
- i32.add $61=, $20, $21
- i32.const $21=, __stack_pointer
- i32.store $61=, 0($21), $61
- block
- i32.const $push91=, 0
- i32.load $push34=, should_optimize($pop91)
- i32.const $push144=, 0
- i32.eq $push145=, $pop34, $pop144
- br_if 0, $pop145 # 0: down to label19
+ i32.const $push115=, 0
+ i32.const $push43=, 1
+ i32.store $1=, should_optimize($pop115), $pop43
+ i32.const $push44=, .L.str.2
+ i32.store $0=, 144($18):p2align=4, $pop44
+ i32.const $push114=, .L.str.4
+ i32.const $9=, 144
+ i32.add $9=, $18, $9
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop114, $9
+ block
+ i32.const $push113=, 0
+ i32.load $push45=, should_optimize($pop113)
+ i32.const $push166=, 0
+ i32.eq $push167=, $pop45, $pop166
+ br_if 0, $pop167 # 0: down to label19
# BB#19: # %if.end65
- i32.const $push96=, 0
- i32.const $push95=, 0
- i32.store $discard=, should_optimize($pop96), $pop95
- i32.const $22=, __stack_pointer
- i32.load $22=, 0($22)
- i32.const $23=, 4
- i32.sub $61=, $22, $23
- i32.const $23=, __stack_pointer
- i32.store $61=, 0($23), $61
- i32.store $discard=, 0($61), $1
- i32.const $push94=, .L.str.4
- i32.call $1=, __printf_chk@FUNCTION, $0, $pop94
- i32.const $24=, __stack_pointer
- i32.load $24=, 0($24)
- i32.const $25=, 4
- i32.add $61=, $24, $25
- i32.const $25=, __stack_pointer
- i32.store $61=, 0($25), $61
- block
- i32.ne $push35=, $1, $0
- br_if 0, $pop35 # 0: down to label20
+ i32.const $push118=, 0
+ i32.const $push117=, 0
+ i32.store $discard=, should_optimize($pop118), $pop117
+ i32.store $discard=, 128($18):p2align=4, $0
+ i32.const $push116=, .L.str.4
+ i32.const $10=, 128
+ i32.add $10=, $18, $10
+ block
+ i32.call $push46=, __printf_chk@FUNCTION, $1, $pop116, $10
+ i32.ne $push47=, $pop46, $1
+ br_if 0, $pop47 # 0: down to label20
# BB#20: # %if.end69
block
- i32.const $push97=, 0
- i32.load $push36=, should_optimize($pop97)
- i32.const $push146=, 0
- i32.eq $push147=, $pop36, $pop146
- br_if 0, $pop147 # 0: down to label21
+ i32.const $push119=, 0
+ i32.load $push48=, should_optimize($pop119)
+ i32.const $push168=, 0
+ i32.eq $push169=, $pop48, $pop168
+ br_if 0, $pop169 # 0: down to label21
# BB#21: # %if.end72
- i32.const $push100=, 0
- i32.const $push37=, 1
- i32.store $discard=, should_optimize($pop100), $pop37
- i32.const $26=, __stack_pointer
- i32.load $26=, 0($26)
- i32.const $27=, 4
- i32.sub $61=, $26, $27
- i32.const $27=, __stack_pointer
- i32.store $61=, 0($27), $61
- i32.const $push38=, .L.str.3
- i32.store $0=, 0($61), $pop38
- i32.const $push99=, .L.str.4
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop99
- i32.const $28=, __stack_pointer
- i32.load $28=, 0($28)
- i32.const $29=, 4
- i32.add $61=, $28, $29
- i32.const $29=, __stack_pointer
- i32.store $61=, 0($29), $61
+ i32.const $push122=, 0
+ i32.const $push49=, 1
+ i32.store $discard=, should_optimize($pop122), $pop49
+ i32.const $push50=, .L.str.3
+ i32.store $1=, 112($18):p2align=4, $pop50
+ i32.const $push121=, .L.str.4
+ i32.const $11=, 112
+ i32.add $11=, $18, $11
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop121, $11
block
- i32.const $push98=, 0
- i32.load $push39=, should_optimize($pop98)
- i32.const $push148=, 0
- i32.eq $push149=, $pop39, $pop148
- br_if 0, $pop149 # 0: down to label22
+ i32.const $push120=, 0
+ i32.load $push51=, should_optimize($pop120)
+ i32.const $push170=, 0
+ i32.eq $push171=, $pop51, $pop170
+ br_if 0, $pop171 # 0: down to label22
# BB#22: # %if.end76
- i32.const $push40=, 0
- i32.const $push102=, 0
- i32.store $1=, should_optimize($pop40), $pop102
- i32.const $30=, __stack_pointer
- i32.load $30=, 0($30)
- i32.const $31=, 4
- i32.sub $61=, $30, $31
- i32.const $31=, __stack_pointer
- i32.store $61=, 0($31), $61
- i32.store $discard=, 0($61), $0
- i32.const $push101=, .L.str.4
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop101
- i32.const $32=, __stack_pointer
- i32.load $32=, 0($32)
- i32.const $33=, 4
- i32.add $61=, $32, $33
- i32.const $33=, __stack_pointer
- i32.store $61=, 0($33), $61
- block
- br_if 0, $0 # 0: down to label23
+ i32.const $push52=, 0
+ i32.const $push124=, 0
+ i32.store $0=, should_optimize($pop52), $pop124
+ i32.store $discard=, 96($18):p2align=4, $1
+ i32.const $push123=, .L.str.4
+ i32.const $12=, 96
+ i32.add $12=, $18, $12
+ block
+ i32.call $push53=, __printf_chk@FUNCTION, $1, $pop123, $12
+ br_if 0, $pop53 # 0: down to label23
# BB#23: # %if.end80
block
- i32.load $push41=, should_optimize($1)
- i32.const $push150=, 0
- i32.eq $push151=, $pop41, $pop150
- br_if 0, $pop151 # 0: down to label24
+ i32.load $push54=, should_optimize($0)
+ i32.const $push172=, 0
+ i32.eq $push173=, $pop54, $pop172
+ br_if 0, $pop173 # 0: down to label24
# BB#24: # %if.end83
- i32.const $push105=, 0
- i32.const $push42=, 1
- i32.store $0=, should_optimize($pop105), $pop42
- i32.const $34=, __stack_pointer
- i32.load $34=, 0($34)
- i32.const $35=, 4
- i32.sub $61=, $34, $35
- i32.const $35=, __stack_pointer
- i32.store $61=, 0($35), $61
- i32.const $push43=, 120
- i32.store $1=, 0($61), $pop43
- i32.const $push104=, .L.str.5
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop104
- i32.const $36=, __stack_pointer
- i32.load $36=, 0($36)
- i32.const $37=, 4
- i32.add $61=, $36, $37
- i32.const $37=, __stack_pointer
- i32.store $61=, 0($37), $61
- block
- i32.const $push103=, 0
- i32.load $push44=, should_optimize($pop103)
- i32.const $push152=, 0
- i32.eq $push153=, $pop44, $pop152
- br_if 0, $pop153 # 0: down to label25
+ i32.const $push127=, 0
+ i32.const $push55=, 1
+ i32.store $1=, should_optimize($pop127), $pop55
+ i32.const $push56=, 120
+ i32.store $0=, 80($18):p2align=4, $pop56
+ i32.const $push126=, .L.str.5
+ i32.const $13=, 80
+ i32.add $13=, $18, $13
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop126, $13
+ block
+ i32.const $push125=, 0
+ i32.load $push57=, should_optimize($pop125)
+ i32.const $push174=, 0
+ i32.eq $push175=, $pop57, $pop174
+ br_if 0, $pop175 # 0: down to label25
# BB#25: # %if.end87
- i32.const $push108=, 0
- i32.const $push107=, 0
- i32.store $discard=, should_optimize($pop108), $pop107
- i32.const $38=, __stack_pointer
- i32.load $38=, 0($38)
- i32.const $39=, 4
- i32.sub $61=, $38, $39
- i32.const $39=, __stack_pointer
- i32.store $61=, 0($39), $61
- i32.store $discard=, 0($61), $1
- i32.const $push106=, .L.str.5
- i32.call $1=, __printf_chk@FUNCTION, $0, $pop106
- i32.const $40=, __stack_pointer
- i32.load $40=, 0($40)
- i32.const $41=, 4
- i32.add $61=, $40, $41
- i32.const $41=, __stack_pointer
- i32.store $61=, 0($41), $61
- block
- i32.ne $push45=, $1, $0
- br_if 0, $pop45 # 0: down to label26
+ i32.const $push130=, 0
+ i32.const $push129=, 0
+ i32.store $discard=, should_optimize($pop130), $pop129
+ i32.store $discard=, 64($18):p2align=4, $0
+ i32.const $push128=, .L.str.5
+ i32.const $14=, 64
+ i32.add $14=, $18, $14
+ block
+ i32.call $push58=, __printf_chk@FUNCTION, $1, $pop128, $14
+ i32.ne $push59=, $pop58, $1
+ br_if 0, $pop59 # 0: down to label26
# BB#26: # %if.end91
block
- i32.const $push109=, 0
- i32.load $push46=, should_optimize($pop109)
- i32.const $push154=, 0
- i32.eq $push155=, $pop46, $pop154
- br_if 0, $pop155 # 0: down to label27
+ i32.const $push131=, 0
+ i32.load $push60=, should_optimize($pop131)
+ i32.const $push176=, 0
+ i32.eq $push177=, $pop60, $pop176
+ br_if 0, $pop177 # 0: down to label27
# BB#27: # %if.end94
- i32.const $push112=, 0
- i32.const $push47=, 1
- i32.store $discard=, should_optimize($pop112), $pop47
- i32.const $42=, __stack_pointer
- i32.load $42=, 0($42)
- i32.const $43=, 4
- i32.sub $61=, $42, $43
- i32.const $43=, __stack_pointer
- i32.store $61=, 0($43), $61
- i32.const $push48=, .L.str.1
- i32.store $0=, 0($61), $pop48
- i32.const $push111=, .L.str.6
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop111
- i32.const $44=, __stack_pointer
- i32.load $44=, 0($44)
- i32.const $45=, 4
- i32.add $61=, $44, $45
- i32.const $45=, __stack_pointer
- i32.store $61=, 0($45), $61
+ i32.const $push134=, 0
+ i32.const $push61=, 1
+ i32.store $discard=, should_optimize($pop134), $pop61
+ i32.const $push62=, .L.str.1
+ i32.store $1=, 48($18):p2align=4, $pop62
+ i32.const $push133=, .L.str.6
+ i32.const $15=, 48
+ i32.add $15=, $18, $15
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop133, $15
block
- i32.const $push110=, 0
- i32.load $push49=, should_optimize($pop110)
- i32.const $push156=, 0
- i32.eq $push157=, $pop49, $pop156
- br_if 0, $pop157 # 0: down to label28
+ i32.const $push132=, 0
+ i32.load $push63=, should_optimize($pop132)
+ i32.const $push178=, 0
+ i32.eq $push179=, $pop63, $pop178
+ br_if 0, $pop179 # 0: down to label28
# BB#28: # %if.end98
- i32.const $push50=, 0
- i32.const $push114=, 0
- i32.store $1=, should_optimize($pop50), $pop114
- i32.const $46=, __stack_pointer
- i32.load $46=, 0($46)
- i32.const $47=, 4
- i32.sub $61=, $46, $47
- i32.const $47=, __stack_pointer
- i32.store $61=, 0($47), $61
- i32.store $discard=, 0($61), $0
- i32.const $push113=, .L.str.6
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop113
- i32.const $48=, __stack_pointer
- i32.load $48=, 0($48)
- i32.const $49=, 4
- i32.add $61=, $48, $49
- i32.const $49=, __stack_pointer
- i32.store $61=, 0($49), $61
- block
- i32.const $push51=, 7
- i32.ne $push52=, $0, $pop51
- br_if 0, $pop52 # 0: down to label29
+ i32.const $push64=, 0
+ i32.const $push136=, 0
+ i32.store $0=, should_optimize($pop64), $pop136
+ i32.store $discard=, 32($18):p2align=4, $1
+ i32.const $push135=, .L.str.6
+ i32.const $16=, 32
+ i32.add $16=, $18, $16
+ block
+ i32.call $push65=, __printf_chk@FUNCTION, $1, $pop135, $16
+ i32.const $push66=, 7
+ i32.ne $push67=, $pop65, $pop66
+ br_if 0, $pop67 # 0: down to label29
# BB#29: # %if.end102
block
- i32.load $push53=, should_optimize($1)
- i32.const $push158=, 0
- i32.eq $push159=, $pop53, $pop158
- br_if 0, $pop159 # 0: down to label30
+ i32.load $push68=, should_optimize($0)
+ i32.const $push180=, 0
+ i32.eq $push181=, $pop68, $pop180
+ br_if 0, $pop181 # 0: down to label30
# BB#30: # %if.end105
- i32.const $50=, __stack_pointer
- i32.load $50=, 0($50)
- i32.const $51=, 4
- i32.sub $61=, $50, $51
- i32.const $51=, __stack_pointer
- i32.store $61=, 0($51), $61
- i32.const $push54=, 0
- i32.const $push116=, 0
- i32.store $push55=, should_optimize($pop54), $pop116
- i32.store $0=, 0($61), $pop55
- i32.const $push115=, .L.str.7
- i32.call $discard=, __printf_chk@FUNCTION, $0, $pop115
- i32.const $52=, __stack_pointer
- i32.load $52=, 0($52)
- i32.const $53=, 4
- i32.add $61=, $52, $53
- i32.const $53=, __stack_pointer
- i32.store $61=, 0($53), $61
- block
- i32.load $push56=, should_optimize($0)
- i32.const $push160=, 0
- i32.eq $push161=, $pop56, $pop160
- br_if 0, $pop161 # 0: down to label31
+ i32.const $push69=, 0
+ i32.const $push138=, 0
+ i32.store $push70=, should_optimize($pop69), $pop138
+ i32.store $1=, 16($18):p2align=4, $pop70
+ i32.const $push137=, .L.str.7
+ i32.const $17=, 16
+ i32.add $17=, $18, $17
+ i32.call $discard=, __printf_chk@FUNCTION, $1, $pop137, $17
+ block
+ i32.load $push71=, should_optimize($1)
+ i32.const $push182=, 0
+ i32.eq $push183=, $pop71, $pop182
+ br_if 0, $pop183 # 0: down to label31
# BB#31: # %if.end109
- i32.const $54=, __stack_pointer
- i32.load $54=, 0($54)
- i32.const $55=, 4
- i32.sub $61=, $54, $55
- i32.const $55=, __stack_pointer
- i32.store $61=, 0($55), $61
- i32.store $push57=, should_optimize($0), $0
- i32.store $discard=, 0($61), $pop57
- i32.const $push117=, .L.str.7
- i32.call $0=, __printf_chk@FUNCTION, $0, $pop117
- i32.const $56=, __stack_pointer
- i32.load $56=, 0($56)
- i32.const $57=, 4
- i32.add $61=, $56, $57
- i32.const $57=, __stack_pointer
- i32.store $61=, 0($57), $61
- block
- i32.const $push58=, 2
- i32.ne $push59=, $0, $pop58
- br_if 0, $pop59 # 0: down to label32
+ i32.store $push72=, should_optimize($1), $1
+ i32.store $discard=, 0($18):p2align=4, $pop72
+ block
+ i32.const $push139=, .L.str.7
+ i32.call $push73=, __printf_chk@FUNCTION, $1, $pop139, $18
+ i32.const $push74=, 2
+ i32.ne $push75=, $pop73, $pop74
+ br_if 0, $pop75 # 0: down to label32
# BB#32: # %if.end113
block
- i32.const $push118=, 0
- i32.load $push60=, should_optimize($pop118)
- i32.const $push162=, 0
- i32.eq $push163=, $pop60, $pop162
- br_if 0, $pop163 # 0: down to label33
+ i32.const $push140=, 0
+ i32.load $push76=, should_optimize($pop140)
+ i32.const $push184=, 0
+ i32.eq $push185=, $pop76, $pop184
+ br_if 0, $pop185 # 0: down to label33
# BB#33: # %if.end116
- i32.const $push119=, 0
- i32.const $60=, 16
- i32.add $61=, $61, $60
- i32.const $60=, __stack_pointer
- i32.store $61=, 0($60), $61
- return $pop119
+ i32.const $push141=, 0
+ i32.const $4=, 224
+ i32.add $18=, $18, $4
+ i32.const $4=, __stack_pointer
+ i32.store $18=, 0($4), $18
+ return $pop141
.LBB1_34: # %if.then115
end_block # label33:
call abort@FUNCTION
diff --git a/test/torture-s/stdarg-1.c.s b/test/torture-s/stdarg-1.c.s
index 7e4e3db22..bf49cf6d9 100644
--- a/test/torture-s/stdarg-1.c.s
+++ b/test/torture-s/stdarg-1.c.s
@@ -174,7 +174,7 @@ bar: # @bar
.globl f0
.type f0,@function
f0: # @f0
- .param i32
+ .param i32, i32
# BB#0: # %entry
return
.endfunc
@@ -186,21 +186,20 @@ f0: # @f0
.globl f1
.type f1,@function
f1: # @f1
- .param i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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
- copy_local $5=, $4
i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $discard=, 12($4), $5
+ i32.load $2=, 0($2)
i32.const $3=, 16
- i32.add $4=, $5, $3
+ i32.sub $5=, $2, $3
i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.store $5=, 0($3), $5
+ i32.store $discard=, 12($5), $1
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return
.endfunc
.Lfunc_end3:
@@ -211,30 +210,29 @@ f1: # @f1
.globl f2
.type f2,@function
f2: # @f2
- .param i32
- .local f64, i64, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local f64, i64, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $6=, __stack_pointer
i32.load $6=, 0($6)
i32.const $7=, 16
i32.sub $9=, $6, $7
- copy_local $10=, $9
i32.const $7=, __stack_pointer
i32.store $9=, 0($7), $9
i32.const $push123=, 0
- f64.load $1=, d($pop123)
- i32.store $discard=, 12($9), $10
+ f64.load $2=, d($pop123)
+ i32.store $discard=, 12($9), $1
block
block
block
- i32.trunc_s/f64 $push0=, $1
- tee_local $push122=, $4=, $pop0
+ i32.trunc_s/f64 $push0=, $2
+ tee_local $push122=, $1=, $pop0
i32.const $push2=, 16392
i32.eq $push3=, $pop122, $pop2
br_if 0, $pop3 # 0: down to label7
# BB#1: # %entry
i32.const $push4=, 16390
- i32.ne $push5=, $4, $pop4
+ i32.ne $push5=, $1, $pop4
br_if 1, $pop5 # 1: down to label6
# BB#2: # %if.then.i
i32.const $push126=, 0
@@ -244,12 +242,12 @@ f2: # @f2
i32.add $push40=, $pop38, $pop39
i32.const $push41=, -8
i32.and $push42=, $pop40, $pop41
- tee_local $push124=, $3=, $pop42
+ tee_local $push124=, $4=, $pop42
i32.const $push43=, 8
i32.add $push44=, $pop124, $pop43
i32.store $discard=, gap($pop126), $pop44
block
- f64.load $push45=, 0($3)
+ f64.load $push45=, 0($4)
f64.const $push46=, 0x1.1p4
f64.ne $push47=, $pop45, $pop46
br_if 0, $pop47 # 0: down to label8
@@ -261,11 +259,11 @@ f2: # @f2
i32.add $push50=, $pop48, $pop49
i32.const $push51=, -4
i32.and $push52=, $pop50, $pop51
- tee_local $push127=, $3=, $pop52
+ tee_local $push127=, $4=, $pop52
i32.const $push53=, 4
i32.add $push54=, $pop127, $pop53
i32.store $discard=, gap($pop129), $pop54
- i32.load $push55=, 0($3)
+ i32.load $push55=, 0($4)
i32.const $push56=, 129
i32.eq $push57=, $pop55, $pop56
br_if 2, $pop57 # 2: down to label6
@@ -276,8 +274,8 @@ f2: # @f2
.LBB4_5: # %if.then5.i
end_block # label7:
i32.const $push132=, 0
- i32.load $3=, pap($pop132)
- i32.load $push6=, 0($3)
+ i32.load $4=, pap($pop132)
+ i32.load $push6=, 0($4)
i32.const $push7=, 7
i32.add $push8=, $pop6, $pop7
i32.const $push9=, -8
@@ -285,7 +283,7 @@ f2: # @f2
tee_local $push131=, $5=, $pop10
i32.const $push130=, 8
i32.add $push11=, $pop131, $pop130
- i32.store $discard=, 0($3), $pop11
+ i32.store $discard=, 0($4), $pop11
i64.load $push12=, 0($5)
i64.const $push13=, 14
i64.ne $push14=, $pop12, $pop13
@@ -293,30 +291,30 @@ f2: # @f2
# BB#6: # %lor.lhs.false7.i
i32.const $push138=, 0
i32.load $push15=, pap($pop138)
- tee_local $push137=, $3=, $pop15
+ tee_local $push137=, $4=, $pop15
i32.load $push16=, 0($pop137)
i32.const $push17=, 15
i32.add $push18=, $pop16, $pop17
i32.const $push19=, -16
i32.and $push20=, $pop18, $pop19
tee_local $push136=, $5=, $pop20
- i64.load $2=, 0($pop136)
+ i64.load $3=, 0($pop136)
i32.const $push135=, 8
i32.or $push21=, $5, $pop135
- i32.store $push22=, 0($3), $pop21
+ i32.store $push22=, 0($4), $pop21
tee_local $push134=, $5=, $pop22
i32.const $push133=, 8
i32.add $push23=, $pop134, $pop133
- i32.store $discard=, 0($3), $pop23
+ i32.store $discard=, 0($4), $pop23
i64.load $push24=, 0($5)
i64.const $push26=, 0
i64.const $push25=, 4613381465357418496
- i32.call $push27=, __netf2@FUNCTION, $2, $pop24, $pop26, $pop25
+ i32.call $push27=, __netf2@FUNCTION, $3, $pop24, $pop26, $pop25
br_if 1, $pop27 # 1: down to label5
# BB#7: # %lor.lhs.false9.i
i32.const $push140=, 0
- i32.load $3=, pap($pop140)
- i32.load $push28=, 0($3)
+ i32.load $4=, pap($pop140)
+ i32.load $push28=, 0($4)
i32.const $push29=, 3
i32.add $push30=, $pop28, $pop29
i32.const $push31=, -4
@@ -324,21 +322,21 @@ f2: # @f2
tee_local $push139=, $5=, $pop32
i32.const $push33=, 4
i32.add $push34=, $pop139, $pop33
- i32.store $discard=, 0($3), $pop34
+ i32.store $discard=, 0($4), $pop34
i32.load $push35=, 0($5)
i32.const $push36=, 17
i32.ne $push37=, $pop35, $pop36
br_if 1, $pop37 # 1: down to label5
.LBB4_8: # %bar.exit
end_block # label6:
- i32.load $3=, 12($9)
+ i32.load $4=, 12($9)
i32.const $push144=, 0
- i32.store $discard=, bar_arg($pop144), $4
+ i32.store $discard=, bar_arg($pop144), $1
i32.const $push58=, 3
- i32.add $push59=, $3, $pop58
+ i32.add $push59=, $4, $pop58
i32.const $push60=, -4
i32.and $push61=, $pop59, $pop60
- tee_local $push143=, $4=, $pop61
+ tee_local $push143=, $1=, $pop61
i32.const $push62=, 4
i32.add $push63=, $pop143, $pop62
i32.store $discard=, 12($9), $pop63
@@ -346,15 +344,15 @@ f2: # @f2
block
block
i32.const $push142=, 0
- i32.load $push1=, 0($4)
+ i32.load $push1=, 0($1)
i32.store $push64=, x($pop142), $pop1
- tee_local $push141=, $4=, $pop64
+ tee_local $push141=, $1=, $pop64
i32.const $push65=, 16392
i32.eq $push66=, $pop141, $pop65
br_if 0, $pop66 # 0: down to label11
# BB#9: # %bar.exit
i32.const $push67=, 16390
- i32.ne $push68=, $4, $pop67
+ i32.ne $push68=, $1, $pop67
br_if 1, $pop68 # 1: down to label10
# BB#10: # %if.then.i4
i32.const $push147=, 0
@@ -364,12 +362,12 @@ f2: # @f2
i32.add $push103=, $pop101, $pop102
i32.const $push104=, -8
i32.and $push105=, $pop103, $pop104
- tee_local $push145=, $3=, $pop105
+ tee_local $push145=, $4=, $pop105
i32.const $push106=, 8
i32.add $push107=, $pop145, $pop106
i32.store $discard=, gap($pop147), $pop107
block
- f64.load $push108=, 0($3)
+ f64.load $push108=, 0($4)
f64.const $push109=, 0x1.1p4
f64.ne $push110=, $pop108, $pop109
br_if 0, $pop110 # 0: down to label12
@@ -381,11 +379,11 @@ f2: # @f2
i32.add $push113=, $pop111, $pop112
i32.const $push114=, -4
i32.and $push115=, $pop113, $pop114
- tee_local $push148=, $3=, $pop115
+ tee_local $push148=, $4=, $pop115
i32.const $push116=, 4
i32.add $push117=, $pop148, $pop116
i32.store $discard=, gap($pop150), $pop117
- i32.load $push118=, 0($3)
+ i32.load $push118=, 0($4)
i32.const $push119=, 129
i32.eq $push120=, $pop118, $pop119
br_if 2, $pop120 # 2: down to label10
@@ -396,8 +394,8 @@ f2: # @f2
.LBB4_13: # %if.then5.i9
end_block # label11:
i32.const $push153=, 0
- i32.load $3=, pap($pop153)
- i32.load $push69=, 0($3)
+ i32.load $4=, pap($pop153)
+ i32.load $push69=, 0($4)
i32.const $push70=, 7
i32.add $push71=, $pop69, $pop70
i32.const $push72=, -8
@@ -405,7 +403,7 @@ f2: # @f2
tee_local $push152=, $5=, $pop73
i32.const $push151=, 8
i32.add $push74=, $pop152, $pop151
- i32.store $discard=, 0($3), $pop74
+ i32.store $discard=, 0($4), $pop74
i64.load $push75=, 0($5)
i64.const $push76=, 14
i64.ne $push77=, $pop75, $pop76
@@ -413,30 +411,30 @@ f2: # @f2
# BB#14: # %lor.lhs.false7.i11
i32.const $push159=, 0
i32.load $push78=, pap($pop159)
- tee_local $push158=, $3=, $pop78
+ tee_local $push158=, $4=, $pop78
i32.load $push79=, 0($pop158)
i32.const $push80=, 15
i32.add $push81=, $pop79, $pop80
i32.const $push82=, -16
i32.and $push83=, $pop81, $pop82
tee_local $push157=, $5=, $pop83
- i64.load $2=, 0($pop157)
+ i64.load $3=, 0($pop157)
i32.const $push156=, 8
i32.or $push84=, $5, $pop156
- i32.store $push85=, 0($3), $pop84
+ i32.store $push85=, 0($4), $pop84
tee_local $push155=, $5=, $pop85
i32.const $push154=, 8
i32.add $push86=, $pop155, $pop154
- i32.store $discard=, 0($3), $pop86
+ i32.store $discard=, 0($4), $pop86
i64.load $push87=, 0($5)
i64.const $push89=, 0
i64.const $push88=, 4613381465357418496
- i32.call $push90=, __netf2@FUNCTION, $2, $pop87, $pop89, $pop88
+ i32.call $push90=, __netf2@FUNCTION, $3, $pop87, $pop89, $pop88
br_if 1, $pop90 # 1: down to label9
# BB#15: # %lor.lhs.false9.i13
i32.const $push161=, 0
- i32.load $3=, pap($pop161)
- i32.load $push91=, 0($3)
+ i32.load $4=, pap($pop161)
+ i32.load $push91=, 0($4)
i32.const $push92=, 3
i32.add $push93=, $pop91, $pop92
i32.const $push94=, -4
@@ -444,7 +442,7 @@ f2: # @f2
tee_local $push160=, $5=, $pop95
i32.const $push96=, 4
i32.add $push97=, $pop160, $pop96
- i32.store $discard=, 0($3), $pop97
+ i32.store $discard=, 0($4), $pop97
i32.load $push98=, 0($5)
i32.const $push99=, 17
i32.ne $push100=, $pop98, $pop99
@@ -452,9 +450,9 @@ f2: # @f2
.LBB4_16: # %bar.exit15
end_block # label10:
i32.const $push121=, 0
- i32.store $discard=, bar_arg($pop121), $4
+ i32.store $discard=, bar_arg($pop121), $1
i32.const $8=, 16
- i32.add $9=, $10, $8
+ i32.add $9=, $9, $8
i32.const $8=, __stack_pointer
i32.store $9=, 0($8), $9
return
@@ -475,17 +473,16 @@ f2: # @f2
.globl f3
.type f3,@function
f3: # @f3
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push1=, 7
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -8
@@ -498,7 +495,7 @@ f3: # @f3
f64.load $push7=, 0($1)
f64.store $discard=, d($pop8), $pop7
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -511,30 +508,29 @@ f3: # @f3
.globl f4
.type f4,@function
f4: # @f4
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $push0=, 8($6), $7
+ i32.store $push0=, 8($6), $1
i32.const $push1=, 7
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -8
i32.and $push4=, $pop2, $pop3
- tee_local $push20=, $2=, $pop4
+ tee_local $push20=, $1=, $pop4
i32.const $push5=, 8
i32.add $push6=, $pop20, $pop5
- i32.store $1=, 8($6), $pop6
+ i32.store $2=, 8($6), $pop6
i32.const $push19=, 0
- f64.load $push7=, 0($2)
+ f64.load $push7=, 0($1)
i32.trunc_s/f64 $push8=, $pop7
i32.store $discard=, x($pop19), $pop8
- i32.store $discard=, 12($6), $1
+ i32.store $discard=, 12($6), $2
block
i32.const $push9=, 5
i32.ne $push10=, $0, $pop9
@@ -545,15 +541,15 @@ f4: # @f4
i32.add $push13=, $pop11, $pop12
i32.const $push14=, -4
i32.and $push15=, $pop13, $pop14
- tee_local $push22=, $0=, $pop15
+ tee_local $push22=, $1=, $pop15
i32.const $push16=, 4
i32.add $push17=, $pop22, $pop16
i32.store $discard=, 12($6), $pop17
i32.const $push21=, 0
- i32.load $push18=, 0($0)
+ i32.load $push18=, 0($1)
i32.store $discard=, foo_arg($pop21), $pop18
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -570,18 +566,17 @@ f4: # @f4
.globl f5
.type f5,@function
f5: # @f5
- .param i32
- .local i32, i64, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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 $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
i32.const $push58=, 0
- i32.store $push0=, 12($7), $8
+ i32.store $push0=, 12($7), $1
i32.store $discard=, gap($pop58), $pop0
block
block
@@ -691,7 +686,7 @@ f5: # @f5
i32.const $push57=, 0
i32.store $discard=, bar_arg($pop57), $0
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
return
@@ -708,30 +703,29 @@ f5: # @f5
.globl f6
.type f6,@function
f6: # @f6
- .param i32
- .local f64, i64, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local f64, i64, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $6=, __stack_pointer
i32.load $6=, 0($6)
i32.const $7=, 16
i32.sub $9=, $6, $7
- copy_local $10=, $9
i32.const $7=, __stack_pointer
i32.store $9=, 0($7), $9
i32.const $push128=, 0
- f64.load $1=, d($pop128)
- i32.store $discard=, 12($9), $10
+ f64.load $2=, d($pop128)
+ i32.store $discard=, 12($9), $1
block
block
block
- i32.trunc_s/f64 $push0=, $1
- tee_local $push127=, $4=, $pop0
+ i32.trunc_s/f64 $push0=, $2
+ tee_local $push127=, $1=, $pop0
i32.const $push2=, 16392
i32.eq $push3=, $pop127, $pop2
br_if 0, $pop3 # 0: down to label20
# BB#1: # %entry
i32.const $push4=, 16390
- i32.ne $push5=, $4, $pop4
+ i32.ne $push5=, $1, $pop4
br_if 1, $pop5 # 1: down to label19
# BB#2: # %if.then.i
i32.const $push131=, 0
@@ -741,12 +735,12 @@ f6: # @f6
i32.add $push40=, $pop38, $pop39
i32.const $push41=, -8
i32.and $push42=, $pop40, $pop41
- tee_local $push129=, $3=, $pop42
+ tee_local $push129=, $4=, $pop42
i32.const $push43=, 8
i32.add $push44=, $pop129, $pop43
i32.store $discard=, gap($pop131), $pop44
block
- f64.load $push45=, 0($3)
+ f64.load $push45=, 0($4)
f64.const $push46=, 0x1.1p4
f64.ne $push47=, $pop45, $pop46
br_if 0, $pop47 # 0: down to label21
@@ -758,11 +752,11 @@ f6: # @f6
i32.add $push50=, $pop48, $pop49
i32.const $push51=, -4
i32.and $push52=, $pop50, $pop51
- tee_local $push132=, $3=, $pop52
+ tee_local $push132=, $4=, $pop52
i32.const $push53=, 4
i32.add $push54=, $pop132, $pop53
i32.store $discard=, gap($pop134), $pop54
- i32.load $push55=, 0($3)
+ i32.load $push55=, 0($4)
i32.const $push56=, 129
i32.eq $push57=, $pop55, $pop56
br_if 2, $pop57 # 2: down to label19
@@ -773,8 +767,8 @@ f6: # @f6
.LBB8_5: # %if.then5.i
end_block # label20:
i32.const $push137=, 0
- i32.load $3=, pap($pop137)
- i32.load $push6=, 0($3)
+ i32.load $4=, pap($pop137)
+ i32.load $push6=, 0($4)
i32.const $push7=, 7
i32.add $push8=, $pop6, $pop7
i32.const $push9=, -8
@@ -782,7 +776,7 @@ f6: # @f6
tee_local $push136=, $5=, $pop10
i32.const $push135=, 8
i32.add $push11=, $pop136, $pop135
- i32.store $discard=, 0($3), $pop11
+ i32.store $discard=, 0($4), $pop11
i64.load $push12=, 0($5)
i64.const $push13=, 14
i64.ne $push14=, $pop12, $pop13
@@ -790,30 +784,30 @@ f6: # @f6
# BB#6: # %lor.lhs.false7.i
i32.const $push143=, 0
i32.load $push15=, pap($pop143)
- tee_local $push142=, $3=, $pop15
+ tee_local $push142=, $4=, $pop15
i32.load $push16=, 0($pop142)
i32.const $push17=, 15
i32.add $push18=, $pop16, $pop17
i32.const $push19=, -16
i32.and $push20=, $pop18, $pop19
tee_local $push141=, $5=, $pop20
- i64.load $2=, 0($pop141)
+ i64.load $3=, 0($pop141)
i32.const $push140=, 8
i32.or $push21=, $5, $pop140
- i32.store $push22=, 0($3), $pop21
+ i32.store $push22=, 0($4), $pop21
tee_local $push139=, $5=, $pop22
i32.const $push138=, 8
i32.add $push23=, $pop139, $pop138
- i32.store $discard=, 0($3), $pop23
+ i32.store $discard=, 0($4), $pop23
i64.load $push24=, 0($5)
i64.const $push26=, 0
i64.const $push25=, 4613381465357418496
- i32.call $push27=, __netf2@FUNCTION, $2, $pop24, $pop26, $pop25
+ i32.call $push27=, __netf2@FUNCTION, $3, $pop24, $pop26, $pop25
br_if 1, $pop27 # 1: down to label18
# BB#7: # %lor.lhs.false9.i
i32.const $push145=, 0
- i32.load $3=, pap($pop145)
- i32.load $push28=, 0($3)
+ i32.load $4=, pap($pop145)
+ i32.load $push28=, 0($4)
i32.const $push29=, 3
i32.add $push30=, $pop28, $pop29
i32.const $push31=, -4
@@ -821,37 +815,37 @@ f6: # @f6
tee_local $push144=, $5=, $pop32
i32.const $push33=, 4
i32.add $push34=, $pop144, $pop33
- i32.store $discard=, 0($3), $pop34
+ i32.store $discard=, 0($4), $pop34
i32.load $push35=, 0($5)
i32.const $push36=, 17
i32.ne $push37=, $pop35, $pop36
br_if 1, $pop37 # 1: down to label18
.LBB8_8: # %bar.exit
end_block # label19:
- i32.load $3=, 12($9)
+ i32.load $4=, 12($9)
i32.const $push157=, 0
- i32.store $discard=, bar_arg($pop157), $4
+ i32.store $discard=, bar_arg($pop157), $1
i32.const $push58=, 3
- i32.add $push59=, $3, $pop58
+ i32.add $push59=, $4, $pop58
i32.const $push60=, -4
i32.and $push61=, $pop59, $pop60
- tee_local $push156=, $4=, $pop61
+ tee_local $push156=, $1=, $pop61
i32.const $push62=, 4
i32.add $push63=, $pop156, $pop62
i32.store $discard=, 12($9), $pop63
i32.const $push155=, 7
- i32.add $push64=, $4, $pop155
+ i32.add $push64=, $1, $pop155
i32.const $push154=, -4
i32.and $push65=, $pop64, $pop154
- tee_local $push153=, $4=, $pop65
+ tee_local $push153=, $1=, $pop65
i32.const $push152=, 4
i32.add $push66=, $pop153, $pop152
i32.store $discard=, 12($9), $pop66
i32.const $push151=, 7
- i32.add $push67=, $4, $pop151
+ i32.add $push67=, $1, $pop151
i32.const $push150=, -4
i32.and $push68=, $pop67, $pop150
- tee_local $push149=, $4=, $pop68
+ tee_local $push149=, $1=, $pop68
i32.const $push148=, 4
i32.add $push69=, $pop149, $pop148
i32.store $discard=, 12($9), $pop69
@@ -859,15 +853,15 @@ f6: # @f6
block
block
i32.const $push147=, 0
- i32.load $push1=, 0($4)
+ i32.load $push1=, 0($1)
i32.store $push70=, x($pop147), $pop1
- tee_local $push146=, $4=, $pop70
+ tee_local $push146=, $1=, $pop70
i32.const $push71=, 16392
i32.eq $push72=, $pop146, $pop71
br_if 0, $pop72 # 0: down to label24
# BB#9: # %bar.exit
i32.const $push73=, 16390
- i32.ne $push74=, $4, $pop73
+ i32.ne $push74=, $1, $pop73
br_if 1, $pop74 # 1: down to label23
# BB#10: # %if.then.i4
i32.const $push160=, 0
@@ -877,12 +871,12 @@ f6: # @f6
i32.add $push108=, $pop106, $pop107
i32.const $push109=, -8
i32.and $push110=, $pop108, $pop109
- tee_local $push158=, $3=, $pop110
+ tee_local $push158=, $4=, $pop110
i32.const $push111=, 8
i32.add $push112=, $pop158, $pop111
i32.store $discard=, gap($pop160), $pop112
block
- f64.load $push113=, 0($3)
+ f64.load $push113=, 0($4)
f64.const $push114=, 0x1.1p4
f64.ne $push115=, $pop113, $pop114
br_if 0, $pop115 # 0: down to label25
@@ -894,11 +888,11 @@ f6: # @f6
i32.add $push118=, $pop116, $pop117
i32.const $push119=, -4
i32.and $push120=, $pop118, $pop119
- tee_local $push161=, $3=, $pop120
+ tee_local $push161=, $4=, $pop120
i32.const $push121=, 4
i32.add $push122=, $pop161, $pop121
i32.store $discard=, gap($pop163), $pop122
- i32.load $push123=, 0($3)
+ i32.load $push123=, 0($4)
i32.const $push124=, 129
i32.eq $push125=, $pop123, $pop124
br_if 2, $pop125 # 2: down to label23
@@ -909,8 +903,8 @@ f6: # @f6
.LBB8_13: # %if.then5.i9
end_block # label24:
i32.const $push167=, 0
- i32.load $3=, pap($pop167)
- i32.load $push75=, 0($3)
+ i32.load $4=, pap($pop167)
+ i32.load $push75=, 0($4)
i32.const $push166=, 7
i32.add $push76=, $pop75, $pop166
i32.const $push77=, -8
@@ -918,7 +912,7 @@ f6: # @f6
tee_local $push165=, $5=, $pop78
i32.const $push164=, 8
i32.add $push79=, $pop165, $pop164
- i32.store $discard=, 0($3), $pop79
+ i32.store $discard=, 0($4), $pop79
i64.load $push80=, 0($5)
i64.const $push81=, 14
i64.ne $push82=, $pop80, $pop81
@@ -926,30 +920,30 @@ f6: # @f6
# BB#14: # %lor.lhs.false7.i11
i32.const $push173=, 0
i32.load $push83=, pap($pop173)
- tee_local $push172=, $3=, $pop83
+ tee_local $push172=, $4=, $pop83
i32.load $push84=, 0($pop172)
i32.const $push85=, 15
i32.add $push86=, $pop84, $pop85
i32.const $push87=, -16
i32.and $push88=, $pop86, $pop87
tee_local $push171=, $5=, $pop88
- i64.load $2=, 0($pop171)
+ i64.load $3=, 0($pop171)
i32.const $push170=, 8
i32.or $push89=, $5, $pop170
- i32.store $push90=, 0($3), $pop89
+ i32.store $push90=, 0($4), $pop89
tee_local $push169=, $5=, $pop90
i32.const $push168=, 8
i32.add $push91=, $pop169, $pop168
- i32.store $discard=, 0($3), $pop91
+ i32.store $discard=, 0($4), $pop91
i64.load $push92=, 0($5)
i64.const $push94=, 0
i64.const $push93=, 4613381465357418496
- i32.call $push95=, __netf2@FUNCTION, $2, $pop92, $pop94, $pop93
+ i32.call $push95=, __netf2@FUNCTION, $3, $pop92, $pop94, $pop93
br_if 1, $pop95 # 1: down to label22
# BB#15: # %lor.lhs.false9.i13
i32.const $push175=, 0
- i32.load $3=, pap($pop175)
- i32.load $push96=, 0($3)
+ i32.load $4=, pap($pop175)
+ i32.load $push96=, 0($4)
i32.const $push97=, 3
i32.add $push98=, $pop96, $pop97
i32.const $push99=, -4
@@ -957,7 +951,7 @@ f6: # @f6
tee_local $push174=, $5=, $pop100
i32.const $push101=, 4
i32.add $push102=, $pop174, $pop101
- i32.store $discard=, 0($3), $pop102
+ i32.store $discard=, 0($4), $pop102
i32.load $push103=, 0($5)
i32.const $push104=, 17
i32.ne $push105=, $pop103, $pop104
@@ -965,9 +959,9 @@ f6: # @f6
.LBB8_16: # %bar.exit15
end_block # label23:
i32.const $push126=, 0
- i32.store $discard=, bar_arg($pop126), $4
+ i32.store $discard=, bar_arg($pop126), $1
i32.const $8=, 16
- i32.add $9=, $10, $8
+ i32.add $9=, $9, $8
i32.const $8=, __stack_pointer
i32.store $9=, 0($8), $9
return
@@ -988,21 +982,20 @@ f6: # @f6
.globl f7
.type f7,@function
f7: # @f7
- .param i32
- .local i64, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i64, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $3=, __stack_pointer
i32.load $3=, 0($3)
i32.const $4=, 16
i32.sub $7=, $3, $4
- copy_local $8=, $7
i32.const $4=, __stack_pointer
i32.store $7=, 0($4), $7
+ i32.store $discard=, 12($7), $1
i32.const $push0=, 0
i32.const $6=, 12
i32.add $6=, $7, $6
i32.store $discard=, pap($pop0), $6
- i32.store $discard=, 12($7), $8
block
block
block
@@ -1021,12 +1014,12 @@ f7: # @f7
i32.add $push38=, $pop36, $pop37
i32.const $push39=, -8
i32.and $push40=, $pop38, $pop39
- tee_local $push57=, $2=, $pop40
+ tee_local $push57=, $1=, $pop40
i32.const $push41=, 8
i32.add $push42=, $pop57, $pop41
i32.store $discard=, gap($pop59), $pop42
block
- f64.load $push43=, 0($2)
+ f64.load $push43=, 0($1)
f64.const $push44=, 0x1.1p4
f64.ne $push45=, $pop43, $pop44
br_if 0, $pop45 # 0: down to label29
@@ -1038,11 +1031,11 @@ f7: # @f7
i32.add $push48=, $pop46, $pop47
i32.const $push49=, -4
i32.and $push50=, $pop48, $pop49
- tee_local $push60=, $2=, $pop50
+ tee_local $push60=, $1=, $pop50
i32.const $push51=, 4
i32.add $push52=, $pop60, $pop51
i32.store $discard=, gap($pop62), $pop52
- i32.load $push53=, 0($2)
+ i32.load $push53=, 0($1)
i32.const $push54=, 129
i32.eq $push55=, $pop53, $pop54
br_if 2, $pop55 # 2: down to label27
@@ -1057,11 +1050,11 @@ f7: # @f7
i32.add $push7=, $pop5, $pop6
i32.const $push8=, -8
i32.and $push9=, $pop7, $pop8
- tee_local $push64=, $2=, $pop9
+ tee_local $push64=, $1=, $pop9
i32.const $push63=, 8
i32.add $push10=, $pop64, $pop63
i32.store $discard=, 12($7), $pop10
- i64.load $push11=, 0($2)
+ i64.load $push11=, 0($1)
i64.const $push12=, 14
i64.ne $push13=, $pop11, $pop12
br_if 1, $pop13 # 1: down to label26
@@ -1071,19 +1064,19 @@ f7: # @f7
i32.add $push16=, $pop14, $pop15
i32.const $push17=, -16
i32.and $push18=, $pop16, $pop17
- tee_local $push68=, $2=, $pop18
- i64.load $1=, 0($pop68)
+ tee_local $push68=, $1=, $pop18
+ i64.load $2=, 0($pop68)
i32.const $push67=, 8
- i32.or $push19=, $2, $pop67
+ i32.or $push19=, $1, $pop67
i32.store $push20=, 12($7), $pop19
- tee_local $push66=, $2=, $pop20
+ tee_local $push66=, $1=, $pop20
i32.const $push65=, 8
i32.add $push21=, $pop66, $pop65
i32.store $discard=, 12($7), $pop21
- i64.load $push22=, 0($2)
+ i64.load $push22=, 0($1)
i64.const $push24=, 0
i64.const $push23=, 4613381465357418496
- i32.call $push25=, __netf2@FUNCTION, $1, $pop22, $pop24, $pop23
+ i32.call $push25=, __netf2@FUNCTION, $2, $pop22, $pop24, $pop23
br_if 1, $pop25 # 1: down to label26
# BB#7: # %lor.lhs.false9.i
i32.load $push26=, 12($7)
@@ -1091,11 +1084,11 @@ f7: # @f7
i32.add $push28=, $pop26, $pop27
i32.const $push29=, -4
i32.and $push30=, $pop28, $pop29
- tee_local $push69=, $2=, $pop30
+ tee_local $push69=, $1=, $pop30
i32.const $push31=, 4
i32.add $push32=, $pop69, $pop31
i32.store $discard=, 12($7), $pop32
- i32.load $push33=, 0($2)
+ i32.load $push33=, 0($1)
i32.const $push34=, 17
i32.ne $push35=, $pop33, $pop34
br_if 1, $pop35 # 1: down to label26
@@ -1104,7 +1097,7 @@ f7: # @f7
i32.const $push56=, 0
i32.store $discard=, bar_arg($pop56), $0
i32.const $5=, 16
- i32.add $7=, $8, $5
+ i32.add $7=, $7, $5
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
return
@@ -1121,21 +1114,20 @@ f7: # @f7
.globl f8
.type f8,@function
f8: # @f8
- .param i32
- .local i64, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i64, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $3=, __stack_pointer
i32.load $3=, 0($3)
i32.const $4=, 16
i32.sub $7=, $3, $4
- copy_local $8=, $7
i32.const $4=, __stack_pointer
i32.store $7=, 0($4), $7
+ i32.store $discard=, 12($7), $1
i32.const $push0=, 0
i32.const $6=, 12
i32.add $6=, $7, $6
i32.store $discard=, pap($pop0), $6
- i32.store $discard=, 12($7), $8
block
block
block
@@ -1154,12 +1146,12 @@ f8: # @f8
i32.add $push38=, $pop36, $pop37
i32.const $push39=, -8
i32.and $push40=, $pop38, $pop39
- tee_local $push64=, $2=, $pop40
+ tee_local $push64=, $1=, $pop40
i32.const $push41=, 8
i32.add $push42=, $pop64, $pop41
i32.store $discard=, gap($pop66), $pop42
block
- f64.load $push43=, 0($2)
+ f64.load $push43=, 0($1)
f64.const $push44=, 0x1.1p4
f64.ne $push45=, $pop43, $pop44
br_if 0, $pop45 # 0: down to label33
@@ -1171,11 +1163,11 @@ f8: # @f8
i32.add $push48=, $pop46, $pop47
i32.const $push49=, -4
i32.and $push50=, $pop48, $pop49
- tee_local $push67=, $2=, $pop50
+ tee_local $push67=, $1=, $pop50
i32.const $push51=, 4
i32.add $push52=, $pop67, $pop51
i32.store $discard=, gap($pop69), $pop52
- i32.load $push53=, 0($2)
+ i32.load $push53=, 0($1)
i32.const $push54=, 129
i32.eq $push55=, $pop53, $pop54
br_if 2, $pop55 # 2: down to label31
@@ -1190,11 +1182,11 @@ f8: # @f8
i32.add $push7=, $pop5, $pop6
i32.const $push8=, -8
i32.and $push9=, $pop7, $pop8
- tee_local $push71=, $2=, $pop9
+ tee_local $push71=, $1=, $pop9
i32.const $push70=, 8
i32.add $push10=, $pop71, $pop70
i32.store $discard=, 12($7), $pop10
- i64.load $push11=, 0($2)
+ i64.load $push11=, 0($1)
i64.const $push12=, 14
i64.ne $push13=, $pop11, $pop12
br_if 1, $pop13 # 1: down to label30
@@ -1204,19 +1196,19 @@ f8: # @f8
i32.add $push16=, $pop14, $pop15
i32.const $push17=, -16
i32.and $push18=, $pop16, $pop17
- tee_local $push75=, $2=, $pop18
- i64.load $1=, 0($pop75)
+ tee_local $push75=, $1=, $pop18
+ i64.load $2=, 0($pop75)
i32.const $push74=, 8
- i32.or $push19=, $2, $pop74
+ i32.or $push19=, $1, $pop74
i32.store $push20=, 12($7), $pop19
- tee_local $push73=, $2=, $pop20
+ tee_local $push73=, $1=, $pop20
i32.const $push72=, 8
i32.add $push21=, $pop73, $pop72
i32.store $discard=, 12($7), $pop21
- i64.load $push22=, 0($2)
+ i64.load $push22=, 0($1)
i64.const $push24=, 0
i64.const $push23=, 4613381465357418496
- i32.call $push25=, __netf2@FUNCTION, $1, $pop22, $pop24, $pop23
+ i32.call $push25=, __netf2@FUNCTION, $2, $pop22, $pop24, $pop23
br_if 1, $pop25 # 1: down to label30
# BB#7: # %lor.lhs.false9.i
i32.load $push26=, 12($7)
@@ -1224,21 +1216,21 @@ f8: # @f8
i32.add $push28=, $pop26, $pop27
i32.const $push29=, -4
i32.and $push30=, $pop28, $pop29
- tee_local $push76=, $2=, $pop30
+ tee_local $push76=, $1=, $pop30
i32.const $push31=, 4
i32.add $push32=, $pop76, $pop31
i32.store $discard=, 12($7), $pop32
- i32.load $push33=, 0($2)
+ i32.load $push33=, 0($1)
i32.const $push34=, 17
i32.ne $push35=, $pop33, $pop34
br_if 1, $pop35 # 1: down to label30
.LBB10_8: # %bar.exit
end_block # label31:
- i32.load $2=, 12($7)
+ i32.load $1=, 12($7)
i32.const $push56=, 0
i32.store $discard=, bar_arg($pop56), $0
i32.const $push57=, 7
- i32.add $push58=, $2, $pop57
+ i32.add $push58=, $1, $pop57
i32.const $push59=, -8
i32.and $push60=, $pop58, $pop59
tee_local $push78=, $0=, $pop60
@@ -1249,7 +1241,7 @@ f8: # @f8
f64.load $push63=, 0($0)
f64.store $discard=, d($pop77), $pop63
i32.const $5=, 16
- i32.add $7=, $8, $5
+ i32.add $7=, $7, $5
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
return
@@ -1267,236 +1259,179 @@ f8: # @f8
.type main,@function
main: # @main
.result i32
- .local i32, i64, i32, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 48
- i32.sub $36=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $36=, 0($34), $36
- call f1@FUNCTION, $0
- i32.const $push43=, 0
- i64.const $push1=, 4629418941960159232
- i64.store $discard=, d($pop43), $pop1
+ i32.const $4=, __stack_pointer
+ i32.load $4=, 0($4)
+ i32.const $5=, 176
+ i32.sub $20=, $4, $5
i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $36=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $36=, 0($6), $36
+ i32.store $20=, 0($5), $20
+ i32.const $push55=, 0
+ call f1@FUNCTION, $0, $pop55
+ i32.const $push54=, 0
+ i64.const $push1=, 4629418941960159232
+ i64.store $discard=, d($pop54), $pop1
i32.const $push2=, 28
- i32.store $0=, 0($36), $pop2
- call f2@FUNCTION, $0
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $36=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $36=, 0($8), $36
+ i32.store $0=, 160($20):p2align=4, $pop2
+ i32.const $7=, 160
+ i32.add $7=, $20, $7
+ call f2@FUNCTION, $0, $7
block
- i32.const $push42=, 0
- i32.load $push3=, bar_arg($pop42)
+ i32.const $push53=, 0
+ i32.load $push3=, bar_arg($pop53)
i32.ne $push4=, $0, $pop3
br_if 0, $pop4 # 0: down to label34
# BB#1: # %entry
- i32.const $push44=, 0
- i32.load $push0=, x($pop44)
+ i32.const $push56=, 0
+ i32.load $push0=, x($pop56)
i32.ne $push5=, $pop0, $0
br_if 0, $pop5 # 0: down to label34
# BB#2: # %if.end
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 8
- i32.sub $36=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $36=, 0($10), $36
i64.const $push6=, 4638813169307877376
- i64.store $discard=, 0($36), $pop6
- call f3@FUNCTION, $0
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 8
- i32.add $36=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $36=, 0($12), $36
+ i64.store $discard=, 144($20):p2align=4, $pop6
+ i32.const $8=, 144
+ i32.add $8=, $20, $8
+ call f3@FUNCTION, $0, $8
block
- i32.const $push45=, 0
- f64.load $push7=, d($pop45)
+ i32.const $push57=, 0
+ f64.load $push7=, d($pop57)
f64.const $push8=, 0x1.06p7
f64.ne $push9=, $pop7, $pop8
br_if 0, $pop9 # 0: down to label35
# BB#3: # %if.end4
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 16
- i32.sub $36=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $36=, 0($14), $36
- i64.const $push11=, 4625196817309499392
- i64.store $discard=, 0($36), $pop11
- i32.const $push12=, 8
- i32.add $0=, $36, $pop12
+ i32.const $push11=, 8
+ i32.const $9=, 128
+ i32.add $9=, $20, $9
+ i32.or $push12=, $9, $pop11
i32.const $push13=, 128
- i32.store $0=, 0($0), $pop13
- i32.const $push14=, 5
- call f4@FUNCTION, $pop14
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 16
- i32.add $36=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $36=, 0($16), $36
+ i32.store $0=, 0($pop12):p2align=3, $pop13
+ i64.const $push14=, 4625196817309499392
+ i64.store $discard=, 128($20):p2align=4, $pop14
+ i32.const $push15=, 5
+ i32.const $10=, 128
+ i32.add $10=, $20, $10
+ call f4@FUNCTION, $pop15, $10
block
- i32.const $push46=, 0
- i32.load $push15=, x($pop46)
- i32.const $push16=, 16
- i32.ne $push17=, $pop15, $pop16
- br_if 0, $pop17 # 0: down to label36
-# BB#4: # %if.end4
- i32.const $push47=, 0
- i32.load $push10=, foo_arg($pop47)
- i32.ne $push18=, $pop10, $0
+ i32.const $push58=, 0
+ i32.load $push16=, x($pop58)
+ i32.const $push17=, 16
+ i32.ne $push18=, $pop16, $pop17
br_if 0, $pop18 # 0: down to label36
+# BB#4: # %if.end4
+ i32.const $push59=, 0
+ i32.load $push10=, foo_arg($pop59)
+ i32.ne $push19=, $pop10, $0
+ br_if 0, $pop19 # 0: down to label36
# BB#5: # %if.end9
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 16
- i32.sub $36=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $36=, 0($18), $36
- i64.const $push19=, 4625478292286210048
- i64.store $discard=, 0($36), $pop19
- i32.const $push50=, 8
- i32.add $0=, $36, $pop50
- i32.const $push20=, 129
- i32.store $discard=, 0($0), $pop20
- i32.const $push21=, 16390
- call f5@FUNCTION, $pop21
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 16
- i32.add $36=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $36=, 0($20), $36
+ i32.const $push62=, 8
+ i32.const $11=, 112
+ i32.add $11=, $20, $11
+ i32.or $push20=, $11, $pop62
+ i32.const $push21=, 129
+ i32.store $discard=, 0($pop20):p2align=3, $pop21
+ i64.const $push22=, 4625478292286210048
+ i64.store $discard=, 112($20):p2align=4, $pop22
+ i32.const $push23=, 16390
+ i32.const $12=, 112
+ i32.add $12=, $20, $12
+ call f5@FUNCTION, $pop23, $12
block
- i32.const $push49=, 0
- i32.load $push22=, bar_arg($pop49)
- i32.const $push48=, 16390
- i32.ne $push23=, $pop22, $pop48
- br_if 0, $pop23 # 0: down to label37
+ i32.const $push61=, 0
+ i32.load $push24=, bar_arg($pop61)
+ i32.const $push60=, 16390
+ i32.ne $push25=, $pop24, $pop60
+ br_if 0, $pop25 # 0: down to label37
# BB#6: # %if.end12
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 12
- i32.sub $36=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $36=, 0($22), $36
- i64.const $push24=, 60129542156
- i64.store $discard=, 0($36):p2align=2, $pop24
- i32.const $push52=, 8
- i32.add $0=, $36, $pop52
- i32.const $push25=, -31
- i32.store $0=, 0($0), $pop25
- call f6@FUNCTION, $0
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 12
- i32.add $36=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $36=, 0($24), $36
+ i32.const $push64=, 8
+ i32.const $13=, 96
+ i32.add $13=, $20, $13
+ i32.or $push26=, $13, $pop64
+ i32.const $push27=, -31
+ i32.store $0=, 0($pop26):p2align=3, $pop27
+ i64.const $push28=, 60129542156
+ i64.store $discard=, 96($20):p2align=4, $pop28
+ i32.const $14=, 96
+ i32.add $14=, $20, $14
+ call f6@FUNCTION, $0, $14
block
- i32.const $push51=, 0
- i32.load $push26=, bar_arg($pop51)
- i32.ne $push27=, $0, $pop26
- br_if 0, $pop27 # 0: down to label38
+ i32.const $push63=, 0
+ i32.load $push29=, bar_arg($pop63)
+ i32.ne $push30=, $0, $pop29
+ br_if 0, $pop30 # 0: down to label38
# BB#7: # %if.end15
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 40
- i32.sub $36=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $36=, 0($26), $36
- i64.const $push28=, 14
- i64.store $1=, 0($36), $pop28
- i32.const $push59=, 32
- i32.add $0=, $36, $pop59
- i64.const $push29=, 4628011567076605952
- i64.store $discard=, 0($0), $pop29
- i32.const $push58=, 24
- i32.add $0=, $36, $pop58
- i32.const $push30=, 17
- i32.store $2=, 0($0), $pop30
- i32.const $push57=, 16
- i32.add $0=, $36, $pop57
- i64.const $push31=, 4613381465357418496
- i64.store $3=, 0($0), $pop31
- i32.const $push56=, 8
- i32.add $0=, $36, $pop56
- i64.const $push32=, 0
- i64.store $4=, 0($0), $pop32
- i32.const $push55=, 16392
- call f7@FUNCTION, $pop55
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 40
- i32.add $36=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $36=, 0($28), $36
+ i32.const $push71=, 32
+ i32.const $15=, 48
+ i32.add $15=, $20, $15
+ i32.add $push31=, $15, $pop71
+ i64.const $push32=, 4628011567076605952
+ i64.store $discard=, 0($pop31):p2align=4, $pop32
+ i32.const $push70=, 24
+ i32.const $16=, 48
+ i32.add $16=, $20, $16
+ i32.add $push33=, $16, $pop70
+ i32.const $push34=, 17
+ i32.store $0=, 0($pop33):p2align=3, $pop34
+ i32.const $push69=, 16
+ i32.const $17=, 48
+ i32.add $17=, $20, $17
+ i32.add $push35=, $17, $pop69
+ i64.const $push36=, 4613381465357418496
+ i64.store $1=, 0($pop35):p2align=4, $pop36
+ i32.const $push68=, 8
+ i32.const $18=, 48
+ i32.add $18=, $20, $18
+ i32.or $push37=, $18, $pop68
+ i64.const $push38=, 0
+ i64.store $2=, 0($pop37), $pop38
+ i64.const $push39=, 14
+ i64.store $3=, 48($20):p2align=4, $pop39
+ i32.const $push67=, 16392
+ i32.const $19=, 48
+ i32.add $19=, $20, $19
+ call f7@FUNCTION, $pop67, $19
block
- i32.const $push54=, 0
- i32.load $push33=, bar_arg($pop54)
- i32.const $push53=, 16392
- i32.ne $push34=, $pop33, $pop53
- br_if 0, $pop34 # 0: down to label39
+ i32.const $push66=, 0
+ i32.load $push40=, bar_arg($pop66)
+ i32.const $push65=, 16392
+ i32.ne $push41=, $pop40, $pop65
+ br_if 0, $pop41 # 0: down to label39
# BB#8: # %if.end18
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 40
- i32.sub $36=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $36=, 0($30), $36
- i64.store $discard=, 0($36), $1
- i32.const $push66=, 32
- i32.add $0=, $36, $pop66
- i64.const $push36=, 4628293042053316608
- i64.store $discard=, 0($0), $pop36
- i32.const $push65=, 24
- i32.add $0=, $36, $pop65
- i32.store $discard=, 0($0), $2
- i32.const $push64=, 16
- i32.add $0=, $36, $pop64
- i64.store $discard=, 0($0), $3
- i32.const $push63=, 8
- i32.add $0=, $36, $pop63
- i64.store $discard=, 0($0), $4
- i32.const $push62=, 16392
- call f8@FUNCTION, $pop62
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 40
- i32.add $36=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $36=, 0($32), $36
+ i32.const $push78=, 32
+ i32.add $push43=, $20, $pop78
+ i64.const $push44=, 4628293042053316608
+ i64.store $discard=, 0($pop43):p2align=4, $pop44
+ i32.const $push77=, 24
+ i32.add $push45=, $20, $pop77
+ i32.store $discard=, 0($pop45):p2align=3, $0
+ i32.const $push76=, 16
+ i32.add $push46=, $20, $pop76
+ i64.store $discard=, 0($pop46):p2align=4, $1
+ i32.const $push75=, 8
+ i32.or $push47=, $20, $pop75
+ i64.store $discard=, 0($pop47), $2
+ i64.store $discard=, 0($20):p2align=4, $3
+ i32.const $push74=, 16392
+ call f8@FUNCTION, $pop74, $20
block
- i32.const $push61=, 0
- i32.load $push37=, bar_arg($pop61)
- i32.const $push60=, 16392
- i32.ne $push38=, $pop37, $pop60
- br_if 0, $pop38 # 0: down to label40
+ i32.const $push73=, 0
+ i32.load $push48=, bar_arg($pop73)
+ i32.const $push72=, 16392
+ i32.ne $push49=, $pop48, $pop72
+ br_if 0, $pop49 # 0: down to label40
# BB#9: # %if.end18
- i32.const $push67=, 0
- f64.load $push35=, d($pop67)
- f64.const $push39=, 0x1.bp4
- f64.ne $push40=, $pop35, $pop39
- br_if 0, $pop40 # 0: down to label40
+ i32.const $push79=, 0
+ f64.load $push42=, d($pop79)
+ f64.const $push50=, 0x1.bp4
+ f64.ne $push51=, $pop42, $pop50
+ br_if 0, $pop51 # 0: down to label40
# BB#10: # %if.end23
- i32.const $push41=, 0
- i32.const $35=, 48
- i32.add $36=, $36, $35
- i32.const $35=, __stack_pointer
- i32.store $36=, 0($35), $36
- return $pop41
+ i32.const $push52=, 0
+ i32.const $6=, 176
+ i32.add $20=, $20, $6
+ i32.const $6=, __stack_pointer
+ i32.store $20=, 0($6), $20
+ return $pop52
.LBB11_11: # %if.then22
end_block # label40:
call abort@FUNCTION
diff --git a/test/torture-s/stdarg-2.c.s b/test/torture-s/stdarg-2.c.s
index 3aa78c087..f523caf52 100644
--- a/test/torture-s/stdarg-2.c.s
+++ b/test/torture-s/stdarg-2.c.s
@@ -219,12 +219,11 @@ bar: # @bar
.globl f1
.type f1,@function
f1: # @f1
- .param i32
- .local i32, i32
+ .param i32, i32
# BB#0: # %entry
i32.const $push0=, 0
i32.const $push11=, 0
- i32.store $push1=, gap($pop11), $2
+ i32.store $push1=, gap($pop11), $1
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
@@ -246,11 +245,10 @@ f1: # @f1
.globl f2
.type f2,@function
f2: # @f2
- .param i32
- .local i32, i32
+ .param i32, i32
# BB#0: # %entry
i32.const $push23=, 0
- i32.store $discard=, gap($pop23), $2
+ i32.store $discard=, gap($pop23), $1
block
i32.const $push0=, 16386
i32.ne $push1=, $0, $pop0
@@ -306,17 +304,16 @@ f2: # @f2
.globl f3
.type f3,@function
f3: # @f3
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 48
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 16($5):p2align=4, $6
+ i32.store $push0=, 16($5):p2align=4, $1
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
@@ -329,7 +326,7 @@ f3: # @f3
i32.load $push7=, 0($1)
i32.store $discard=, x($pop8), $pop7
i32.const $4=, 48
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -342,17 +339,16 @@ f3: # @f3
.globl f4
.type f4,@function
f4: # @f4
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 48
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $discard=, 16($5):p2align=4, $6
+ i32.store $discard=, 16($5):p2align=4, $1
block
i32.const $push0=, 16386
i32.ne $push1=, $0, $pop0
@@ -399,7 +395,7 @@ f4: # @f4
i32.const $push22=, 0
i32.store $discard=, bar_arg($pop22), $0
i32.const $4=, 48
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -412,17 +408,16 @@ f4: # @f4
.globl f5
.type f5,@function
f5: # @f5
- .param i32
- .local i64, i64, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i64, i64, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 80
i32.sub $9=, $4, $5
- copy_local $10=, $9
i32.const $5=, __stack_pointer
i32.store $9=, 0($5), $9
- i32.store $push0=, 48($9):p2align=4, $10
+ i32.store $push0=, 48($9):p2align=4, $1
i32.store $discard=, 76($9), $pop0
block
block
@@ -449,7 +444,7 @@ f5: # @f5
i32.const $push49=, 4
i32.add $push50=, $pop73, $pop49
i32.store $discard=, 76($9), $pop50
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push51=, 11
i32.add $push52=, $0, $pop51
i32.const $push53=, -8
@@ -458,10 +453,10 @@ f5: # @f5
i32.const $push55=, 8
i32.add $push56=, $pop72, $pop55
i32.store $discard=, 76($9), $pop56
- f64.convert_s/i32 $push58=, $3
+ f64.convert_s/i32 $push58=, $1
f64.load $push57=, 0($0)
f64.add $push59=, $pop58, $pop57
- i32.trunc_s/f64 $3=, $pop59
+ i32.trunc_s/f64 $1=, $pop59
i32.const $push60=, 15
i32.add $push61=, $0, $pop60
i32.const $push71=, -8
@@ -471,7 +466,7 @@ f5: # @f5
i32.add $push63=, $pop70, $pop69
i32.store $discard=, 76($9), $pop63
i32.const $push67=, 0
- i64.extend_u/i32 $push65=, $3
+ i64.extend_u/i32 $push65=, $1
i64.load $push64=, 0($0)
i64.add $push66=, $pop65, $pop64
i64.store32 $discard=, foo_arg($pop67), $pop66
@@ -491,7 +486,7 @@ f5: # @f5
i32.const $push77=, 8
i32.add $push34=, $pop78, $pop77
i32.store $discard=, 76($9), $pop34
- i32.load $3=, 0($0):p2align=3
+ i32.load $1=, 0($0):p2align=3
i32.const $push35=, 15
i32.add $push36=, $0, $pop35
i32.const $push76=, -8
@@ -502,7 +497,7 @@ f5: # @f5
i32.store $discard=, 76($9), $pop38
i32.const $push43=, 0
f64.load $push39=, 0($0)
- f64.convert_s/i32 $push40=, $3
+ f64.convert_s/i32 $push40=, $1
f64.add $push41=, $pop39, $pop40
i32.trunc_s/f64 $push42=, $pop41
i32.store $discard=, foo_arg($pop43), $pop42
@@ -518,13 +513,13 @@ f5: # @f5
i32.const $push11=, 4
i32.add $push12=, $pop84, $pop11
i32.store $discard=, 76($9), $pop12
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push13=, 19
i32.add $push14=, $0, $pop13
i32.const $push15=, -16
i32.and $push16=, $pop14, $pop15
tee_local $push83=, $0=, $pop16
- i64.load $1=, 0($pop83)
+ i64.load $2=, 0($pop83)
i32.const $push17=, 8
i32.or $push18=, $0, $pop17
i32.store $push19=, 76($9), $pop18
@@ -532,17 +527,17 @@ f5: # @f5
i32.const $push81=, 8
i32.add $push20=, $pop82, $pop81
i32.store $discard=, 76($9), $pop20
- i64.load $2=, 0($0)
+ i64.load $3=, 0($0)
i32.const $7=, 16
i32.add $7=, $9, $7
- call __floatsitf@FUNCTION, $7, $3
+ call __floatsitf@FUNCTION, $7, $1
i64.load $push23=, 16($9)
i32.const $push80=, 8
i32.const $8=, 16
i32.add $8=, $9, $8
i32.add $push21=, $8, $pop80
i64.load $push22=, 0($pop21)
- call __addtf3@FUNCTION, $9, $pop23, $pop22, $1, $2
+ call __addtf3@FUNCTION, $9, $pop23, $pop22, $2, $3
i32.const $push28=, 0
i64.load $push26=, 0($9)
i32.const $push79=, 8
@@ -553,7 +548,7 @@ f5: # @f5
.LBB6_7: # %foo.exit
end_block # label10:
i32.const $6=, 80
- i32.add $9=, $10, $6
+ i32.add $9=, $9, $6
i32.const $6=, __stack_pointer
i32.store $9=, 0($6), $9
return
@@ -566,32 +561,31 @@ f5: # @f5
.globl f6
.type f6,@function
f6: # @f6
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
i32.const $push0=, 4
- i32.or $1=, $6, $pop0
- i32.store $push1=, 0($1), $7
+ i32.or $2=, $6, $pop0
+ i32.store $push1=, 0($2), $1
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
i32.and $push5=, $pop3, $pop4
- tee_local $push10=, $2=, $pop5
+ tee_local $push10=, $1=, $pop5
i32.const $push9=, 4
i32.add $push6=, $pop10, $pop9
- i32.store $discard=, 0($1), $pop6
+ i32.store $discard=, 0($2), $pop6
i32.const $push8=, 0
- i32.load $push7=, 0($2)
+ i32.load $push7=, 0($1)
i32.store $discard=, x($pop8), $pop7
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -604,19 +598,18 @@ f6: # @f6
.globl f7
.type f7,@function
f7: # @f7
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
i32.const $push23=, 4
i32.or $push0=, $5, $pop23
- i32.store $discard=, 0($pop0), $6
+ i32.store $discard=, 0($pop0), $1
block
i32.const $push1=, 16386
i32.ne $push2=, $0, $pop1
@@ -663,7 +656,7 @@ f7: # @f7
i32.const $push22=, 0
i32.store $discard=, bar_arg($pop22), $0
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -676,21 +669,20 @@ f7: # @f7
.globl f8
.type f8,@function
f8: # @f8
- .param i32
- .local i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 64
i32.sub $12=, $4, $5
- copy_local $13=, $12
i32.const $5=, __stack_pointer
i32.store $12=, 0($5), $12
i32.const $push68=, 4
i32.const $7=, 40
i32.add $7=, $12, $7
i32.or $push0=, $7, $pop68
- i32.store $push1=, 0($pop0), $13
+ i32.store $push1=, 0($pop0), $1
i32.store $discard=, 60($12), $pop1
block
block
@@ -717,7 +709,7 @@ f8: # @f8
i32.const $push49=, 4
i32.add $push50=, $pop74, $pop49
i32.store $discard=, 60($12), $pop50
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push51=, 11
i32.add $push52=, $0, $pop51
i32.const $push53=, -8
@@ -726,10 +718,10 @@ f8: # @f8
i32.const $push55=, 8
i32.add $push56=, $pop73, $pop55
i32.store $discard=, 60($12), $pop56
- f64.convert_s/i32 $push58=, $3
+ f64.convert_s/i32 $push58=, $1
f64.load $push57=, 0($0)
f64.add $push59=, $pop58, $pop57
- i32.trunc_s/f64 $3=, $pop59
+ i32.trunc_s/f64 $1=, $pop59
i32.const $push60=, 15
i32.add $push61=, $0, $pop60
i32.const $push72=, -8
@@ -739,7 +731,7 @@ f8: # @f8
i32.add $push63=, $pop71, $pop70
i32.store $discard=, 60($12), $pop63
i32.const $push67=, 0
- i64.extend_u/i32 $push65=, $3
+ i64.extend_u/i32 $push65=, $1
i64.load $push64=, 0($0)
i64.add $push66=, $pop65, $pop64
i64.store32 $discard=, foo_arg($pop67), $pop66
@@ -759,7 +751,7 @@ f8: # @f8
i32.const $push78=, 8
i32.add $push34=, $pop79, $pop78
i32.store $discard=, 60($12), $pop34
- i32.load $3=, 0($0):p2align=3
+ i32.load $1=, 0($0):p2align=3
i32.const $push35=, 15
i32.add $push36=, $0, $pop35
i32.const $push77=, -8
@@ -770,7 +762,7 @@ f8: # @f8
i32.store $discard=, 60($12), $pop38
i32.const $push43=, 0
f64.load $push39=, 0($0)
- f64.convert_s/i32 $push40=, $3
+ f64.convert_s/i32 $push40=, $1
f64.add $push41=, $pop39, $pop40
i32.trunc_s/f64 $push42=, $pop41
i32.store $discard=, foo_arg($pop43), $pop42
@@ -786,13 +778,13 @@ f8: # @f8
i32.const $push85=, 4
i32.add $push12=, $pop86, $pop85
i32.store $discard=, 60($12), $pop12
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push13=, 19
i32.add $push14=, $0, $pop13
i32.const $push15=, -16
i32.and $push16=, $pop14, $pop15
tee_local $push84=, $0=, $pop16
- i64.load $1=, 0($pop84)
+ i64.load $2=, 0($pop84)
i32.const $push17=, 8
i32.or $push18=, $0, $pop17
i32.store $push19=, 60($12), $pop18
@@ -800,10 +792,10 @@ f8: # @f8
i32.const $push82=, 8
i32.add $push20=, $pop83, $pop82
i32.store $discard=, 60($12), $pop20
- i64.load $2=, 0($0)
+ i64.load $3=, 0($0)
i32.const $8=, 24
i32.add $8=, $12, $8
- call __floatsitf@FUNCTION, $8, $3
+ call __floatsitf@FUNCTION, $8, $1
i64.load $push23=, 24($12)
i32.const $push81=, 8
i32.const $9=, 24
@@ -812,7 +804,7 @@ f8: # @f8
i64.load $push22=, 0($pop21)
i32.const $10=, 8
i32.add $10=, $12, $10
- call __addtf3@FUNCTION, $10, $pop23, $pop22, $1, $2
+ call __addtf3@FUNCTION, $10, $pop23, $pop22, $2, $3
i32.const $push28=, 0
i64.load $push26=, 8($12)
i32.const $push80=, 8
@@ -825,7 +817,7 @@ f8: # @f8
.LBB9_7: # %foo.exit
end_block # label16:
i32.const $6=, 64
- i32.add $12=, $13, $6
+ i32.add $12=, $12, $6
i32.const $6=, __stack_pointer
i32.store $12=, 0($6), $12
return
@@ -838,32 +830,31 @@ f8: # @f8
.globl f10
.type f10,@function
f10: # @f10
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
i32.const $push0=, 12
- i32.add $1=, $6, $pop0
- i32.store $push1=, 0($1), $7
+ i32.add $2=, $6, $pop0
+ i32.store $push1=, 0($2), $1
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
i32.and $push5=, $pop3, $pop4
- tee_local $push10=, $2=, $pop5
+ tee_local $push10=, $1=, $pop5
i32.const $push6=, 4
i32.add $push7=, $pop10, $pop6
- i32.store $discard=, 0($1), $pop7
+ i32.store $discard=, 0($2), $pop7
i32.const $push9=, 0
- i32.load $push8=, 0($2)
+ i32.load $push8=, 0($1)
i32.store $discard=, x($pop9), $pop8
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -876,19 +867,18 @@ f10: # @f10
.globl f11
.type f11,@function
f11: # @f11
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
i32.const $push1=, 12
i32.add $push0=, $5, $pop1
- i32.store $discard=, 0($pop0), $6
+ i32.store $discard=, 0($pop0), $1
block
i32.const $push2=, 16386
i32.ne $push3=, $0, $pop2
@@ -935,7 +925,7 @@ f11: # @f11
i32.const $push24=, 0
i32.store $discard=, bar_arg($pop24), $0
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -948,21 +938,20 @@ f11: # @f11
.globl f12
.type f12,@function
f12: # @f12
- .param i32
- .local i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 64
i32.sub $12=, $4, $5
- copy_local $13=, $12
i32.const $5=, __stack_pointer
i32.store $12=, 0($5), $12
i32.const $push1=, 12
i32.const $7=, 40
i32.add $7=, $12, $7
i32.add $push0=, $7, $pop1
- i32.store $push2=, 0($pop0), $13
+ i32.store $push2=, 0($pop0), $1
i32.store $discard=, 60($12), $pop2
block
block
@@ -989,7 +978,7 @@ f12: # @f12
i32.const $push51=, 4
i32.add $push52=, $pop75, $pop51
i32.store $discard=, 60($12), $pop52
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push53=, 11
i32.add $push54=, $0, $pop53
i32.const $push55=, -8
@@ -998,10 +987,10 @@ f12: # @f12
i32.const $push57=, 8
i32.add $push58=, $pop74, $pop57
i32.store $discard=, 60($12), $pop58
- f64.convert_s/i32 $push60=, $3
+ f64.convert_s/i32 $push60=, $1
f64.load $push59=, 0($0)
f64.add $push61=, $pop60, $pop59
- i32.trunc_s/f64 $3=, $pop61
+ i32.trunc_s/f64 $1=, $pop61
i32.const $push62=, 15
i32.add $push63=, $0, $pop62
i32.const $push73=, -8
@@ -1011,7 +1000,7 @@ f12: # @f12
i32.add $push65=, $pop72, $pop71
i32.store $discard=, 60($12), $pop65
i32.const $push69=, 0
- i64.extend_u/i32 $push67=, $3
+ i64.extend_u/i32 $push67=, $1
i64.load $push66=, 0($0)
i64.add $push68=, $pop67, $pop66
i64.store32 $discard=, foo_arg($pop69), $pop68
@@ -1031,7 +1020,7 @@ f12: # @f12
i32.const $push79=, 8
i32.add $push36=, $pop80, $pop79
i32.store $discard=, 60($12), $pop36
- i32.load $3=, 0($0):p2align=3
+ i32.load $1=, 0($0):p2align=3
i32.const $push37=, 15
i32.add $push38=, $0, $pop37
i32.const $push78=, -8
@@ -1042,7 +1031,7 @@ f12: # @f12
i32.store $discard=, 60($12), $pop40
i32.const $push45=, 0
f64.load $push41=, 0($0)
- f64.convert_s/i32 $push42=, $3
+ f64.convert_s/i32 $push42=, $1
f64.add $push43=, $pop41, $pop42
i32.trunc_s/f64 $push44=, $pop43
i32.store $discard=, foo_arg($pop45), $pop44
@@ -1058,13 +1047,13 @@ f12: # @f12
i32.const $push13=, 4
i32.add $push14=, $pop86, $pop13
i32.store $discard=, 60($12), $pop14
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push15=, 19
i32.add $push16=, $0, $pop15
i32.const $push17=, -16
i32.and $push18=, $pop16, $pop17
tee_local $push85=, $0=, $pop18
- i64.load $1=, 0($pop85)
+ i64.load $2=, 0($pop85)
i32.const $push19=, 8
i32.or $push20=, $0, $pop19
i32.store $push21=, 60($12), $pop20
@@ -1072,10 +1061,10 @@ f12: # @f12
i32.const $push83=, 8
i32.add $push22=, $pop84, $pop83
i32.store $discard=, 60($12), $pop22
- i64.load $2=, 0($0)
+ i64.load $3=, 0($0)
i32.const $8=, 24
i32.add $8=, $12, $8
- call __floatsitf@FUNCTION, $8, $3
+ call __floatsitf@FUNCTION, $8, $1
i64.load $push25=, 24($12)
i32.const $push82=, 8
i32.const $9=, 24
@@ -1084,7 +1073,7 @@ f12: # @f12
i64.load $push24=, 0($pop23)
i32.const $10=, 8
i32.add $10=, $12, $10
- call __addtf3@FUNCTION, $10, $pop25, $pop24, $1, $2
+ call __addtf3@FUNCTION, $10, $pop25, $pop24, $2, $3
i32.const $push30=, 0
i64.load $push28=, 8($12)
i32.const $push81=, 8
@@ -1097,7 +1086,7 @@ f12: # @f12
.LBB12_7: # %foo.exit
end_block # label22:
i32.const $6=, 64
- i32.add $12=, $13, $6
+ i32.add $12=, $12, $6
i32.const $6=, __stack_pointer
i32.store $12=, 0($6), $12
return
@@ -1111,261 +1100,179 @@ f12: # @f12
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 32
- i32.sub $40=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $40=, 0($38), $40
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $40=, $1, $2
+ i32.const $2=, 176
+ i32.sub $16=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $40=, 0($2), $40
+ i32.store $16=, 0($2), $16
i32.const $push0=, 79
- i32.store $0=, 0($40), $pop0
- call f1@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $40=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $40=, 0($4), $40
+ i32.store $0=, 160($16):p2align=4, $pop0
+ i32.const $4=, 160
+ i32.add $4=, $16, $4
+ call f1@FUNCTION, $0, $4
block
- i32.const $push52=, 0
- i32.load $push1=, x($pop52)
+ i32.const $push58=, 0
+ i32.load $push1=, x($pop58)
i32.ne $push2=, $0, $pop1
br_if 0, $pop2 # 0: down to label26
# BB#1: # %if.end
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $40=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $40=, 0($6), $40
- i32.const $push3=, 13
- i32.store $discard=, 0($40), $pop3
- i32.const $push4=, 8
- i32.add $0=, $40, $pop4
+ i32.const $push3=, 8
+ i32.const $5=, 144
+ i32.add $5=, $16, $5
+ i32.or $push4=, $5, $pop3
i64.const $push5=, -4599301119452119040
- i64.store $discard=, 0($0), $pop5
- i32.const $push6=, 16386
- call f2@FUNCTION, $pop6
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 16
- i32.add $40=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $40=, 0($8), $40
+ i64.store $discard=, 0($pop4), $pop5
+ i32.const $push6=, 13
+ i32.store $discard=, 144($16):p2align=4, $pop6
+ i32.const $push7=, 16386
+ i32.const $6=, 144
+ i32.add $6=, $16, $6
+ call f2@FUNCTION, $pop7, $6
block
- i32.const $push54=, 0
- i32.load $push7=, bar_arg($pop54)
- i32.const $push53=, 16386
- i32.ne $push8=, $pop7, $pop53
- br_if 0, $pop8 # 0: down to label27
+ i32.const $push60=, 0
+ i32.load $push8=, bar_arg($pop60)
+ i32.const $push59=, 16386
+ i32.ne $push9=, $pop8, $pop59
+ br_if 0, $pop9 # 0: down to label27
# BB#2: # %if.end3
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.sub $40=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $40=, 0($10), $40
- i32.const $push9=, 2031
- i32.store $0=, 0($40), $pop9
- call f3@FUNCTION, $0
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.add $40=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $40=, 0($12), $40
+ i32.const $push10=, 2031
+ i32.store $0=, 128($16):p2align=4, $pop10
+ i32.const $7=, 128
+ i32.add $7=, $16, $7
+ call f3@FUNCTION, $0, $7
block
- i32.const $push55=, 0
- i32.load $push10=, x($pop55)
- i32.ne $push11=, $0, $pop10
- br_if 0, $pop11 # 0: down to label28
+ i32.const $push61=, 0
+ i32.load $push11=, x($pop61)
+ i32.ne $push12=, $0, $pop11
+ br_if 0, $pop12 # 0: down to label28
# BB#3: # %if.end6
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.sub $40=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $40=, 0($14), $40
- i32.const $push12=, 18
- i32.store $discard=, 0($40), $pop12
- i32.const $push13=, 4
- call f4@FUNCTION, $pop13
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.add $40=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $40=, 0($16), $40
+ i32.const $push13=, 18
+ i32.store $discard=, 112($16):p2align=4, $pop13
+ i32.const $push14=, 4
+ i32.const $8=, 112
+ i32.add $8=, $16, $8
+ call f4@FUNCTION, $pop14, $8
block
- i32.const $push57=, 0
- i32.load $push14=, bar_arg($pop57)
- i32.const $push56=, 4
- i32.ne $push15=, $pop14, $pop56
- br_if 0, $pop15 # 0: down to label29
+ i32.const $push63=, 0
+ i32.load $push15=, bar_arg($pop63)
+ i32.const $push62=, 4
+ i32.ne $push16=, $pop15, $pop62
+ br_if 0, $pop16 # 0: down to label29
# BB#4: # %if.end9
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 24
- i32.sub $40=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $40=, 0($18), $40
- i32.const $push16=, 1
- i32.store $discard=, 0($40), $pop16
i32.const $push17=, 16
- i32.add $0=, $40, $pop17
- i64.const $push18=, 18
- i64.store $discard=, 0($0), $pop18
- i32.const $push19=, 8
- i32.add $0=, $40, $pop19
- i64.const $push20=, 4626041242239631360
- i64.store $discard=, 0($0), $pop20
- i32.const $push21=, 5
- call f5@FUNCTION, $pop21
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 24
- i32.add $40=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $40=, 0($20), $40
+ i32.const $9=, 80
+ i32.add $9=, $16, $9
+ i32.add $push18=, $9, $pop17
+ i64.const $push19=, 18
+ i64.store $discard=, 0($pop18):p2align=4, $pop19
+ i32.const $push20=, 8
+ i32.const $10=, 80
+ i32.add $10=, $16, $10
+ i32.or $push21=, $10, $pop20
+ i64.const $push22=, 4626041242239631360
+ i64.store $discard=, 0($pop21), $pop22
+ i32.const $push23=, 1
+ i32.store $discard=, 80($16):p2align=4, $pop23
+ i32.const $push24=, 5
+ i32.const $11=, 80
+ i32.add $11=, $16, $11
+ call f5@FUNCTION, $pop24, $11
block
- i32.const $push58=, 0
- i32.load $push22=, foo_arg($pop58)
- i32.const $push23=, 38
- i32.ne $push24=, $pop22, $pop23
- br_if 0, $pop24 # 0: down to label30
+ i32.const $push64=, 0
+ i32.load $push25=, foo_arg($pop64)
+ i32.const $push26=, 38
+ i32.ne $push27=, $pop25, $pop26
+ br_if 0, $pop27 # 0: down to label30
# BB#5: # %if.end12
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.sub $40=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $40=, 0($22), $40
- i32.const $push25=, 18
- i32.store $0=, 0($40), $pop25
- call f6@FUNCTION, $0
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.add $40=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $40=, 0($24), $40
+ i32.const $push28=, 18
+ i32.store $0=, 64($16):p2align=4, $pop28
+ i32.const $12=, 64
+ i32.add $12=, $16, $12
+ call f6@FUNCTION, $0, $12
block
- i32.const $push59=, 0
- i32.load $push26=, x($pop59)
- i32.ne $push27=, $0, $pop26
- br_if 0, $pop27 # 0: down to label31
+ i32.const $push65=, 0
+ i32.load $push29=, x($pop65)
+ i32.ne $push30=, $0, $pop29
+ br_if 0, $pop30 # 0: down to label31
# BB#6: # %if.end15
- i32.const $push28=, 7
- call f7@FUNCTION, $pop28
+ i32.const $push31=, 7
+ i32.const $push68=, 0
+ call f7@FUNCTION, $pop31, $pop68
block
- i32.const $push61=, 0
- i32.load $push29=, bar_arg($pop61)
- i32.const $push60=, 7
- i32.ne $push30=, $pop29, $pop60
- br_if 0, $pop30 # 0: down to label32
+ i32.const $push67=, 0
+ i32.load $push32=, bar_arg($pop67)
+ i32.const $push66=, 7
+ i32.ne $push33=, $pop32, $pop66
+ br_if 0, $pop33 # 0: down to label32
# BB#7: # %if.end18
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 16
- i32.sub $40=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $40=, 0($26), $40
- i64.const $push31=, 2031
- i64.store $discard=, 0($40), $pop31
- i32.const $push32=, 8
- i32.add $0=, $40, $pop32
- i64.const $push33=, 4623507967449235456
- i64.store $discard=, 0($0), $pop33
- i32.const $push63=, 8
- call f8@FUNCTION, $pop63
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 16
- i32.add $40=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $40=, 0($28), $40
+ i32.const $push34=, 8
+ i32.const $13=, 48
+ i32.add $13=, $16, $13
+ i32.or $push35=, $13, $pop34
+ i64.const $push36=, 4623507967449235456
+ i64.store $discard=, 0($pop35), $pop36
+ i64.const $push37=, 2031
+ i64.store $discard=, 48($16):p2align=4, $pop37
+ i32.const $push70=, 8
+ i32.const $14=, 48
+ i32.add $14=, $16, $14
+ call f8@FUNCTION, $pop70, $14
block
- i32.const $push62=, 0
- i32.load $push34=, foo_arg($pop62)
- i32.const $push35=, 2044
- i32.ne $push36=, $pop34, $pop35
- br_if 0, $pop36 # 0: down to label33
+ i32.const $push69=, 0
+ i32.load $push38=, foo_arg($pop69)
+ i32.const $push39=, 2044
+ i32.ne $push40=, $pop38, $pop39
+ br_if 0, $pop40 # 0: down to label33
# BB#8: # %if.end21
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 4
- i32.sub $40=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $40=, 0($30), $40
- i32.const $push37=, 180
- i32.store $0=, 0($40), $pop37
- call f10@FUNCTION, $0
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 4
- i32.add $40=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $40=, 0($32), $40
+ i32.const $push41=, 180
+ i32.store $0=, 32($16):p2align=4, $pop41
+ i32.const $15=, 32
+ i32.add $15=, $16, $15
+ call f10@FUNCTION, $0, $15
block
- i32.const $push64=, 0
- i32.load $push38=, x($pop64)
- i32.ne $push39=, $0, $pop38
- br_if 0, $pop39 # 0: down to label34
+ i32.const $push71=, 0
+ i32.load $push42=, x($pop71)
+ i32.ne $push43=, $0, $pop42
+ br_if 0, $pop43 # 0: down to label34
# BB#9: # %if.end24
- i32.const $push40=, 10
- call f11@FUNCTION, $pop40
+ i32.const $push44=, 10
+ i32.const $push74=, 0
+ call f11@FUNCTION, $pop44, $pop74
block
- i32.const $push66=, 0
- i32.load $push41=, bar_arg($pop66)
- i32.const $push65=, 10
- i32.ne $push42=, $pop41, $pop65
- br_if 0, $pop42 # 0: down to label35
+ i32.const $push73=, 0
+ i32.load $push45=, bar_arg($pop73)
+ i32.const $push72=, 10
+ i32.ne $push46=, $pop45, $pop72
+ br_if 0, $pop46 # 0: down to label35
# BB#10: # %if.end27
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 24
- i32.sub $40=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $40=, 0($34), $40
- i32.const $push43=, 2030
- i32.store $discard=, 0($40), $pop43
- i32.const $push44=, 16
- i32.add $0=, $40, $pop44
- i64.const $push45=, 4612389705869164544
- i64.store $discard=, 0($0), $pop45
- i32.const $push46=, 8
- i32.add $0=, $40, $pop46
- i64.const $push47=, 0
- i64.store $discard=, 0($0), $pop47
- i32.const $push48=, 11
- call f12@FUNCTION, $pop48
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 24
- i32.add $40=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $40=, 0($36), $40
+ i32.const $push47=, 16
+ i32.add $push48=, $16, $pop47
+ i64.const $push49=, 4612389705869164544
+ i64.store $discard=, 0($pop48):p2align=4, $pop49
+ i32.const $push50=, 8
+ i32.or $push51=, $16, $pop50
+ i64.const $push52=, 0
+ i64.store $discard=, 0($pop51), $pop52
+ i32.const $push53=, 2030
+ i32.store $discard=, 0($16):p2align=4, $pop53
+ i32.const $push54=, 11
+ call f12@FUNCTION, $pop54, $16
block
- i32.const $push67=, 0
- i32.load $push49=, foo_arg($pop67)
- i32.const $push50=, 2042
- i32.ne $push51=, $pop49, $pop50
- br_if 0, $pop51 # 0: down to label36
+ i32.const $push75=, 0
+ i32.load $push55=, foo_arg($pop75)
+ i32.const $push56=, 2042
+ i32.ne $push57=, $pop55, $pop56
+ br_if 0, $pop57 # 0: down to label36
# BB#11: # %if.end30
- i32.const $push68=, 0
- i32.const $39=, 32
- i32.add $40=, $40, $39
- i32.const $39=, __stack_pointer
- i32.store $40=, 0($39), $40
- return $pop68
+ i32.const $push76=, 0
+ i32.const $3=, 176
+ i32.add $16=, $16, $3
+ i32.const $3=, __stack_pointer
+ i32.store $16=, 0($3), $16
+ return $pop76
.LBB13_12: # %if.then29
end_block # label36:
call abort@FUNCTION
diff --git a/test/torture-s/stdarg-4.c.s b/test/torture-s/stdarg-4.c.s
index 85e7b7827..ba6d722da 100644
--- a/test/torture-s/stdarg-4.c.s
+++ b/test/torture-s/stdarg-4.c.s
@@ -63,54 +63,53 @@ f1i: # @f1i
.globl f1
.type f1,@function
f1: # @f1
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 16
i32.sub $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
- i32.store $push0=, 8($7), $8
+ i32.store $push0=, 8($7), $1
i32.store $push1=, 12($7), $pop0
i32.const $push2=, 7
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -8
i32.and $push5=, $pop3, $pop4
- tee_local $push29=, $3=, $pop5
+ tee_local $push29=, $1=, $pop5
i32.const $push6=, 8
i32.add $push7=, $pop29, $pop6
i32.store $discard=, 12($7), $pop7
- f64.load $push8=, 0($3)
- i32.trunc_s/f64 $1=, $pop8
+ f64.load $push8=, 0($1)
+ i32.trunc_s/f64 $2=, $pop8
i32.const $push9=, 11
- i32.add $push10=, $3, $pop9
+ i32.add $push10=, $1, $pop9
i32.const $push11=, -4
i32.and $push12=, $pop10, $pop11
- tee_local $push28=, $3=, $pop12
+ tee_local $push28=, $1=, $pop12
i32.const $push13=, 4
i32.add $push14=, $pop28, $pop13
i32.store $discard=, 12($7), $pop14
- i32.load $2=, 0($3)
+ i32.load $3=, 0($1)
i32.const $push27=, 11
- i32.add $push16=, $3, $pop27
+ i32.add $push16=, $1, $pop27
i32.const $push26=, -8
i32.and $push17=, $pop16, $pop26
- tee_local $push25=, $3=, $pop17
+ tee_local $push25=, $1=, $pop17
i32.const $push24=, 8
i32.add $push18=, $pop25, $pop24
i32.store $discard=, 12($7), $pop18
i32.const $push23=, 0
- f64.load $push19=, 0($3)
- i32.add $push15=, $2, $1
+ f64.load $push19=, 0($1)
+ i32.add $push15=, $3, $2
f64.convert_s/i32 $push20=, $pop15
f64.add $push21=, $pop19, $pop20
i32.trunc_s/f64 $push22=, $pop21
i32.store $discard=, x($pop23), $pop22
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
return
@@ -215,88 +214,87 @@ f2i: # @f2i
.globl f2
.type f2,@function
f2: # @f2
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $5=, __stack_pointer
i32.load $5=, 0($5)
i32.const $6=, 16
i32.sub $8=, $5, $6
- copy_local $9=, $8
i32.const $6=, __stack_pointer
i32.store $8=, 0($6), $8
- i32.store $push0=, 4($8), $9
+ i32.store $push0=, 4($8), $1
i32.store $push1=, 8($8), $pop0
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
i32.and $push5=, $pop3, $pop4
- tee_local $push56=, $4=, $pop5
+ tee_local $push56=, $1=, $pop5
i32.const $push6=, 4
i32.add $push7=, $pop56, $pop6
i32.store $discard=, 8($8), $pop7
- i32.load $1=, 0($4)
+ i32.load $2=, 0($1)
i32.const $push8=, 7
- i32.add $push9=, $4, $pop8
+ i32.add $push9=, $1, $pop8
i32.const $push55=, -4
i32.and $push10=, $pop9, $pop55
- tee_local $push54=, $4=, $pop10
+ tee_local $push54=, $1=, $pop10
i32.const $push53=, 4
i32.add $push11=, $pop54, $pop53
i32.store $discard=, 8($8), $pop11
- i32.load $2=, 0($4)
+ i32.load $3=, 0($1)
i32.const $push13=, 11
- i32.add $push14=, $4, $pop13
+ i32.add $push14=, $1, $pop13
i32.const $push15=, -8
i32.and $push16=, $pop14, $pop15
- tee_local $push52=, $4=, $pop16
+ tee_local $push52=, $1=, $pop16
i32.const $push17=, 8
i32.add $push18=, $pop52, $pop17
- i32.store $3=, 8($8), $pop18
+ i32.store $4=, 8($8), $pop18
i32.const $push23=, 0
- f64.load $push19=, 0($4)
- i32.add $push12=, $2, $1
+ f64.load $push19=, 0($1)
+ i32.add $push12=, $3, $2
f64.convert_s/i32 $push20=, $pop12
f64.add $push21=, $pop19, $pop20
i32.trunc_s/f64 $push22=, $pop21
i32.store $discard=, y($pop23), $pop22
- i32.store $discard=, 12($8), $3
+ i32.store $discard=, 12($8), $4
i32.const $push24=, 15
- i32.add $push25=, $4, $pop24
+ i32.add $push25=, $1, $pop24
i32.const $push51=, -8
i32.and $push26=, $pop25, $pop51
- tee_local $push50=, $4=, $pop26
+ tee_local $push50=, $1=, $pop26
i32.const $push49=, 8
i32.add $push27=, $pop50, $pop49
i32.store $discard=, 12($8), $pop27
- f64.load $push28=, 0($4)
- i32.trunc_s/f64 $1=, $pop28
+ f64.load $push28=, 0($1)
+ i32.trunc_s/f64 $2=, $pop28
i32.const $push48=, 11
- i32.add $push29=, $4, $pop48
+ i32.add $push29=, $1, $pop48
i32.const $push47=, -4
i32.and $push30=, $pop29, $pop47
- tee_local $push46=, $4=, $pop30
+ tee_local $push46=, $1=, $pop30
i32.const $push45=, 4
i32.add $push31=, $pop46, $pop45
i32.store $discard=, 12($8), $pop31
- i32.load $2=, 0($4)
+ i32.load $3=, 0($1)
i32.const $push44=, 11
- i32.add $push33=, $4, $pop44
+ i32.add $push33=, $1, $pop44
i32.const $push43=, -8
i32.and $push34=, $pop33, $pop43
- tee_local $push42=, $4=, $pop34
+ tee_local $push42=, $1=, $pop34
i32.const $push41=, 8
i32.add $push35=, $pop42, $pop41
i32.store $discard=, 12($8), $pop35
i32.const $push40=, 0
- f64.load $push36=, 0($4)
- i32.add $push32=, $2, $1
+ f64.load $push36=, 0($1)
+ i32.add $push32=, $3, $2
f64.convert_s/i32 $push37=, $pop32
f64.add $push38=, $pop36, $pop37
i32.trunc_s/f64 $push39=, $pop38
i32.store $discard=, x($pop40), $pop39
i32.const $7=, 16
- i32.add $8=, $9, $7
+ i32.add $8=, $8, $7
i32.const $7=, __stack_pointer
i32.store $8=, 0($7), $8
return
@@ -326,24 +324,23 @@ f3h: # @f3h
.globl f3
.type f3,@function
f3: # @f3
- .param i32
+ .param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 16
i32.sub $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
- i32.store $discard=, 12($7), $8
+ i32.store $discard=, 12($7), $1
block
i32.const $push0=, 4
i32.gt_u $push1=, $0, $pop0
br_if 0, $pop1 # 0: down to label0
# BB#1: # %entry
- i32.const $3=, 0
+ i32.const $1=, 0
block
block
block
@@ -367,7 +364,7 @@ f3: # @f3
i32.store $discard=, 12($7), $pop60
i32.load $push61=, 0($0)
i32.const $push62=, 1
- i32.add $3=, $pop61, $pop62
+ i32.add $1=, $pop61, $pop62
br 3 # 3: down to label1
.LBB5_3: # %sw.bb4
end_block # label4:
@@ -380,7 +377,7 @@ f3: # @f3
i32.const $push45=, 4
i32.add $push46=, $pop67, $pop45
i32.store $discard=, 12($7), $pop46
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push47=, 7
i32.add $push48=, $0, $pop47
i32.const $push66=, -4
@@ -390,9 +387,9 @@ f3: # @f3
i32.add $push50=, $pop65, $pop64
i32.store $discard=, 12($7), $pop50
i32.load $push51=, 0($0)
- i32.add $push52=, $3, $pop51
+ i32.add $push52=, $1, $pop51
i32.const $push53=, 2
- i32.add $3=, $pop52, $pop53
+ i32.add $1=, $pop52, $pop53
br 2 # 2: down to label1
.LBB5_4: # %sw.bb6
end_block # label3:
@@ -405,7 +402,7 @@ f3: # @f3
i32.const $push28=, 4
i32.add $push29=, $pop76, $pop28
i32.store $discard=, 12($7), $pop29
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push30=, 7
i32.add $push31=, $0, $pop30
i32.const $push75=, -4
@@ -414,7 +411,7 @@ f3: # @f3
i32.const $push73=, 4
i32.add $push33=, $pop74, $pop73
i32.store $discard=, 12($7), $pop33
- i32.load $1=, 0($0)
+ i32.load $2=, 0($0)
i32.const $push72=, 7
i32.add $push34=, $0, $pop72
i32.const $push71=, -4
@@ -423,11 +420,11 @@ f3: # @f3
i32.const $push69=, 4
i32.add $push36=, $pop70, $pop69
i32.store $discard=, 12($7), $pop36
- i32.add $push38=, $3, $1
+ i32.add $push38=, $1, $2
i32.load $push37=, 0($0)
i32.add $push39=, $pop38, $pop37
i32.const $push68=, 3
- i32.add $3=, $pop39, $pop68
+ i32.add $1=, $pop39, $pop68
br 1 # 1: down to label1
.LBB5_5: # %sw.bb8
end_block # label2:
@@ -440,7 +437,7 @@ f3: # @f3
i32.const $push7=, 4
i32.add $push8=, $pop89, $pop7
i32.store $discard=, 12($7), $pop8
- i32.load $3=, 0($0)
+ i32.load $1=, 0($0)
i32.const $push9=, 7
i32.add $push10=, $0, $pop9
i32.const $push88=, -4
@@ -449,7 +446,7 @@ f3: # @f3
i32.const $push86=, 4
i32.add $push12=, $pop87, $pop86
i32.store $discard=, 12($7), $pop12
- i32.load $1=, 0($0)
+ i32.load $2=, 0($0)
i32.const $push85=, 7
i32.add $push13=, $0, $pop85
i32.const $push84=, -4
@@ -458,7 +455,7 @@ f3: # @f3
i32.const $push82=, 4
i32.add $push15=, $pop83, $pop82
i32.store $discard=, 12($7), $pop15
- i32.load $2=, 0($0)
+ i32.load $3=, 0($0)
i32.const $push81=, 7
i32.add $push16=, $0, $pop81
i32.const $push80=, -4
@@ -467,19 +464,19 @@ f3: # @f3
i32.const $push78=, 4
i32.add $push18=, $pop79, $pop78
i32.store $discard=, 12($7), $pop18
- i32.add $push20=, $3, $1
- i32.add $push21=, $2, $pop20
+ i32.add $push20=, $1, $2
+ i32.add $push21=, $3, $pop20
i32.load $push19=, 0($0)
i32.add $push22=, $pop21, $pop19
i32.const $push77=, 4
- i32.add $3=, $pop22, $pop77
+ i32.add $1=, $pop22, $pop77
.LBB5_6: # %sw.epilog
end_block # label1:
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
- return $3
+ return $1
.LBB5_7: # %sw.default
end_block # label0:
call abort@FUNCTION
@@ -493,17 +490,16 @@ f3: # @f3
.globl f4
.type f4,@function
f4: # @f4
- .param i32
- .local i32, i32, f64, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, f64, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 16
i32.sub $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
- i32.store $discard=, 8($7), $8
+ i32.store $discard=, 8($7), $1
block
block
i32.const $push0=, 5
@@ -598,7 +594,7 @@ f4: # @f4
i32.trunc_s/f64 $push50=, $pop49
i32.store $discard=, x($pop56), $pop50
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
return
@@ -612,276 +608,217 @@ f4: # @f4
.type main,@function
main: # @main
.result i32
- .local i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $34=, __stack_pointer
- i32.load $34=, 0($34)
- i32.const $35=, 48
- i32.sub $37=, $34, $35
- i32.const $35=, __stack_pointer
- i32.store $37=, 0($35), $37
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
- i32.const $3=, 24
- i32.sub $37=, $2, $3
+ i32.const $3=, 224
+ i32.sub $23=, $2, $3
i32.const $3=, __stack_pointer
- i32.store $37=, 0($3), $37
- i64.const $push0=, 4625196817309499392
- i64.store $discard=, 0($37), $pop0
- i32.const $push67=, 16
- i32.add $0=, $37, $pop67
+ i32.store $23=, 0($3), $23
+ i32.const $push87=, 16
+ i32.const $5=, 192
+ i32.add $5=, $23, $5
+ i32.add $push0=, $5, $pop87
i64.const $push1=, 4629700416936869888
- i64.store $discard=, 0($0), $pop1
- i32.const $push66=, 8
- i32.add $0=, $37, $pop66
- i32.const $push2=, 128
- i32.store $discard=, 0($0), $pop2
- call f1@FUNCTION, $0
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 24
- i32.add $37=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $37=, 0($5), $37
+ i64.store $discard=, 0($pop0):p2align=4, $pop1
+ i32.const $push86=, 8
+ i32.const $6=, 192
+ i32.add $6=, $23, $6
+ i32.or $push2=, $6, $pop86
+ i32.const $push3=, 128
+ i32.store $discard=, 0($pop2):p2align=3, $pop3
+ i64.const $push4=, 4625196817309499392
+ i64.store $discard=, 192($23):p2align=4, $pop4
+ i32.const $7=, 192
+ i32.add $7=, $23, $7
+ call f1@FUNCTION, $0, $7
block
- i32.const $push65=, 0
- i32.load $push3=, x($pop65)
- i32.const $push4=, 176
- i32.ne $push5=, $pop3, $pop4
- br_if 0, $pop5 # 0: down to label9
+ i32.const $push85=, 0
+ i32.load $push5=, x($pop85)
+ i32.const $push6=, 176
+ i32.ne $push7=, $pop5, $pop6
+ br_if 0, $pop7 # 0: down to label9
# BB#1: # %if.end
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 40
- i32.sub $37=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $37=, 0($7), $37
- i64.const $push7=, 30064771077
- i64.store $discard=, 0($37):p2align=2, $pop7
- i32.const $push8=, 32
- i32.add $0=, $37, $pop8
- i64.const $push9=, 4634204016564240384
- i64.store $discard=, 0($0), $pop9
- i32.const $push10=, 24
- i32.add $0=, $37, $pop10
- i32.const $push11=, 17
- i32.store $discard=, 0($0), $pop11
- i32.const $push70=, 16
- i32.add $0=, $37, $pop70
- i64.const $push12=, 4626041242239631360
- i64.store $discard=, 0($0), $pop12
- i32.const $push69=, 8
- i32.add $0=, $37, $pop69
- i64.const $push13=, 4625759767262920704
- i64.store $discard=, 0($0), $pop13
- call f2@FUNCTION, $0
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 40
- i32.add $37=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $37=, 0($9), $37
+ i32.const $push9=, 32
+ i32.const $8=, 144
+ i32.add $8=, $23, $8
+ i32.add $push10=, $8, $pop9
+ i64.const $push11=, 4634204016564240384
+ i64.store $discard=, 0($pop10):p2align=4, $pop11
+ i32.const $push12=, 24
+ i32.const $9=, 144
+ i32.add $9=, $23, $9
+ i32.add $push13=, $9, $pop12
+ i32.const $push14=, 17
+ i32.store $discard=, 0($pop13):p2align=3, $pop14
+ i32.const $push90=, 16
+ i32.const $10=, 144
+ i32.add $10=, $23, $10
+ i32.add $push15=, $10, $pop90
+ i64.const $push16=, 4626041242239631360
+ i64.store $discard=, 0($pop15):p2align=4, $pop16
+ i32.const $push89=, 8
+ i32.const $11=, 144
+ i32.add $11=, $23, $11
+ i32.or $push17=, $11, $pop89
+ i64.const $push18=, 4625759767262920704
+ i64.store $discard=, 0($pop17), $pop18
+ i64.const $push19=, 30064771077
+ i64.store $discard=, 144($23):p2align=4, $pop19
+ i32.const $12=, 144
+ i32.add $12=, $23, $12
+ call f2@FUNCTION, $0, $12
block
- i32.const $push68=, 0
- i32.load $push14=, x($pop68)
- i32.const $push15=, 100
- i32.ne $push16=, $pop14, $pop15
- br_if 0, $pop16 # 0: down to label10
+ i32.const $push88=, 0
+ i32.load $push20=, x($pop88)
+ i32.const $push21=, 100
+ i32.ne $push22=, $pop20, $pop21
+ br_if 0, $pop22 # 0: down to label10
# BB#2: # %if.end
- i32.const $push71=, 0
- i32.load $push6=, y($pop71)
- i32.const $push17=, 30
- i32.ne $push18=, $pop6, $pop17
- br_if 0, $pop18 # 0: down to label10
+ i32.const $push91=, 0
+ i32.load $push8=, y($pop91)
+ i32.const $push23=, 30
+ i32.ne $push24=, $pop8, $pop23
+ br_if 0, $pop24 # 0: down to label10
# BB#3: # %if.end4
- i32.const $push19=, 0
- i32.call $0=, f3@FUNCTION, $pop19
block
- br_if 0, $0 # 0: down to label11
+ i32.const $push25=, 0
+ i32.const $push92=, 0
+ i32.call $push26=, f3@FUNCTION, $pop25, $pop92
+ br_if 0, $pop26 # 0: down to label11
# BB#4: # %if.end7
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 4
- i32.sub $37=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $37=, 0($11), $37
- i32.const $push20=, 18
- i32.store $discard=, 0($37), $pop20
- i32.const $push21=, 1
- i32.call $0=, f3@FUNCTION, $pop21
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 4
- i32.add $37=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $37=, 0($13), $37
+ i32.const $push27=, 18
+ i32.store $discard=, 128($23):p2align=4, $pop27
+ i32.const $push28=, 1
+ i32.const $13=, 128
+ i32.add $13=, $23, $13
block
- i32.const $push22=, 19
- i32.ne $push23=, $0, $pop22
- br_if 0, $pop23 # 0: down to label12
+ i32.call $push29=, f3@FUNCTION, $pop28, $13
+ i32.const $push30=, 19
+ i32.ne $push31=, $pop29, $pop30
+ br_if 0, $pop31 # 0: down to label12
# BB#5: # %if.end11
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 8
- i32.sub $37=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $37=, 0($15), $37
- i64.const $push24=, 429496729618
- i64.store $1=, 0($37):p2align=2, $pop24
- i32.const $push25=, 2
- i32.call $0=, f3@FUNCTION, $pop25
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 8
- i32.add $37=, $16, $17
- i32.const $17=, __stack_pointer
- i32.store $37=, 0($17), $37
+ i64.const $push32=, 429496729618
+ i64.store $1=, 112($23):p2align=4, $pop32
+ i32.const $push33=, 2
+ i32.const $14=, 112
+ i32.add $14=, $23, $14
block
- i32.const $push26=, 120
- i32.ne $push27=, $0, $pop26
- br_if 0, $pop27 # 0: down to label13
+ i32.call $push34=, f3@FUNCTION, $pop33, $14
+ i32.const $push35=, 120
+ i32.ne $push36=, $pop34, $pop35
+ br_if 0, $pop36 # 0: down to label13
# BB#6: # %if.end15
- i32.const $18=, __stack_pointer
- i32.load $18=, 0($18)
- i32.const $19=, 12
- i32.sub $37=, $18, $19
- i32.const $19=, __stack_pointer
- i32.store $37=, 0($19), $37
- i64.store $discard=, 0($37):p2align=2, $1
- i32.const $push72=, 8
- i32.add $0=, $37, $pop72
- i32.const $push28=, 300
- i32.store $discard=, 0($0), $pop28
- i32.const $push29=, 3
- i32.call $0=, f3@FUNCTION, $pop29
- i32.const $20=, __stack_pointer
- i32.load $20=, 0($20)
- i32.const $21=, 12
- i32.add $37=, $20, $21
- i32.const $21=, __stack_pointer
- i32.store $37=, 0($21), $37
+ i32.const $push93=, 8
+ i32.const $15=, 96
+ i32.add $15=, $23, $15
+ i32.or $push37=, $15, $pop93
+ i32.const $push38=, 300
+ i32.store $discard=, 0($pop37):p2align=3, $pop38
+ i64.store $discard=, 96($23):p2align=4, $1
+ i32.const $push39=, 3
+ i32.const $16=, 96
+ i32.add $16=, $23, $16
block
- i32.const $push30=, 421
- i32.ne $push31=, $0, $pop30
- br_if 0, $pop31 # 0: down to label14
+ i32.call $push40=, f3@FUNCTION, $pop39, $16
+ i32.const $push41=, 421
+ i32.ne $push42=, $pop40, $pop41
+ br_if 0, $pop42 # 0: down to label14
# BB#7: # %if.end19
- i32.const $22=, __stack_pointer
- i32.load $22=, 0($22)
- i32.const $23=, 16
- i32.sub $37=, $22, $23
- i32.const $23=, __stack_pointer
- i32.store $37=, 0($23), $37
- i64.const $push32=, 304942678034
- i64.store $discard=, 0($37):p2align=2, $pop32
- i32.const $push74=, 8
- i32.add $0=, $37, $pop74
- i64.const $push33=, 369367187520
- i64.store $discard=, 0($0):p2align=2, $pop33
- i32.const $push73=, 4
- i32.call $0=, f3@FUNCTION, $pop73
- i32.const $24=, __stack_pointer
- i32.load $24=, 0($24)
- i32.const $25=, 16
- i32.add $37=, $24, $25
- i32.const $25=, __stack_pointer
- i32.store $37=, 0($25), $37
+ i32.const $push95=, 8
+ i32.const $17=, 80
+ i32.add $17=, $23, $17
+ i32.or $push43=, $17, $pop95
+ i64.const $push44=, 369367187520
+ i64.store $discard=, 0($pop43), $pop44
+ i64.const $push45=, 304942678034
+ i64.store $discard=, 80($23):p2align=4, $pop45
+ i32.const $push94=, 4
+ i32.const $18=, 80
+ i32.add $18=, $23, $18
block
- i32.const $push34=, 243
- i32.ne $push35=, $0, $pop34
- br_if 0, $pop35 # 0: down to label15
+ i32.call $push46=, f3@FUNCTION, $pop94, $18
+ i32.const $push47=, 243
+ i32.ne $push48=, $pop46, $pop47
+ br_if 0, $pop48 # 0: down to label15
# BB#8: # %if.end23
- i32.const $26=, __stack_pointer
- i32.load $26=, 0($26)
- i32.const $27=, 32
- i32.sub $37=, $26, $27
- i32.const $27=, __stack_pointer
- i32.store $37=, 0($27), $37
- i64.const $push37=, 4618441417868443648
- i64.store $discard=, 0($37), $pop37
- i32.const $push38=, 24
- i32.add $0=, $37, $pop38
- i64.const $push39=, 4625759767262920704
- i64.store $discard=, 0($0), $pop39
- i32.const $push40=, 16
- i32.add $0=, $37, $pop40
- i32.const $push77=, 16
- i32.store $discard=, 0($0), $pop77
- i32.const $push41=, 8
- i32.add $0=, $37, $pop41
- i64.const $push42=, 4621256167635550208
- i64.store $discard=, 0($0), $pop42
- i32.const $push76=, 4
- call f4@FUNCTION, $pop76
- i32.const $28=, __stack_pointer
- i32.load $28=, 0($28)
- i32.const $29=, 32
- i32.add $37=, $28, $29
- i32.const $29=, __stack_pointer
- i32.store $37=, 0($29), $37
+ i32.const $push50=, 24
+ i32.const $19=, 48
+ i32.add $19=, $23, $19
+ i32.add $push51=, $19, $pop50
+ i64.const $push52=, 4625759767262920704
+ i64.store $discard=, 0($pop51), $pop52
+ i32.const $push53=, 16
+ i32.const $20=, 48
+ i32.add $20=, $23, $20
+ i32.add $push54=, $20, $pop53
+ i32.const $push98=, 16
+ i32.store $discard=, 0($pop54):p2align=4, $pop98
+ i32.const $push55=, 8
+ i32.const $21=, 48
+ i32.add $21=, $23, $21
+ i32.or $push56=, $21, $pop55
+ i64.const $push57=, 4621256167635550208
+ i64.store $discard=, 0($pop56), $pop57
+ i64.const $push58=, 4618441417868443648
+ i64.store $discard=, 48($23):p2align=4, $pop58
+ i32.const $push97=, 4
+ i32.const $22=, 48
+ i32.add $22=, $23, $22
+ call f4@FUNCTION, $pop97, $22
block
- i32.const $push75=, 0
- i32.load $push43=, x($pop75)
- i32.const $push44=, 43
- i32.ne $push45=, $pop43, $pop44
- br_if 0, $pop45 # 0: down to label16
+ i32.const $push96=, 0
+ i32.load $push59=, x($pop96)
+ i32.const $push60=, 43
+ i32.ne $push61=, $pop59, $pop60
+ br_if 0, $pop61 # 0: down to label16
# BB#9: # %if.end23
- i32.const $push78=, 0
- i32.load $push36=, y($pop78)
- i32.const $push46=, 6
- i32.ne $push47=, $pop36, $pop46
- br_if 0, $pop47 # 0: down to label16
+ i32.const $push99=, 0
+ i32.load $push49=, y($pop99)
+ i32.const $push62=, 6
+ i32.ne $push63=, $pop49, $pop62
+ br_if 0, $pop63 # 0: down to label16
# BB#10: # %if.end28
- i32.const $30=, __stack_pointer
- i32.load $30=, 0($30)
- i32.const $31=, 40
- i32.sub $37=, $30, $31
- i32.const $31=, __stack_pointer
- i32.store $37=, 0($31), $37
- i64.const $push49=, 4619567317775286272
- i64.store $discard=, 0($37), $pop49
- i32.const $push50=, 32
- i32.add $0=, $37, $pop50
- i64.const $push51=, 4638566878703255552
- i64.store $discard=, 0($0), $pop51
- i32.const $push52=, 24
- i32.add $0=, $37, $pop52
- i32.const $push53=, 17
- i32.store $discard=, 0($0), $pop53
- i32.const $push54=, 16
- i32.add $0=, $37, $pop54
- i64.const $push55=, 4607182418800017408
- i64.store $discard=, 0($0), $pop55
- i32.const $push56=, 8
- i32.add $0=, $37, $pop56
- i64.const $push57=, 4626604192193052672
- i64.store $discard=, 0($0), $pop57
- i32.const $push58=, 5
- call f4@FUNCTION, $pop58
- i32.const $32=, __stack_pointer
- i32.load $32=, 0($32)
- i32.const $33=, 40
- i32.add $37=, $32, $33
- i32.const $33=, __stack_pointer
- i32.store $37=, 0($33), $37
+ i32.const $push65=, 32
+ i32.add $push66=, $23, $pop65
+ i64.const $push67=, 4638566878703255552
+ i64.store $discard=, 0($pop66):p2align=4, $pop67
+ i32.const $push68=, 24
+ i32.add $push69=, $23, $pop68
+ i32.const $push70=, 17
+ i32.store $discard=, 0($pop69):p2align=3, $pop70
+ i32.const $push71=, 16
+ i32.add $push72=, $23, $pop71
+ i64.const $push73=, 4607182418800017408
+ i64.store $discard=, 0($pop72):p2align=4, $pop73
+ i32.const $push74=, 8
+ i32.or $push75=, $23, $pop74
+ i64.const $push76=, 4626604192193052672
+ i64.store $discard=, 0($pop75), $pop76
+ i64.const $push77=, 4619567317775286272
+ i64.store $discard=, 0($23):p2align=4, $pop77
+ i32.const $push78=, 5
+ call f4@FUNCTION, $pop78, $23
block
- i32.const $push79=, 0
- i32.load $push59=, x($pop79)
- i32.const $push60=, 144
- i32.ne $push61=, $pop59, $pop60
- br_if 0, $pop61 # 0: down to label17
+ i32.const $push100=, 0
+ i32.load $push79=, x($pop100)
+ i32.const $push80=, 144
+ i32.ne $push81=, $pop79, $pop80
+ br_if 0, $pop81 # 0: down to label17
# BB#11: # %if.end28
- i32.const $push80=, 0
- i32.load $push48=, y($pop80)
- i32.const $push62=, 28
- i32.ne $push63=, $pop48, $pop62
- br_if 0, $pop63 # 0: down to label17
+ i32.const $push101=, 0
+ i32.load $push64=, y($pop101)
+ i32.const $push82=, 28
+ i32.ne $push83=, $pop64, $pop82
+ br_if 0, $pop83 # 0: down to label17
# BB#12: # %if.end33
- i32.const $push64=, 0
- i32.const $36=, 48
- i32.add $37=, $37, $36
- i32.const $36=, __stack_pointer
- i32.store $37=, 0($36), $37
- return $pop64
+ i32.const $push84=, 0
+ i32.const $4=, 224
+ i32.add $23=, $23, $4
+ i32.const $4=, __stack_pointer
+ i32.store $23=, 0($4), $23
+ return $pop84
.LBB7_13: # %if.then32
end_block # label17:
call abort@FUNCTION
diff --git a/test/torture-s/struct-ret-1.c.s b/test/torture-s/struct-ret-1.c.s
index 2ac98cb53..c883c5250 100644
--- a/test/torture-s/struct-ret-1.c.s
+++ b/test/torture-s/struct-ret-1.c.s
@@ -6,79 +6,67 @@
.type f,@function
f: # @f
.param i32, i32, i32, f64, i32
- .local i64, i32, f64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local f64, i64, i32, f64, i64, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 64
- i32.sub $17=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $17=, 0($15), $17
- i32.const $push3=, 16
- i32.add $push4=, $1, $pop3
- i32.load $6=, 0($pop4):p2align=3
- i32.const $push21=, 16
- i32.add $push6=, $4, $pop21
- i32.load $9=, 0($pop6):p2align=3
- i64.load $5=, 8($1)
- i64.load $8=, 8($4)
- f64.load $7=, 0($4)
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
- i32.const $11=, 56
- i32.sub $17=, $10, $11
+ i32.const $11=, 64
+ i32.sub $13=, $10, $11
i32.const $11=, __stack_pointer
- i32.store $17=, 0($11), $17
- f64.load $push0=, 0($1)
- f64.store $discard=, 0($17), $pop0
+ i32.store $13=, 0($11), $13
+ i32.const $push2=, 16
+ i32.add $push3=, $1, $pop2
+ i32.load $7=, 0($pop3):p2align=3
+ i64.load $6=, 8($1)
+ i64.load $9=, 8($4)
+ f64.load $5=, 0($1)
+ f64.load $8=, 0($4)
i32.const $push7=, 48
- i32.add $4=, $17, $pop7
- i32.store $discard=, 0($4), $9
- i32.const $push8=, 44
- i32.add $4=, $17, $pop8
- i64.const $push1=, 32
- i64.shr_u $push5=, $8, $pop1
- i64.store32 $discard=, 0($4), $pop5
- i32.const $push9=, 40
- i32.add $4=, $17, $pop9
- i64.store32 $discard=, 0($4), $8
- i32.const $push10=, 32
- i32.add $4=, $17, $pop10
- f64.store $discard=, 0($4), $7
- i32.const $push11=, 24
- i32.add $4=, $17, $pop11
- f64.store $discard=, 0($4), $3
- i32.const $push12=, 20
- i32.add $4=, $17, $pop12
- i32.store $4=, 0($4), $2
- i32.const $push20=, 16
- i32.add $1=, $17, $pop20
- i32.store $discard=, 0($1), $6
- i32.const $push13=, 12
- i32.add $1=, $17, $pop13
- i64.const $push19=, 32
- i64.shr_u $push2=, $5, $pop19
- i64.store32 $discard=, 0($1), $pop2
- i32.const $push14=, 8
- i32.add $1=, $17, $pop14
- i64.store32 $discard=, 0($1), $5
- i32.const $push16=, out
- i32.const $push15=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $pop16, $pop15
+ i32.add $push8=, $13, $pop7
+ i32.const $push31=, 16
+ i32.add $push5=, $4, $pop31
+ i32.load $push6=, 0($pop5):p2align=3
+ i32.store $discard=, 0($pop8):p2align=4, $pop6
+ i32.const $push9=, 44
+ i32.add $push10=, $13, $pop9
+ i64.const $push0=, 32
+ i64.shr_u $push4=, $9, $pop0
+ i64.store32 $discard=, 0($pop10), $pop4
+ i32.const $push11=, 40
+ i32.add $push12=, $13, $pop11
+ i64.store32 $discard=, 0($pop12):p2align=3, $9
+ i32.const $push13=, 32
+ i32.add $push14=, $13, $pop13
+ f64.store $discard=, 0($pop14):p2align=4, $8
+ i32.const $push15=, 24
+ i32.add $push16=, $13, $pop15
+ f64.store $discard=, 0($pop16), $3
+ i32.const $push17=, 20
+ i32.add $push18=, $13, $pop17
+ i32.store $4=, 0($pop18), $2
+ i32.const $push30=, 16
+ i32.add $push19=, $13, $pop30
+ i32.store $discard=, 0($pop19):p2align=4, $7
+ i32.const $push20=, 12
+ i32.or $push21=, $13, $pop20
+ i64.const $push29=, 32
+ i64.shr_u $push1=, $6, $pop29
+ i64.store32 $discard=, 0($pop21), $pop1
+ i32.const $push22=, 8
+ i32.or $push23=, $13, $pop22
+ i64.store32 $discard=, 0($pop23):p2align=3, $6
+ f64.store $discard=, 0($13):p2align=4, $5
+ i32.const $push25=, out
+ i32.const $push24=, .L.str
+ i32.call $discard=, sprintf@FUNCTION, $pop25, $pop24, $13
+ i32.const $push26=, f.xr
+ i32.const $push27=, 33
+ i32.call $push28=, memcpy@FUNCTION, $0, $pop26, $pop27
+ i32.store8 $discard=, 33($pop28), $4
+ i32.const $12=, 64
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 56
- i32.add $17=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $17=, 0($13), $17
- i32.const $push17=, f.xr
- i32.const $push18=, 33
- i32.call $1=, memcpy@FUNCTION, $0, $pop17, $pop18
- i32.store8 $discard=, 33($1), $4
- i32.const $16=, 64
- i32.add $17=, $17, $16
- i32.const $16=, __stack_pointer
- i32.store $17=, 0($16), $17
+ i32.store $13=, 0($12), $13
return
.endfunc
.Lfunc_end0:
@@ -90,144 +78,146 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local f64, f64, i64, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local f64, f64, i64, f64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 256
- i32.sub $24=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $24=, 0($13), $24
+ i32.const $7=, __stack_pointer
+ i32.load $7=, 0($7)
+ i32.const $8=, 256
+ i32.sub $26=, $7, $8
+ i32.const $8=, __stack_pointer
+ i32.store $26=, 0($8), $26
+ i32.const $push62=, 0
+ f64.load $0=, d3($pop62)
+ i32.const $push61=, 0
+ i64.load $2=, B2+8($pop61)
+ i32.const $push60=, 0
+ i64.load $4=, B1+8($pop60)
+ i32.const $push59=, 0
+ i32.load $5=, B1+16($pop59):p2align=3
+ i32.const $push58=, 0
+ i32.load8_s $6=, c2($pop58)
+ i32.const $push57=, 0
+ f64.load $1=, B2($pop57)
+ i32.const $push56=, 0
+ f64.load $3=, B1($pop56)
+ i32.const $push4=, 48
+ i32.const $9=, 48
+ i32.add $9=, $26, $9
+ i32.add $push5=, $9, $pop4
+ i32.const $push55=, 0
+ i32.load $push0=, B2+16($pop55):p2align=3
+ i32.store $discard=, 0($pop5):p2align=4, $pop0
+ i32.const $push6=, 40
+ i32.const $10=, 48
+ i32.add $10=, $26, $10
+ i32.add $push7=, $10, $pop6
+ i64.store32 $discard=, 0($pop7):p2align=3, $2
+ i32.const $push8=, 32
+ i32.const $11=, 48
+ i32.add $11=, $26, $11
+ i32.add $push9=, $11, $pop8
+ f64.store $discard=, 0($pop9):p2align=4, $1
+ i32.const $push10=, 24
+ i32.const $12=, 48
+ i32.add $12=, $26, $12
+ i32.add $push11=, $12, $pop10
+ f64.store $discard=, 0($pop11), $0
+ i32.const $push12=, 20
+ i32.const $13=, 48
+ i32.add $13=, $26, $13
+ i32.add $push13=, $13, $pop12
+ i32.store $discard=, 0($pop13), $6
+ i32.const $push14=, 16
+ i32.const $14=, 48
+ i32.add $14=, $26, $14
+ i32.add $push15=, $14, $pop14
+ i32.store $discard=, 0($pop15):p2align=4, $5
+ i32.const $push16=, 8
+ i32.const $15=, 48
+ i32.add $15=, $26, $15
+ i32.or $push17=, $15, $pop16
+ i64.store32 $discard=, 0($pop17):p2align=3, $4
+ i32.const $push18=, 44
+ i32.const $16=, 48
+ i32.add $16=, $26, $16
+ i32.add $push19=, $16, $pop18
+ i64.const $push1=, 32
+ i64.shr_u $push3=, $2, $pop1
+ i64.store32 $discard=, 0($pop19), $pop3
+ i32.const $push20=, 12
+ i32.const $17=, 48
+ i32.add $17=, $26, $17
+ i32.or $push21=, $17, $pop20
+ i64.const $push54=, 32
+ i64.shr_u $push2=, $4, $pop54
+ i64.store32 $discard=, 0($pop21), $pop2
+ f64.store $discard=, 48($26):p2align=4, $3
+ i32.const $push23=, out
+ i32.const $push22=, .L.str
+ i32.const $18=, 48
+ i32.add $18=, $26, $18
+ i32.call $discard=, sprintf@FUNCTION, $pop23, $pop22, $18
+ i32.const $push53=, out
+ i32.const $19=, 144
+ i32.add $19=, $26, $19
+ i32.call $discard=, strcpy@FUNCTION, $19, $pop53
i32.const $push52=, 0
f64.load $0=, d3($pop52)
i32.const $push51=, 0
- i64.load $2=, B2+8($pop51)
+ i32.load $5=, fp($pop51)
i32.const $push50=, 0
- i64.load $4=, B1+8($pop50)
- i32.const $push49=, 0
- i32.load $3=, B2+16($pop49):p2align=3
+ i32.load8_s $6=, c2($pop50)
+ i32.const $push49=, 20
+ i32.const $20=, 24
+ i32.add $20=, $26, $20
+ i32.add $push24=, $20, $pop49
i32.const $push48=, 0
- i32.load $5=, B1+16($pop48):p2align=3
- i32.const $push47=, 0
- i32.load8_s $6=, c2($pop47)
+ i32.load $push25=, B1+20($pop48)
+ i32.store $discard=, 0($pop24), $pop25
+ i32.const $push47=, 16
+ i32.const $21=, 24
+ i32.add $21=, $26, $21
+ i32.add $push26=, $21, $pop47
i32.const $push46=, 0
- f64.load $1=, B2($pop46)
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 56
- i32.sub $24=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $24=, 0($9), $24
- i32.const $push45=, 0
- f64.load $push0=, B1($pop45)
- f64.store $discard=, 0($24), $pop0
- i32.const $push4=, 48
- i32.add $7=, $24, $pop4
- i32.store $discard=, 0($7), $3
- i32.const $push5=, 44
- i32.add $3=, $24, $pop5
- i64.const $push1=, 32
- i64.shr_u $push3=, $2, $pop1
- i64.store32 $discard=, 0($3), $pop3
- i32.const $push6=, 40
- i32.add $3=, $24, $pop6
- i64.store32 $discard=, 0($3), $2
- i32.const $push7=, 32
- i32.add $3=, $24, $pop7
- f64.store $discard=, 0($3), $1
- i32.const $push8=, 24
- i32.add $3=, $24, $pop8
- f64.store $discard=, 0($3), $0
- i32.const $push9=, 20
- i32.add $3=, $24, $pop9
- i32.store $discard=, 0($3), $6
- i32.const $push10=, 16
- i32.add $3=, $24, $pop10
- i32.store $discard=, 0($3), $5
- i32.const $push11=, 12
- i32.add $3=, $24, $pop11
- i64.const $push44=, 32
- i64.shr_u $push2=, $4, $pop44
- i64.store32 $discard=, 0($3), $pop2
- i32.const $push12=, 8
- i32.add $3=, $24, $pop12
- i64.store32 $discard=, 0($3), $4
- i32.const $push14=, out
- i32.const $push13=, .L.str
- i32.call $discard=, sprintf@FUNCTION, $pop14, $pop13
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 56
- i32.add $24=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $24=, 0($11), $24
- i32.const $push43=, out
- i32.const $14=, 144
- i32.add $14=, $24, $14
- i32.call $discard=, strcpy@FUNCTION, $14, $pop43
- i32.const $push42=, 0
- f64.load $0=, d3($pop42)
+ i32.load $push27=, B1+16($pop46):p2align=3
+ i32.store $discard=, 0($pop26):p2align=3, $pop27
+ i32.const $push45=, 8
+ i32.const $22=, 24
+ i32.add $22=, $26, $22
+ i32.add $push28=, $22, $pop45
+ i32.const $push44=, 0
+ i64.load $push29=, B1+8($pop44)
+ i64.store $discard=, 0($pop28), $pop29
+ i32.const $push43=, 0
+ i64.load $push30=, B1($pop43)
+ i64.store $discard=, 24($26), $pop30
+ i32.const $push42=, 16
+ i32.add $push31=, $26, $pop42
i32.const $push41=, 0
- i32.load $3=, fp($pop41)
- i32.const $push40=, 0
- i32.load8_s $5=, c2($pop40)
- i32.const $push39=, 20
- i32.const $15=, 80
- i32.add $15=, $24, $15
- i32.add $push15=, $15, $pop39
+ i64.load $push32=, B2+16($pop41)
+ i64.store $discard=, 0($pop31), $pop32
+ i32.const $push40=, 8
+ i32.add $push33=, $26, $pop40
+ i32.const $push39=, 0
+ i64.load $push34=, B2+8($pop39)
+ i64.store $discard=, 0($pop33), $pop34
i32.const $push38=, 0
- i32.load $push16=, B1+20($pop38)
- i32.store $discard=, 0($pop15), $pop16
- i32.const $push37=, 16
- i32.const $16=, 80
- i32.add $16=, $24, $16
- i32.add $push17=, $16, $pop37
- i32.const $push36=, 0
- i32.load $push18=, B1+16($pop36):p2align=3
- i32.store $discard=, 0($pop17):p2align=3, $pop18
- i32.const $push35=, 8
- i32.const $17=, 80
- i32.add $17=, $24, $17
- i32.add $push19=, $17, $pop35
- i32.const $push34=, 0
- i64.load $push20=, B1+8($pop34)
- i64.store $discard=, 0($pop19), $pop20
- i32.const $push33=, 0
- i64.load $push21=, B1($pop33)
- i64.store $discard=, 80($24), $pop21
- i32.const $push32=, 16
- i32.const $18=, 56
- i32.add $18=, $24, $18
- i32.add $push22=, $18, $pop32
- i32.const $push31=, 0
- i64.load $push23=, B2+16($pop31)
- i64.store $discard=, 0($pop22), $pop23
- i32.const $push30=, 8
- i32.const $19=, 56
- i32.add $19=, $24, $19
- i32.add $push24=, $19, $pop30
- i32.const $push29=, 0
- i64.load $push25=, B2+8($pop29)
- i64.store $discard=, 0($pop24), $pop25
- i32.const $push28=, 0
- i64.load $push26=, B2($pop28)
- i64.store $discard=, 56($24), $pop26
- i32.const $20=, 104
- i32.add $20=, $24, $20
- i32.const $21=, 80
- i32.add $21=, $24, $21
- i32.const $22=, 56
- i32.add $22=, $24, $22
- call_indirect $3, $20, $21, $5, $0, $22
- i32.const $push27=, out
- i32.const $23=, 144
- i32.add $23=, $24, $23
- i32.call $3=, strcmp@FUNCTION, $23, $pop27
+ i64.load $push35=, B2($pop38)
+ i64.store $discard=, 0($26), $pop35
+ i32.const $23=, 104
+ i32.add $23=, $26, $23
+ i32.const $24=, 24
+ i32.add $24=, $26, $24
+ call_indirect $5, $23, $24, $6, $0, $26
+ i32.const $push37=, out
+ i32.const $25=, 144
+ i32.add $25=, $26, $25
block
- br_if 0, $3 # 0: down to label0
+ i32.call $push36=, strcmp@FUNCTION, $25, $pop37
+ br_if 0, $pop36 # 0: down to label0
# BB#1: # %if.end
- i32.const $push53=, 0
- call exit@FUNCTION, $pop53
+ i32.const $push63=, 0
+ call exit@FUNCTION, $pop63
unreachable
.LBB1_2: # %if.then
end_block # label0:
diff --git a/test/torture-s/va-arg-1.c.s b/test/torture-s/va-arg-1.c.s
index 4b6fcf293..3303b4812 100644
--- a/test/torture-s/va-arg-1.c.s
+++ b/test/torture-s/va-arg-1.c.s
@@ -5,18 +5,17 @@
.globl f
.type f,@function
f: # @f
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push25=, 3
i32.add $push1=, $pop0, $pop25
i32.const $push24=, -4
@@ -60,7 +59,7 @@ f: # @f
br_if 0, $pop21 # 0: down to label2
# BB#3: # %if.end7
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return $9
@@ -86,33 +85,21 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 12
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 47244640266
- i64.store $discard=, 0($7):p2align=2, $pop0
- i32.const $push1=, 8
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 8
+ i32.or $push1=, $3, $pop0
i32.const $push2=, 0
- i32.store $0=, 0($0), $pop2
- i32.call $discard=, f@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 12
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $0=, 0($pop1):p2align=3, $pop2
+ i64.const $push3=, 47244640266
+ i64.store $discard=, 0($3):p2align=4, $pop3
+ i32.call $discard=, f@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $3
call exit@FUNCTION, $0
unreachable
.endfunc
diff --git a/test/torture-s/va-arg-11.c.s b/test/torture-s/va-arg-11.c.s
index bf4cc4efa..a339d529f 100644
--- a/test/torture-s/va-arg-11.c.s
+++ b/test/torture-s/va-arg-11.c.s
@@ -6,41 +6,29 @@
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 32
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 32
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 20
- i32.sub $8=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
- i64.const $push0=, 12884901892
- i64.store $discard=, 0($8):p2align=2, $pop0
- i32.const $push1=, 16
- i32.add $0=, $8, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 16
+ i32.add $push1=, $3, $pop0
i32.const $push2=, 0
- i32.store $1=, 0($0), $pop2
+ i32.store $0=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 8
- i32.add $0=, $8, $pop3
- i64.const $push4=, 4294967298
- i64.store $discard=, 0($0):p2align=2, $pop4
- i32.call $0=, foo@FUNCTION, $0
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 20
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
+ i32.or $push4=, $3, $pop3
+ i64.const $push5=, 4294967298
+ i64.store $discard=, 0($pop4), $pop5
+ i64.const $push6=, 12884901892
+ i64.store $discard=, 0($3):p2align=4, $pop6
block
- br_if 0, $0 # 0: down to label0
+ i32.call $push7=, foo@FUNCTION, $0, $3
+ br_if 0, $pop7 # 0: down to label0
# BB#1: # %if.end
- call exit@FUNCTION, $1
+ call exit@FUNCTION, $0
unreachable
.LBB0_2: # %if.then
end_block # label0:
@@ -53,18 +41,17 @@ main: # @main
.section .text.foo,"ax",@progbits
.type foo,@function
foo: # @foo
- .param i32
+ .param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
@@ -107,7 +94,7 @@ foo: # @foo
i32.store $discard=, 12($5), $pop19
i32.load $push20=, 0($1)
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return $pop20
diff --git a/test/torture-s/va-arg-12.c.s b/test/torture-s/va-arg-12.c.s
index 1f828bb08..93ae21985 100644
--- a/test/torture-s/va-arg-12.c.s
+++ b/test/torture-s/va-arg-12.c.s
@@ -5,17 +5,16 @@
.globl f
.type f,@function
f: # @f
- .param f64, f64, f64, f64, f64, f64, f64, f64, f64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, f64, f64, f64, f64, f64, f64, f64, f64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push27=, 7
i32.add $push1=, $pop0, $pop27
i32.const $push26=, -8
@@ -61,7 +60,7 @@ f: # @f
br_if 0, $pop23 # 0: down to label2
# BB#3: # %if.end7
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -87,39 +86,27 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, f64, i32, i32, i32, i32, i32, i32, i32
+ .local f64, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 32
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 32
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 24
- i32.sub $8=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
- i64.const $push0=, 4621819117588971520
- i64.store $discard=, 0($8), $pop0
- i32.const $push1=, 16
- i32.add $0=, $8, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 16
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 0
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 8
- i32.add $0=, $8, $pop3
- i64.const $push4=, 4622382067542392832
- i64.store $discard=, 0($0), $pop4
- call f@FUNCTION, $1, $1, $1, $1, $1, $1, $1, $1, $1
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 24
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
- i32.const $push5=, 0
- call exit@FUNCTION, $pop5
+ i32.or $push4=, $3, $pop3
+ i64.const $push5=, 4622382067542392832
+ i64.store $discard=, 0($pop4), $pop5
+ i64.const $push6=, 4621819117588971520
+ i64.store $discard=, 0($3):p2align=4, $pop6
+ call f@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $3
+ i32.const $push7=, 0
+ call exit@FUNCTION, $pop7
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-13.c.s b/test/torture-s/va-arg-13.c.s
index 93a8bf5a1..88ff2e655 100644
--- a/test/torture-s/va-arg-13.c.s
+++ b/test/torture-s/va-arg-13.c.s
@@ -47,56 +47,56 @@ dummy: # @dummy
.globl test
.type test,@function
test: # @test
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
- i32.store $6=, 0($4), $6
- i32.const $push21=, 4
- i32.or $push0=, $6, $pop21
- tee_local $push20=, $2=, $pop0
- i32.store $push1=, 0($pop20), $7
- i32.store $push2=, 12($6), $pop1
+ 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.const $push22=, 4
+ i32.or $push0=, $7, $pop22
+ tee_local $push21=, $3=, $pop0
+ i32.store $push1=, 0($pop21), $1
+ i32.store $push2=, 12($7), $pop1
+ tee_local $push20=, $2=, $pop2
i32.const $push19=, 3
- i32.add $push3=, $pop2, $pop19
+ i32.add $push3=, $pop20, $pop19
i32.const $push18=, -4
i32.and $push4=, $pop3, $pop18
tee_local $push17=, $1=, $pop4
i32.const $push16=, 4
i32.add $push5=, $pop17, $pop16
- i32.store $discard=, 12($6), $pop5
+ i32.store $discard=, 12($7), $pop5
block
i32.load $push6=, 0($1)
i32.const $push15=, 1234
i32.ne $push7=, $pop6, $pop15
br_if 0, $pop7 # 0: down to label1
# BB#1: # %dummy.exit
- i32.store $discard=, 0($2), $7
- i32.load $push8=, 0($2)
- i32.store $push9=, 12($6), $pop8
- i32.const $push26=, 3
- i32.add $push10=, $pop9, $pop26
- i32.const $push25=, -4
- i32.and $push11=, $pop10, $pop25
- tee_local $push24=, $2=, $pop11
- i32.const $push23=, 4
- i32.add $push12=, $pop24, $pop23
- i32.store $discard=, 12($6), $pop12
+ i32.store $discard=, 0($3), $2
+ i32.load $push8=, 0($3)
+ i32.store $push9=, 12($7), $pop8
+ i32.const $push27=, 3
+ i32.add $push10=, $pop9, $pop27
+ i32.const $push26=, -4
+ i32.and $push11=, $pop10, $pop26
+ tee_local $push25=, $3=, $pop11
+ i32.const $push24=, 4
+ i32.add $push12=, $pop25, $pop24
+ i32.store $discard=, 12($7), $pop12
block
- i32.load $push13=, 0($2)
- i32.const $push22=, 1234
- i32.ne $push14=, $pop13, $pop22
+ i32.load $push13=, 0($3)
+ i32.const $push23=, 1234
+ i32.ne $push14=, $pop13, $pop23
br_if 0, $pop14 # 0: down to label2
# BB#2: # %dummy.exit16
- i32.const $5=, 16
- i32.add $6=, $7, $5
- i32.const $5=, __stack_pointer
- i32.store $6=, 0($5), $6
+ i32.const $6=, 16
+ i32.add $7=, $7, $6
+ i32.const $6=, __stack_pointer
+ i32.store $7=, 0($6), $7
return
.LBB1_3: # %if.then.i15
end_block # label2:
@@ -116,29 +116,17 @@ test: # @test
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
+ i32.store $3=, 0($2), $3
i32.const $push0=, 1234
- i32.store $discard=, 0($7), $pop0
- call test@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $discard=, 0($3):p2align=4, $pop0
+ call test@FUNCTION, $0, $3
i32.const $push1=, 0
call exit@FUNCTION, $pop1
unreachable
diff --git a/test/torture-s/va-arg-14.c.s b/test/torture-s/va-arg-14.c.s
index 3781e3c17..130ff14e3 100644
--- a/test/torture-s/va-arg-14.c.s
+++ b/test/torture-s/va-arg-14.c.s
@@ -5,139 +5,138 @@
.globl vat
.type vat,@function
vat: # @vat
- .param i32
+ .param i32, i32
.local 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
- copy_local $5=, $4
- i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $discard=, 12($4), $0
- i32.load $0=, 8($4)
- i32.const $push56=, 0
- i32.store $push0=, 8($4), $5
- i32.store $push1=, global($pop56), $pop0
- i32.store $discard=, 12($4), $pop1
+ 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=, 8($6), $1
+ i32.load $2=, 8($6)
+ i32.store $discard=, 12($6), $0
i32.const $push55=, 3
- i32.add $push2=, $0, $pop55
+ i32.add $push1=, $2, $pop55
i32.const $push54=, -4
- i32.and $push3=, $pop2, $pop54
- tee_local $push53=, $0=, $pop3
+ i32.and $push2=, $pop1, $pop54
+ tee_local $push53=, $0=, $pop2
i32.const $push52=, 4
- i32.add $push4=, $pop53, $pop52
- i32.store $discard=, 8($4), $pop4
+ i32.add $push3=, $pop53, $pop52
+ i32.store $discard=, 8($6), $pop3
+ i32.const $push51=, 0
+ i32.store $push0=, global($pop51), $1
+ i32.store $2=, 12($6), $pop0
block
- i32.load $push5=, 0($0)
- i32.const $push51=, 1
- i32.ne $push6=, $pop5, $pop51
- br_if 0, $pop6 # 0: down to label0
+ i32.load $push4=, 0($0)
+ i32.const $push50=, 1
+ i32.ne $push5=, $pop4, $pop50
+ br_if 0, $pop5 # 0: down to label0
# BB#1: # %if.end
- i32.const $push63=, 0
i32.const $push62=, 0
- i32.load $push7=, global($pop62)
- i32.const $push61=, 3
- i32.add $push8=, $pop7, $pop61
- i32.const $push60=, -4
- i32.and $push9=, $pop8, $pop60
- tee_local $push59=, $0=, $pop9
- i32.const $push58=, 4
- i32.add $push10=, $pop59, $pop58
- i32.store $discard=, global($pop63), $pop10
+ i32.const $push61=, 0
+ i32.load $push6=, global($pop61)
+ i32.const $push60=, 3
+ i32.add $push7=, $pop6, $pop60
+ i32.const $push59=, -4
+ i32.and $push8=, $pop7, $pop59
+ tee_local $push58=, $1=, $pop8
+ i32.const $push57=, 4
+ i32.add $push9=, $pop58, $pop57
+ i32.store $discard=, global($pop62), $pop9
block
- i32.load $push11=, 0($0)
- i32.const $push57=, 1
- i32.ne $push12=, $pop11, $pop57
- br_if 0, $pop12 # 0: down to label1
+ i32.load $push10=, 0($1)
+ i32.const $push56=, 1
+ i32.ne $push11=, $pop10, $pop56
+ br_if 0, $pop11 # 0: down to label1
# BB#2: # %if.end5
- i32.load $push13=, 12($4)
- i32.const $push68=, 3
- i32.add $push14=, $pop13, $pop68
- i32.const $push67=, -4
- i32.and $push15=, $pop14, $pop67
- tee_local $push66=, $0=, $pop15
- i32.const $push65=, 4
- i32.add $push16=, $pop66, $pop65
- i32.store $discard=, 12($4), $pop16
+ i32.load $push12=, 12($6)
+ i32.const $push67=, 3
+ i32.add $push13=, $pop12, $pop67
+ i32.const $push66=, -4
+ i32.and $push14=, $pop13, $pop66
+ tee_local $push65=, $1=, $pop14
+ i32.const $push64=, 4
+ i32.add $push15=, $pop65, $pop64
+ i32.store $discard=, 12($6), $pop15
block
- i32.load $push17=, 0($0)
- i32.const $push64=, 1
- i32.ne $push18=, $pop17, $pop64
- br_if 0, $pop18 # 0: down to label2
+ i32.load $push16=, 0($1)
+ i32.const $push63=, 1
+ i32.ne $push17=, $pop16, $pop63
+ br_if 0, $pop17 # 0: down to label2
# BB#3: # %if.end8
- i32.const $push74=, 0
- i32.store $push19=, 12($4), $5
- i32.store $push20=, global($pop74), $pop19
- i32.store $push21=, 8($4), $pop20
- i32.const $push73=, 3
- i32.add $push22=, $pop21, $pop73
- i32.const $push72=, -4
- i32.and $push23=, $pop22, $pop72
- tee_local $push71=, $0=, $pop23
- i32.const $push70=, 4
- i32.add $push24=, $pop71, $pop70
- i32.store $discard=, 8($4), $pop24
+ i32.const $push73=, 0
+ i32.store $push18=, 12($6), $2
+ i32.store $push19=, global($pop73), $pop18
+ i32.store $push20=, 8($6), $pop19
+ i32.const $push72=, 3
+ i32.add $push21=, $pop20, $pop72
+ i32.const $push71=, -4
+ i32.and $push22=, $pop21, $pop71
+ tee_local $push70=, $1=, $pop22
+ i32.const $push69=, 4
+ i32.add $push23=, $pop70, $pop69
+ i32.store $discard=, 8($6), $pop23
block
- i32.load $push25=, 0($0)
- i32.const $push69=, 1
- i32.ne $push26=, $pop25, $pop69
- br_if 0, $pop26 # 0: down to label3
+ i32.load $push24=, 0($1)
+ i32.const $push68=, 1
+ i32.ne $push25=, $pop24, $pop68
+ br_if 0, $pop25 # 0: down to label3
# BB#4: # %if.end13
- i32.const $push80=, 0
- i32.load $push27=, global($pop80)
- i32.store $push28=, 8($4), $pop27
- i32.const $push79=, 3
- i32.add $push29=, $pop28, $pop79
- i32.const $push78=, -4
- i32.and $push30=, $pop29, $pop78
- tee_local $push77=, $0=, $pop30
- i32.const $push76=, 4
- i32.add $push31=, $pop77, $pop76
- i32.store $discard=, 8($4), $pop31
+ i32.const $push79=, 0
+ i32.load $push26=, global($pop79)
+ i32.store $push27=, 8($6), $pop26
+ i32.const $push78=, 3
+ i32.add $push28=, $pop27, $pop78
+ i32.const $push77=, -4
+ i32.and $push29=, $pop28, $pop77
+ tee_local $push76=, $1=, $pop29
+ i32.const $push75=, 4
+ i32.add $push30=, $pop76, $pop75
+ i32.store $discard=, 8($6), $pop30
block
- i32.load $push32=, 0($0)
- i32.const $push75=, 1
- i32.ne $push33=, $pop32, $pop75
- br_if 0, $pop33 # 0: down to label4
+ i32.load $push31=, 0($1)
+ i32.const $push74=, 1
+ i32.ne $push32=, $pop31, $pop74
+ br_if 0, $pop32 # 0: down to label4
# BB#5: # %if.end17
- i32.const $push34=, 0
- i32.const $push86=, 0
- i32.load $push35=, global($pop86)
- i32.const $push85=, 3
- i32.add $push36=, $pop35, $pop85
- i32.const $push84=, -4
- i32.and $push37=, $pop36, $pop84
- tee_local $push83=, $0=, $pop37
- i32.const $push82=, 4
- i32.add $push38=, $pop83, $pop82
- i32.store $discard=, global($pop34), $pop38
+ i32.const $push33=, 0
+ i32.const $push85=, 0
+ i32.load $push34=, global($pop85)
+ i32.const $push84=, 3
+ i32.add $push35=, $pop34, $pop84
+ i32.const $push83=, -4
+ i32.and $push36=, $pop35, $pop83
+ tee_local $push82=, $1=, $pop36
+ i32.const $push81=, 4
+ i32.add $push37=, $pop82, $pop81
+ i32.store $discard=, global($pop33), $pop37
block
- i32.load $push39=, 0($0)
- i32.const $push81=, 1
- i32.ne $push40=, $pop39, $pop81
- br_if 0, $pop40 # 0: down to label5
+ i32.load $push38=, 0($1)
+ i32.const $push80=, 1
+ i32.ne $push39=, $pop38, $pop80
+ br_if 0, $pop39 # 0: down to label5
# BB#6: # %if.end21
- i32.load $push41=, 12($4)
- i32.const $push42=, 3
- i32.add $push43=, $pop41, $pop42
- i32.const $push44=, -4
- i32.and $push45=, $pop43, $pop44
- tee_local $push87=, $0=, $pop45
- i32.const $push46=, 4
- i32.add $push47=, $pop87, $pop46
- i32.store $discard=, 12($4), $pop47
+ i32.load $push40=, 12($6)
+ i32.const $push41=, 3
+ i32.add $push42=, $pop40, $pop41
+ i32.const $push43=, -4
+ i32.and $push44=, $pop42, $pop43
+ tee_local $push86=, $1=, $pop44
+ i32.const $push45=, 4
+ i32.add $push46=, $pop86, $pop45
+ i32.store $discard=, 12($6), $pop46
block
- i32.load $push48=, 0($0)
- i32.const $push49=, 1
- i32.ne $push50=, $pop48, $pop49
- br_if 0, $pop50 # 0: down to label6
+ i32.load $push47=, 0($1)
+ i32.const $push48=, 1
+ i32.ne $push49=, $pop47, $pop48
+ br_if 0, $pop49 # 0: down to label6
# BB#7: # %if.end24
- i32.const $3=, 16
- i32.add $4=, $5, $3
- i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return
.LBB0_8: # %if.then23
end_block # label6:
@@ -177,29 +176,17 @@ vat: # @vat
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
+ i32.store $3=, 0($2), $3
i32.const $push0=, 1
- i32.store $discard=, 0($7), $pop0
- call vat@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $discard=, 0($3):p2align=4, $pop0
+ call vat@FUNCTION, $0, $3
i32.const $push1=, 0
call exit@FUNCTION, $pop1
unreachable
diff --git a/test/torture-s/va-arg-15.c.s b/test/torture-s/va-arg-15.c.s
index 4bf475058..f9204ccfd 100644
--- a/test/torture-s/va-arg-15.c.s
+++ b/test/torture-s/va-arg-15.c.s
@@ -5,17 +5,16 @@
.globl vafunction
.type vafunction,@function
vafunction: # @vafunction
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $discard=, 12($6), $7
+ i32.store $discard=, 12($6), $1
i32.const $1=, 1
.LBB0_1: # %for.body
# =>This Inner Loop Header: Depth=1
@@ -72,7 +71,7 @@ vafunction: # @vafunction
# BB#6: # %for.end
end_loop # label2:
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -90,99 +89,87 @@ vafunction: # @vafunction
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 144
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
i32.const $2=, 144
- i32.sub $7=, $1, $2
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i32.const $push0=, 1
- i32.store $discard=, 0($7), $pop0
- i32.const $push1=, 136
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 136
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 4625759767262920704
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1), $pop2
i32.const $push3=, 128
- i32.add $0=, $7, $pop3
- i32.const $push4=, 17
- i32.store $discard=, 0($0), $pop4
- i32.const $push5=, 120
- i32.add $0=, $7, $pop5
- i64.const $push6=, 4625196817309499392
- i64.store $discard=, 0($0), $pop6
- i32.const $push7=, 112
- i32.add $0=, $7, $pop7
- i32.const $push8=, 15
- i32.store $discard=, 0($0), $pop8
- i32.const $push9=, 104
- i32.add $0=, $7, $pop9
- i64.const $push10=, 4624070917402656768
- i64.store $discard=, 0($0), $pop10
- i32.const $push11=, 96
- i32.add $0=, $7, $pop11
- i32.const $push12=, 13
- i32.store $discard=, 0($0), $pop12
- i32.const $push13=, 88
- i32.add $0=, $7, $pop13
- i64.const $push14=, 4622945017495814144
- i64.store $discard=, 0($0), $pop14
- i32.const $push15=, 80
- i32.add $0=, $7, $pop15
- i32.const $push16=, 11
- i32.store $discard=, 0($0), $pop16
- i32.const $push17=, 72
- i32.add $0=, $7, $pop17
- i64.const $push18=, 4621819117588971520
- i64.store $discard=, 0($0), $pop18
- i32.const $push19=, 64
- i32.add $0=, $7, $pop19
- i32.const $push20=, 9
- i32.store $discard=, 0($0), $pop20
- i32.const $push21=, 56
- i32.add $0=, $7, $pop21
- i64.const $push22=, 4620693217682128896
- i64.store $discard=, 0($0), $pop22
- i32.const $push23=, 48
- i32.add $0=, $7, $pop23
- i32.const $push24=, 7
- i32.store $discard=, 0($0), $pop24
- i32.const $push25=, 40
- i32.add $0=, $7, $pop25
- i64.const $push26=, 4618441417868443648
- i64.store $discard=, 0($0), $pop26
- i32.const $push27=, 32
- i32.add $0=, $7, $pop27
- i32.const $push28=, 5
- i32.store $discard=, 0($0), $pop28
- i32.const $push29=, 24
- i32.add $0=, $7, $pop29
- i64.const $push30=, 4616189618054758400
- i64.store $discard=, 0($0), $pop30
- i32.const $push31=, 16
- i32.add $0=, $7, $pop31
- i32.const $push32=, 3
- i32.store $discard=, 0($0), $pop32
- i32.const $push33=, 8
- i32.add $0=, $7, $pop33
- i64.const $push34=, 4611686018427387904
- i64.store $discard=, 0($0), $pop34
- call vafunction@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 144
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push35=, 0
- call exit@FUNCTION, $pop35
+ i32.add $push4=, $3, $pop3
+ i32.const $push5=, 17
+ i32.store $discard=, 0($pop4):p2align=4, $pop5
+ i32.const $push6=, 120
+ i32.add $push7=, $3, $pop6
+ i64.const $push8=, 4625196817309499392
+ i64.store $discard=, 0($pop7), $pop8
+ i32.const $push9=, 112
+ i32.add $push10=, $3, $pop9
+ i32.const $push11=, 15
+ i32.store $discard=, 0($pop10):p2align=4, $pop11
+ i32.const $push12=, 104
+ i32.add $push13=, $3, $pop12
+ i64.const $push14=, 4624070917402656768
+ i64.store $discard=, 0($pop13), $pop14
+ i32.const $push15=, 96
+ i32.add $push16=, $3, $pop15
+ i32.const $push17=, 13
+ i32.store $discard=, 0($pop16):p2align=4, $pop17
+ i32.const $push18=, 88
+ i32.add $push19=, $3, $pop18
+ i64.const $push20=, 4622945017495814144
+ i64.store $discard=, 0($pop19), $pop20
+ i32.const $push21=, 80
+ i32.add $push22=, $3, $pop21
+ i32.const $push23=, 11
+ i32.store $discard=, 0($pop22):p2align=4, $pop23
+ i32.const $push24=, 72
+ i32.add $push25=, $3, $pop24
+ i64.const $push26=, 4621819117588971520
+ i64.store $discard=, 0($pop25), $pop26
+ i32.const $push27=, 64
+ i32.add $push28=, $3, $pop27
+ i32.const $push29=, 9
+ i32.store $discard=, 0($pop28):p2align=4, $pop29
+ i32.const $push30=, 56
+ i32.add $push31=, $3, $pop30
+ i64.const $push32=, 4620693217682128896
+ i64.store $discard=, 0($pop31), $pop32
+ i32.const $push33=, 48
+ i32.add $push34=, $3, $pop33
+ i32.const $push35=, 7
+ i32.store $discard=, 0($pop34):p2align=4, $pop35
+ i32.const $push36=, 40
+ i32.add $push37=, $3, $pop36
+ i64.const $push38=, 4618441417868443648
+ i64.store $discard=, 0($pop37), $pop38
+ i32.const $push39=, 32
+ i32.add $push40=, $3, $pop39
+ i32.const $push41=, 5
+ i32.store $discard=, 0($pop40):p2align=4, $pop41
+ i32.const $push42=, 24
+ i32.add $push43=, $3, $pop42
+ i64.const $push44=, 4616189618054758400
+ i64.store $discard=, 0($pop43), $pop44
+ i32.const $push45=, 16
+ i32.add $push46=, $3, $pop45
+ i32.const $push47=, 3
+ i32.store $discard=, 0($pop46):p2align=4, $pop47
+ i32.const $push48=, 8
+ i32.or $push49=, $3, $pop48
+ i64.const $push50=, 4611686018427387904
+ i64.store $discard=, 0($pop49), $pop50
+ i32.const $push51=, 1
+ i32.store $discard=, 0($3):p2align=4, $pop51
+ call vafunction@FUNCTION, $0, $3
+ i32.const $push52=, 0
+ call exit@FUNCTION, $pop52
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-16.c.s b/test/torture-s/va-arg-16.c.s
index bb8f6b76c..a96e41c41 100644
--- a/test/torture-s/va-arg-16.c.s
+++ b/test/torture-s/va-arg-16.c.s
@@ -5,17 +5,16 @@
.globl vafunction
.type vafunction,@function
vafunction: # @vafunction
- .param f64, f64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, f64, i32
+ .local 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $discard=, 12($6), $7
+ i32.store $discard=, 12($6), $2
block
f64.const $push0=, 0x1.bcp9
f64.ne $push1=, $0, $pop0
@@ -162,7 +161,7 @@ vafunction: # @vafunction
br_if 0, $pop69 # 0: down to label10
# BB#11: # %if.end31
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -220,65 +219,53 @@ vafunction: # @vafunction
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 80
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
+ i32.const $0=, __stack_pointer
+ i32.load $0=, 0($0)
+ i32.const $1=, 80
+ i32.sub $2=, $0, $1
i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 72
- i32.sub $7=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 4607182418800017408
- i64.store $discard=, 0($7), $pop0
- i32.const $push1=, 64
- i32.add $0=, $7, $pop1
+ i32.store $2=, 0($1), $2
+ i32.const $push0=, 64
+ i32.add $push1=, $2, $pop0
i64.const $push2=, 4621256167635550208
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 56
- i32.add $0=, $7, $pop3
- i64.const $push4=, 4620693217682128896
- i64.store $discard=, 0($0), $pop4
- i32.const $push5=, 48
- i32.add $0=, $7, $pop5
- i64.const $push6=, 4619567317775286272
- i64.store $discard=, 0($0), $pop6
- i32.const $push7=, 40
- i32.add $0=, $7, $pop7
- i64.const $push8=, 4618441417868443648
- i64.store $discard=, 0($0), $pop8
- i32.const $push9=, 32
- i32.add $0=, $7, $pop9
- i64.const $push10=, 4617315517961601024
- i64.store $discard=, 0($0), $pop10
- i32.const $push11=, 24
- i32.add $0=, $7, $pop11
- i64.const $push12=, 4616189618054758400
- i64.store $discard=, 0($0), $pop12
- i32.const $push13=, 16
- i32.add $0=, $7, $pop13
- i64.const $push14=, 4613937818241073152
- i64.store $discard=, 0($0), $pop14
- i32.const $push15=, 8
- i32.add $0=, $7, $pop15
- i64.const $push16=, 4611686018427387904
- i64.store $discard=, 0($0), $pop16
- f64.const $push18=, 0x1.bcp9
- f64.const $push17=, 0x1.f38p9
- call vafunction@FUNCTION, $pop18, $pop17
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 72
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push19=, 0
- call exit@FUNCTION, $pop19
+ i32.add $push4=, $2, $pop3
+ i64.const $push5=, 4620693217682128896
+ i64.store $discard=, 0($pop4), $pop5
+ i32.const $push6=, 48
+ i32.add $push7=, $2, $pop6
+ i64.const $push8=, 4619567317775286272
+ i64.store $discard=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 40
+ i32.add $push10=, $2, $pop9
+ i64.const $push11=, 4618441417868443648
+ i64.store $discard=, 0($pop10), $pop11
+ i32.const $push12=, 32
+ i32.add $push13=, $2, $pop12
+ i64.const $push14=, 4617315517961601024
+ i64.store $discard=, 0($pop13):p2align=4, $pop14
+ i32.const $push15=, 24
+ i32.add $push16=, $2, $pop15
+ i64.const $push17=, 4616189618054758400
+ i64.store $discard=, 0($pop16), $pop17
+ i32.const $push18=, 16
+ i32.add $push19=, $2, $pop18
+ i64.const $push20=, 4613937818241073152
+ i64.store $discard=, 0($pop19):p2align=4, $pop20
+ i32.const $push21=, 8
+ i32.or $push22=, $2, $pop21
+ i64.const $push23=, 4611686018427387904
+ i64.store $discard=, 0($pop22), $pop23
+ i64.const $push24=, 4607182418800017408
+ i64.store $discard=, 0($2):p2align=4, $pop24
+ f64.const $push26=, 0x1.bcp9
+ f64.const $push25=, 0x1.f38p9
+ call vafunction@FUNCTION, $pop26, $pop25, $2
+ i32.const $push27=, 0
+ call exit@FUNCTION, $pop27
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-17.c.s b/test/torture-s/va-arg-17.c.s
index 1532b220f..3f9609ec0 100644
--- a/test/torture-s/va-arg-17.c.s
+++ b/test/torture-s/va-arg-17.c.s
@@ -5,17 +5,16 @@
.globl vafunction
.type vafunction,@function
vafunction: # @vafunction
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push69=, 7
i32.add $push1=, $pop0, $pop69
i32.const $push68=, -8
@@ -151,7 +150,7 @@ vafunction: # @vafunction
br_if 0, $pop65 # 0: down to label8
# BB#9: # %if.end25
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -201,63 +200,51 @@ vafunction: # @vafunction
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 80
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 72
- i32.sub $7=, $1, $2
+ i32.const $2=, 80
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 4607182418800017408
- i64.store $discard=, 0($7), $pop0
- i32.const $push1=, 64
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 64
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 4621256167635550208
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 56
- i32.add $0=, $7, $pop3
- i64.const $push4=, 4620693217682128896
- i64.store $discard=, 0($0), $pop4
- i32.const $push5=, 48
- i32.add $0=, $7, $pop5
- i64.const $push6=, 4619567317775286272
- i64.store $discard=, 0($0), $pop6
- i32.const $push7=, 40
- i32.add $0=, $7, $pop7
- i64.const $push8=, 4618441417868443648
- i64.store $discard=, 0($0), $pop8
- i32.const $push9=, 32
- i32.add $0=, $7, $pop9
- i64.const $push10=, 4617315517961601024
- i64.store $discard=, 0($0), $pop10
- i32.const $push11=, 24
- i32.add $0=, $7, $pop11
- i64.const $push12=, 4616189618054758400
- i64.store $discard=, 0($0), $pop12
- i32.const $push13=, 16
- i32.add $0=, $7, $pop13
- i64.const $push14=, 4613937818241073152
- i64.store $discard=, 0($0), $pop14
- i32.const $push15=, 8
- i32.add $0=, $7, $pop15
- i64.const $push16=, 4611686018427387904
- i64.store $discard=, 0($0), $pop16
- call vafunction@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 72
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push17=, 0
- call exit@FUNCTION, $pop17
+ i32.add $push4=, $3, $pop3
+ i64.const $push5=, 4620693217682128896
+ i64.store $discard=, 0($pop4), $pop5
+ i32.const $push6=, 48
+ i32.add $push7=, $3, $pop6
+ i64.const $push8=, 4619567317775286272
+ i64.store $discard=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 40
+ i32.add $push10=, $3, $pop9
+ i64.const $push11=, 4618441417868443648
+ i64.store $discard=, 0($pop10), $pop11
+ i32.const $push12=, 32
+ i32.add $push13=, $3, $pop12
+ i64.const $push14=, 4617315517961601024
+ i64.store $discard=, 0($pop13):p2align=4, $pop14
+ i32.const $push15=, 24
+ i32.add $push16=, $3, $pop15
+ i64.const $push17=, 4616189618054758400
+ i64.store $discard=, 0($pop16), $pop17
+ i32.const $push18=, 16
+ i32.add $push19=, $3, $pop18
+ i64.const $push20=, 4613937818241073152
+ i64.store $discard=, 0($pop19):p2align=4, $pop20
+ i32.const $push21=, 8
+ i32.or $push22=, $3, $pop21
+ i64.const $push23=, 4611686018427387904
+ i64.store $discard=, 0($pop22), $pop23
+ i64.const $push24=, 4607182418800017408
+ i64.store $discard=, 0($3):p2align=4, $pop24
+ call vafunction@FUNCTION, $0, $3
+ i32.const $push25=, 0
+ call exit@FUNCTION, $pop25
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-18.c.s b/test/torture-s/va-arg-18.c.s
index 12143274c..0bcb14b4a 100644
--- a/test/torture-s/va-arg-18.c.s
+++ b/test/torture-s/va-arg-18.c.s
@@ -5,17 +5,16 @@
.globl f
.type f,@function
f: # @f
- .param f64, f64, f64, f64, f64, f64, f64, f64, f64
- .local i32, i32, i32, i32, i32, i32
+ .param f64, f64, f64, f64, f64, f64, f64, f64, f64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push27=, 3
i32.add $push1=, $pop0, $pop27
i32.const $push26=, -4
@@ -61,7 +60,7 @@ f: # @f
br_if 0, $pop23 # 0: down to label2
# BB#3: # %if.end7
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -87,35 +86,23 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, f64, i32, i32, i32, i32, i32, i32, i32
+ .local f64, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 12
- i32.sub $8=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
- i64.const $push0=, 47244640266
- i64.store $discard=, 0($8):p2align=2, $pop0
- i32.const $push1=, 8
- i32.add $0=, $8, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 8
+ i32.or $push1=, $3, $pop0
i32.const $push2=, 12
- i32.store $discard=, 0($0), $pop2
- call f@FUNCTION, $1, $1, $1, $1, $1, $1, $1, $1, $1
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 12
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
- i32.const $push3=, 0
- call exit@FUNCTION, $pop3
+ i32.store $discard=, 0($pop1):p2align=3, $pop2
+ i64.const $push3=, 47244640266
+ i64.store $discard=, 0($3):p2align=4, $pop3
+ call f@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $3
+ i32.const $push4=, 0
+ call exit@FUNCTION, $pop4
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-19.c.s b/test/torture-s/va-arg-19.c.s
index 58a8d88fc..e6d64761b 100644
--- a/test/torture-s/va-arg-19.c.s
+++ b/test/torture-s/va-arg-19.c.s
@@ -5,17 +5,16 @@
.globl vafunction
.type vafunction,@function
vafunction: # @vafunction
- .param i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push67=, 3
i32.add $push1=, $pop0, $pop67
i32.const $push66=, -4
@@ -151,7 +150,7 @@ vafunction: # @vafunction
br_if 0, $pop63 # 0: down to label8
# BB#9: # %if.end25
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return
@@ -201,47 +200,35 @@ vafunction: # @vafunction
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 48
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 36
- i32.sub $7=, $1, $2
+ i32.const $2=, 48
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i64.const $push0=, 8589934593
- i64.store $discard=, 0($7):p2align=2, $pop0
- i32.const $push1=, 32
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 32
+ i32.add $push1=, $3, $pop0
i32.const $push2=, 9
- i32.store $discard=, 0($0), $pop2
+ i32.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 24
- i32.add $0=, $7, $pop3
- i64.const $push4=, 34359738375
- i64.store $discard=, 0($0):p2align=2, $pop4
- i32.const $push5=, 16
- i32.add $0=, $7, $pop5
- i64.const $push6=, 25769803781
- i64.store $discard=, 0($0):p2align=2, $pop6
- i32.const $push7=, 8
- i32.add $0=, $7, $pop7
- i64.const $push8=, 17179869187
- i64.store $discard=, 0($0):p2align=2, $pop8
- call vafunction@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 36
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push9=, 0
- call exit@FUNCTION, $pop9
+ i32.add $push4=, $3, $pop3
+ i64.const $push5=, 34359738375
+ i64.store $discard=, 0($pop4), $pop5
+ i32.const $push6=, 16
+ i32.add $push7=, $3, $pop6
+ i64.const $push8=, 25769803781
+ i64.store $discard=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 8
+ i32.or $push10=, $3, $pop9
+ i64.const $push11=, 17179869187
+ i64.store $discard=, 0($pop10), $pop11
+ i64.const $push12=, 8589934593
+ i64.store $discard=, 0($3):p2align=4, $pop12
+ call vafunction@FUNCTION, $0, $3
+ i32.const $push13=, 0
+ call exit@FUNCTION, $pop13
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-2.c.s b/test/torture-s/va-arg-2.c.s
index bb7f18b1f..e7f3ae95a 100644
--- a/test/torture-s/va-arg-2.c.s
+++ b/test/torture-s/va-arg-2.c.s
@@ -28,17 +28,16 @@ to_hex: # @to_hex
.globl f0
.type f0,@function
f0: # @f0
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $discard=, 12($6), $7
+ i32.store $discard=, 12($6), $1
block
i32.call $push2=, strlen@FUNCTION, $0
i32.const $push3=, 16
@@ -88,7 +87,7 @@ f0: # @f0
.LBB1_6: # %while.end
end_block # label2:
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -105,17 +104,16 @@ f0: # @f0
.globl f1
.type f1,@function
f1: # @f1
- .param i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 16
i32.sub $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
- i32.store $discard=, 12($7), $8
+ i32.store $discard=, 12($7), $2
block
i32.call $push2=, strlen@FUNCTION, $1
i32.const $push3=, 15
@@ -165,7 +163,7 @@ f1: # @f1
.LBB2_6: # %while.end
end_block # label7:
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
return
@@ -182,17 +180,16 @@ f1: # @f1
.globl f2
.type f2,@function
f2: # @f2
- .param i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $5=, __stack_pointer
i32.load $5=, 0($5)
i32.const $6=, 16
i32.sub $8=, $5, $6
- copy_local $9=, $8
i32.const $6=, __stack_pointer
i32.store $8=, 0($6), $8
- i32.store $discard=, 12($8), $9
+ i32.store $discard=, 12($8), $3
block
i32.call $push2=, strlen@FUNCTION, $2
i32.const $push3=, 14
@@ -242,7 +239,7 @@ f2: # @f2
.LBB3_6: # %while.end
end_block # label12:
i32.const $7=, 16
- i32.add $8=, $9, $7
+ i32.add $8=, $8, $7
i32.const $7=, __stack_pointer
i32.store $8=, 0($7), $8
return
@@ -259,17 +256,16 @@ f2: # @f2
.globl f3
.type f3,@function
f3: # @f3
- .param i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $6=, __stack_pointer
i32.load $6=, 0($6)
i32.const $7=, 16
i32.sub $9=, $6, $7
- copy_local $10=, $9
i32.const $7=, __stack_pointer
i32.store $9=, 0($7), $9
- i32.store $discard=, 12($9), $10
+ i32.store $discard=, 12($9), $4
block
i32.call $push2=, strlen@FUNCTION, $3
i32.const $push3=, 13
@@ -319,7 +315,7 @@ f3: # @f3
.LBB4_6: # %while.end
end_block # label17:
i32.const $8=, 16
- i32.add $9=, $10, $8
+ i32.add $9=, $9, $8
i32.const $8=, __stack_pointer
i32.store $9=, 0($8), $9
return
@@ -336,17 +332,16 @@ f3: # @f3
.globl f4
.type f4,@function
f4: # @f4
- .param i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $7=, __stack_pointer
i32.load $7=, 0($7)
i32.const $8=, 16
i32.sub $10=, $7, $8
- copy_local $11=, $10
i32.const $8=, __stack_pointer
i32.store $10=, 0($8), $10
- i32.store $discard=, 12($10), $11
+ i32.store $discard=, 12($10), $5
block
i32.call $push2=, strlen@FUNCTION, $4
i32.const $push3=, 12
@@ -396,7 +391,7 @@ f4: # @f4
.LBB5_6: # %while.end
end_block # label22:
i32.const $9=, 16
- i32.add $10=, $11, $9
+ i32.add $10=, $10, $9
i32.const $9=, __stack_pointer
i32.store $10=, 0($9), $10
return
@@ -413,17 +408,16 @@ f4: # @f4
.globl f5
.type f5,@function
f5: # @f5
- .param i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $8=, __stack_pointer
i32.load $8=, 0($8)
i32.const $9=, 16
i32.sub $11=, $8, $9
- copy_local $12=, $11
i32.const $9=, __stack_pointer
i32.store $11=, 0($9), $11
- i32.store $discard=, 12($11), $12
+ i32.store $discard=, 12($11), $6
block
i32.call $push2=, strlen@FUNCTION, $5
i32.const $push3=, 11
@@ -473,7 +467,7 @@ f5: # @f5
.LBB6_6: # %while.end
end_block # label27:
i32.const $10=, 16
- i32.add $11=, $12, $10
+ i32.add $11=, $11, $10
i32.const $10=, __stack_pointer
i32.store $11=, 0($10), $11
return
@@ -490,17 +484,16 @@ f5: # @f5
.globl f6
.type f6,@function
f6: # @f6
- .param i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $9=, __stack_pointer
i32.load $9=, 0($9)
i32.const $10=, 16
i32.sub $12=, $9, $10
- copy_local $13=, $12
i32.const $10=, __stack_pointer
i32.store $12=, 0($10), $12
- i32.store $discard=, 12($12), $13
+ i32.store $discard=, 12($12), $7
block
i32.call $push2=, strlen@FUNCTION, $6
i32.const $push3=, 10
@@ -550,7 +543,7 @@ f6: # @f6
.LBB7_6: # %while.end
end_block # label32:
i32.const $11=, 16
- i32.add $12=, $13, $11
+ i32.add $12=, $12, $11
i32.const $11=, __stack_pointer
i32.store $12=, 0($11), $12
return
@@ -567,17 +560,16 @@ f6: # @f6
.globl f7
.type f7,@function
f7: # @f7
- .param i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $discard=, 12($13), $14
+ i32.store $discard=, 12($13), $8
block
i32.call $push2=, strlen@FUNCTION, $7
i32.const $push3=, 9
@@ -627,7 +619,7 @@ f7: # @f7
.LBB8_6: # %while.end
end_block # label37:
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -644,17 +636,16 @@ f7: # @f7
.globl f8
.type f8,@function
f8: # @f8
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $11=, __stack_pointer
i32.load $11=, 0($11)
i32.const $12=, 16
i32.sub $14=, $11, $12
- copy_local $15=, $14
i32.const $12=, __stack_pointer
i32.store $14=, 0($12), $14
- i32.store $discard=, 12($14), $15
+ i32.store $discard=, 12($14), $9
block
i32.call $push2=, strlen@FUNCTION, $8
i32.const $push3=, 8
@@ -704,7 +695,7 @@ f8: # @f8
.LBB9_6: # %while.end
end_block # label42:
i32.const $13=, 16
- i32.add $14=, $15, $13
+ i32.add $14=, $14, $13
i32.const $13=, __stack_pointer
i32.store $14=, 0($13), $14
return
@@ -721,17 +712,16 @@ f8: # @f8
.globl f9
.type f9,@function
f9: # @f9
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $12=, __stack_pointer
i32.load $12=, 0($12)
i32.const $13=, 16
i32.sub $15=, $12, $13
- copy_local $16=, $15
i32.const $13=, __stack_pointer
i32.store $15=, 0($13), $15
- i32.store $discard=, 12($15), $16
+ i32.store $discard=, 12($15), $10
block
i32.call $push2=, strlen@FUNCTION, $9
i32.const $push3=, 7
@@ -781,7 +771,7 @@ f9: # @f9
.LBB10_6: # %while.end
end_block # label47:
i32.const $14=, 16
- i32.add $15=, $16, $14
+ i32.add $15=, $15, $14
i32.const $14=, __stack_pointer
i32.store $15=, 0($14), $15
return
@@ -798,17 +788,16 @@ f9: # @f9
.globl f10
.type f10,@function
f10: # @f10
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $13=, __stack_pointer
i32.load $13=, 0($13)
i32.const $14=, 16
i32.sub $16=, $13, $14
- copy_local $17=, $16
i32.const $14=, __stack_pointer
i32.store $16=, 0($14), $16
- i32.store $discard=, 12($16), $17
+ i32.store $discard=, 12($16), $11
block
i32.call $push2=, strlen@FUNCTION, $10
i32.const $push3=, 6
@@ -858,7 +847,7 @@ f10: # @f10
.LBB11_6: # %while.end
end_block # label52:
i32.const $15=, 16
- i32.add $16=, $17, $15
+ i32.add $16=, $16, $15
i32.const $15=, __stack_pointer
i32.store $16=, 0($15), $16
return
@@ -875,17 +864,16 @@ f10: # @f10
.globl f11
.type f11,@function
f11: # @f11
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $14=, __stack_pointer
i32.load $14=, 0($14)
i32.const $15=, 16
i32.sub $17=, $14, $15
- copy_local $18=, $17
i32.const $15=, __stack_pointer
i32.store $17=, 0($15), $17
- i32.store $discard=, 12($17), $18
+ i32.store $discard=, 12($17), $12
block
i32.call $push2=, strlen@FUNCTION, $11
i32.const $push3=, 5
@@ -935,7 +923,7 @@ f11: # @f11
.LBB12_6: # %while.end
end_block # label57:
i32.const $16=, 16
- i32.add $17=, $18, $16
+ i32.add $17=, $17, $16
i32.const $16=, __stack_pointer
i32.store $17=, 0($16), $17
return
@@ -952,17 +940,16 @@ f11: # @f11
.globl f12
.type f12,@function
f12: # @f12
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $15=, __stack_pointer
i32.load $15=, 0($15)
i32.const $16=, 16
i32.sub $18=, $15, $16
- copy_local $19=, $18
i32.const $16=, __stack_pointer
i32.store $18=, 0($16), $18
- i32.store $discard=, 12($18), $19
+ i32.store $discard=, 12($18), $13
block
i32.call $push2=, strlen@FUNCTION, $12
i32.const $push3=, 4
@@ -1012,7 +999,7 @@ f12: # @f12
.LBB13_6: # %while.end
end_block # label62:
i32.const $17=, 16
- i32.add $18=, $19, $17
+ i32.add $18=, $18, $17
i32.const $17=, __stack_pointer
i32.store $18=, 0($17), $18
return
@@ -1029,17 +1016,16 @@ f12: # @f12
.globl f13
.type f13,@function
f13: # @f13
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $16=, __stack_pointer
i32.load $16=, 0($16)
i32.const $17=, 16
i32.sub $19=, $16, $17
- copy_local $20=, $19
i32.const $17=, __stack_pointer
i32.store $19=, 0($17), $19
- i32.store $discard=, 12($19), $20
+ i32.store $discard=, 12($19), $14
block
i32.call $push2=, strlen@FUNCTION, $13
i32.const $push3=, 3
@@ -1089,7 +1075,7 @@ f13: # @f13
.LBB14_6: # %while.end
end_block # label67:
i32.const $18=, 16
- i32.add $19=, $20, $18
+ i32.add $19=, $19, $18
i32.const $18=, __stack_pointer
i32.store $19=, 0($18), $19
return
@@ -1106,17 +1092,16 @@ f13: # @f13
.globl f14
.type f14,@function
f14: # @f14
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $17=, __stack_pointer
i32.load $17=, 0($17)
i32.const $18=, 16
i32.sub $20=, $17, $18
- copy_local $21=, $20
i32.const $18=, __stack_pointer
i32.store $20=, 0($18), $20
- i32.store $discard=, 12($20), $21
+ i32.store $discard=, 12($20), $15
block
i32.call $push2=, strlen@FUNCTION, $14
i32.const $push3=, 2
@@ -1166,7 +1151,7 @@ f14: # @f14
.LBB15_6: # %while.end
end_block # label72:
i32.const $19=, 16
- i32.add $20=, $21, $19
+ i32.add $20=, $20, $19
i32.const $19=, __stack_pointer
i32.store $20=, 0($19), $20
return
@@ -1183,17 +1168,16 @@ f14: # @f14
.globl f15
.type f15,@function
f15: # @f15
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $18=, __stack_pointer
i32.load $18=, 0($18)
i32.const $19=, 16
i32.sub $21=, $18, $19
- copy_local $22=, $21
i32.const $19=, __stack_pointer
i32.store $21=, 0($19), $21
- i32.store $discard=, 12($21), $22
+ i32.store $discard=, 12($21), $16
block
i32.call $push2=, strlen@FUNCTION, $15
i32.const $push3=, 1
@@ -1243,7 +1227,7 @@ f15: # @f15
.LBB16_6: # %while.end
end_block # label77:
i32.const $20=, 16
- i32.add $21=, $22, $20
+ i32.add $21=, $21, $20
i32.const $20=, __stack_pointer
i32.store $21=, 0($20), $21
return
@@ -1261,440 +1245,390 @@ f15: # @f15
.type main,@function
main: # @main
.result i32
- .local i32, i64, i64, i64, i64, i64, i64, i64, i32, i64, i64, i64, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i64, i64, i64, i64, i64, i64, i64, i32, i64, i64, i64, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $79=, __stack_pointer
- i32.load $79=, 0($79)
- i32.const $80=, 64
- i32.sub $81=, $79, $80
- i32.const $80=, __stack_pointer
- i32.store $81=, 0($80), $81
+ i32.const $14=, __stack_pointer
+ i32.load $14=, 0($14)
+ i32.const $15=, 640
+ i32.sub $87=, $14, $15
i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 64
- i32.sub $81=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $81=, 0($16), $81
- i64.const $push0=, 4294967296
- i64.store $discard=, 0($81):p2align=2, $pop0
- i32.const $push1=, 56
- i32.add $0=, $81, $pop1
+ i32.store $87=, 0($15), $87
+ i32.const $push0=, 56
+ i32.const $16=, 576
+ i32.add $16=, $87, $16
+ i32.add $push1=, $16, $pop0
i64.const $push2=, 64424509454
- i64.store $1=, 0($0):p2align=2, $pop2
+ i64.store $0=, 0($pop1), $pop2
i32.const $push3=, 48
- i32.add $0=, $81, $pop3
- i64.const $push4=, 55834574860
- i64.store $2=, 0($0):p2align=2, $pop4
- i32.const $push5=, 40
- i32.add $0=, $81, $pop5
- i64.const $push6=, 47244640266
- i64.store $3=, 0($0):p2align=2, $pop6
- i32.const $push7=, 32
- i32.add $0=, $81, $pop7
- i64.const $push8=, 38654705672
- i64.store $4=, 0($0):p2align=2, $pop8
- i32.const $push9=, 24
- i32.add $0=, $81, $pop9
- i64.const $push10=, 30064771078
- i64.store $5=, 0($0):p2align=2, $pop10
- i32.const $push11=, 16
- i32.add $0=, $81, $pop11
- i64.const $push12=, 21474836484
- i64.store $6=, 0($0):p2align=2, $pop12
- i32.const $push13=, 8
- i32.add $0=, $81, $pop13
- i64.const $push14=, 12884901890
- i64.store $7=, 0($0):p2align=2, $pop14
- i32.const $push15=, .L.str
- call f0@FUNCTION, $pop15
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 64
- i32.add $81=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $81=, 0($18), $81
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 60
- i32.sub $81=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $81=, 0($20), $81
- i64.const $push16=, 8589934593
- i64.store $discard=, 0($81):p2align=2, $pop16
- i32.const $push88=, 56
- i32.add $0=, $81, $pop88
- i32.const $push17=, 15
- i32.store $0=, 0($0), $pop17
- i32.const $push87=, 48
- i32.add $8=, $81, $pop87
- i64.const $push18=, 60129542157
- i64.store $9=, 0($8):p2align=2, $pop18
- i32.const $push86=, 40
- i32.add $8=, $81, $pop86
- i64.const $push19=, 51539607563
- i64.store $10=, 0($8):p2align=2, $pop19
- i32.const $push85=, 32
- i32.add $8=, $81, $pop85
- i64.const $push20=, 42949672969
- i64.store $11=, 0($8):p2align=2, $pop20
- i32.const $push84=, 24
- i32.add $8=, $81, $pop84
- i64.const $push21=, 34359738375
- i64.store $12=, 0($8):p2align=2, $pop21
- i32.const $push83=, 16
- i32.add $8=, $81, $pop83
- i64.const $push22=, 25769803781
- i64.store $13=, 0($8):p2align=2, $pop22
- i32.const $push82=, 8
- i32.add $8=, $81, $pop82
- i64.const $push23=, 17179869187
- i64.store $14=, 0($8):p2align=2, $pop23
- i32.const $push24=, .L.str+1
- call f1@FUNCTION, $0, $pop24
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 60
- i32.add $81=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $81=, 0($22), $81
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 56
- i32.sub $81=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $81=, 0($24), $81
- i64.store $discard=, 0($81):p2align=2, $7
- i32.const $push81=, 48
- i32.add $8=, $81, $pop81
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push80=, 40
- i32.add $8=, $81, $pop80
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push79=, 32
- i32.add $8=, $81, $pop79
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push78=, 24
- i32.add $8=, $81, $pop78
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push77=, 16
- i32.add $8=, $81, $pop77
- i64.store $discard=, 0($8):p2align=2, $5
- i32.const $push76=, 8
- i32.add $8=, $81, $pop76
- i64.store $discard=, 0($8):p2align=2, $6
- i32.const $push25=, .L.str+2
- call f2@FUNCTION, $0, $0, $pop25
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 56
- i32.add $81=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $81=, 0($26), $81
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 52
- i32.sub $81=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $81=, 0($28), $81
- i64.store $discard=, 0($81):p2align=2, $14
- i32.const $push75=, 48
- i32.add $8=, $81, $pop75
- i32.store $discard=, 0($8), $0
- i32.const $push74=, 40
- i32.add $8=, $81, $pop74
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push73=, 32
- i32.add $8=, $81, $pop73
- i64.store $9=, 0($8):p2align=2, $10
- i32.const $push72=, 24
- i32.add $8=, $81, $pop72
- i64.store $10=, 0($8):p2align=2, $11
- i32.const $push71=, 16
- i32.add $8=, $81, $pop71
- i64.store $11=, 0($8):p2align=2, $12
- i32.const $push70=, 8
- i32.add $8=, $81, $pop70
- i64.store $12=, 0($8):p2align=2, $13
- i32.const $push26=, .L.str+3
- call f3@FUNCTION, $0, $0, $0, $pop26
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 52
- i32.add $81=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $81=, 0($30), $81
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 48
- i32.sub $81=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $81=, 0($32), $81
- i64.store $discard=, 0($81):p2align=2, $6
- i32.const $push69=, 40
- i32.add $8=, $81, $pop69
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push68=, 32
- i32.add $8=, $81, $pop68
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push67=, 24
- i32.add $8=, $81, $pop67
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push66=, 16
- i32.add $8=, $81, $pop66
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push65=, 8
- i32.add $8=, $81, $pop65
- i64.store $discard=, 0($8):p2align=2, $5
- i32.const $push27=, .L.str+4
- call f4@FUNCTION, $0, $0, $0, $0, $pop27
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 48
- i32.add $81=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $81=, 0($34), $81
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 44
- i32.sub $81=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $81=, 0($36), $81
- i64.store $discard=, 0($81):p2align=2, $12
- i32.const $push64=, 40
- i32.add $8=, $81, $pop64
- i32.store $discard=, 0($8), $0
- i32.const $push63=, 32
- i32.add $8=, $81, $pop63
- i64.store $6=, 0($8):p2align=2, $7
- i32.const $push62=, 24
- i32.add $8=, $81, $pop62
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push61=, 16
- i32.add $8=, $81, $pop61
- i64.store $9=, 0($8):p2align=2, $10
- i32.const $push60=, 8
- i32.add $8=, $81, $pop60
- i64.store $10=, 0($8):p2align=2, $11
- i32.const $push28=, .L.str+5
- call f5@FUNCTION, $0, $0, $0, $0, $0, $pop28
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 44
- i32.add $81=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $81=, 0($38), $81
- i32.const $39=, __stack_pointer
- i32.load $39=, 0($39)
- i32.const $40=, 40
- i32.sub $81=, $39, $40
- i32.const $40=, __stack_pointer
- i32.store $81=, 0($40), $81
- i64.store $discard=, 0($81):p2align=2, $5
- i32.const $push59=, 32
- i32.add $8=, $81, $pop59
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push58=, 24
- i32.add $8=, $81, $pop58
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push57=, 16
- i32.add $8=, $81, $pop57
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push56=, 8
- i32.add $8=, $81, $pop56
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push29=, .L.str+6
- call f6@FUNCTION, $0, $0, $0, $0, $0, $0, $pop29
- i32.const $41=, __stack_pointer
- i32.load $41=, 0($41)
- i32.const $42=, 40
- i32.add $81=, $41, $42
- i32.const $42=, __stack_pointer
- i32.store $81=, 0($42), $81
- i32.const $43=, __stack_pointer
- i32.load $43=, 0($43)
- i32.const $44=, 36
- i32.sub $81=, $43, $44
- i32.const $44=, __stack_pointer
- i32.store $81=, 0($44), $81
- i64.store $discard=, 0($81):p2align=2, $10
- i32.const $push55=, 32
- i32.add $8=, $81, $pop55
- i32.store $discard=, 0($8), $0
- i32.const $push54=, 24
- i32.add $8=, $81, $pop54
- i64.store $5=, 0($8):p2align=2, $6
- i32.const $push53=, 16
- i32.add $8=, $81, $pop53
- i64.store $6=, 0($8):p2align=2, $7
- i32.const $push52=, 8
- i32.add $8=, $81, $pop52
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push30=, .L.str+7
- call f7@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $pop30
- i32.const $45=, __stack_pointer
- i32.load $45=, 0($45)
- i32.const $46=, 36
- i32.add $81=, $45, $46
- i32.const $46=, __stack_pointer
- i32.store $81=, 0($46), $81
- i32.const $47=, __stack_pointer
- i32.load $47=, 0($47)
- i32.const $48=, 32
- i32.sub $81=, $47, $48
- i32.const $48=, __stack_pointer
- i32.store $81=, 0($48), $81
- i64.store $discard=, 0($81):p2align=2, $4
- i32.const $push51=, 24
- i32.add $8=, $81, $pop51
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push50=, 16
- i32.add $8=, $81, $pop50
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push49=, 8
- i32.add $8=, $81, $pop49
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push31=, .L.str+8
- call f8@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $pop31
- i32.const $49=, __stack_pointer
- i32.load $49=, 0($49)
- i32.const $50=, 32
- i32.add $81=, $49, $50
- i32.const $50=, __stack_pointer
- i32.store $81=, 0($50), $81
- i32.const $51=, __stack_pointer
- i32.load $51=, 0($51)
- i32.const $52=, 28
- i32.sub $81=, $51, $52
- i32.const $52=, __stack_pointer
- i32.store $81=, 0($52), $81
- i64.store $discard=, 0($81):p2align=2, $7
- i32.const $push48=, 24
- i32.add $8=, $81, $pop48
- i32.store $discard=, 0($8), $0
- i32.const $push47=, 16
- i32.add $8=, $81, $pop47
- i64.store $4=, 0($8):p2align=2, $5
- i32.const $push46=, 8
- i32.add $8=, $81, $pop46
- i64.store $5=, 0($8):p2align=2, $6
- i32.const $push32=, .L.str+9
- call f9@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop32
- i32.const $53=, __stack_pointer
- i32.load $53=, 0($53)
- i32.const $54=, 28
- i32.add $81=, $53, $54
- i32.const $54=, __stack_pointer
- i32.store $81=, 0($54), $81
- i32.const $55=, __stack_pointer
- i32.load $55=, 0($55)
- i32.const $56=, 24
- i32.sub $81=, $55, $56
- i32.const $56=, __stack_pointer
- i32.store $81=, 0($56), $81
- i64.store $discard=, 0($81):p2align=2, $3
- i32.const $push45=, 16
- i32.add $8=, $81, $pop45
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push44=, 8
- i32.add $8=, $81, $pop44
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push33=, .L.str+10
- call f10@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop33
- i32.const $57=, __stack_pointer
- i32.load $57=, 0($57)
- i32.const $58=, 24
- i32.add $81=, $57, $58
- i32.const $58=, __stack_pointer
- i32.store $81=, 0($58), $81
- i32.const $59=, __stack_pointer
- i32.load $59=, 0($59)
- i32.const $60=, 20
- i32.sub $81=, $59, $60
- i32.const $60=, __stack_pointer
- i32.store $81=, 0($60), $81
- i64.store $discard=, 0($81):p2align=2, $5
- i32.const $push43=, 16
- i32.add $8=, $81, $pop43
- i32.store $discard=, 0($8), $0
- i32.const $push42=, 8
- i32.add $8=, $81, $pop42
- i64.store $3=, 0($8):p2align=2, $4
- i32.const $push34=, .L.str+11
- call f11@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop34
- i32.const $61=, __stack_pointer
- i32.load $61=, 0($61)
- i32.const $62=, 20
- i32.add $81=, $61, $62
- i32.const $62=, __stack_pointer
- i32.store $81=, 0($62), $81
- i32.const $63=, __stack_pointer
- i32.load $63=, 0($63)
- i32.const $64=, 16
- i32.sub $81=, $63, $64
- i32.const $64=, __stack_pointer
- i32.store $81=, 0($64), $81
- i64.store $discard=, 0($81):p2align=2, $2
- i32.const $push41=, 8
- i32.add $8=, $81, $pop41
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push35=, .L.str+12
- call f12@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop35
- i32.const $65=, __stack_pointer
- i32.load $65=, 0($65)
- i32.const $66=, 16
- i32.add $81=, $65, $66
- i32.const $66=, __stack_pointer
- i32.store $81=, 0($66), $81
- i32.const $67=, __stack_pointer
- i32.load $67=, 0($67)
- i32.const $68=, 12
- i32.sub $81=, $67, $68
- i32.const $68=, __stack_pointer
- i32.store $81=, 0($68), $81
- i64.store $discard=, 0($81):p2align=2, $3
- i32.const $push40=, 8
- i32.add $8=, $81, $pop40
- i32.store $discard=, 0($8), $0
- i32.const $push36=, .L.str+13
- call f13@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop36
- i32.const $69=, __stack_pointer
- i32.load $69=, 0($69)
- i32.const $70=, 12
- i32.add $81=, $69, $70
- i32.const $70=, __stack_pointer
- i32.store $81=, 0($70), $81
- i32.const $71=, __stack_pointer
- i32.load $71=, 0($71)
- i32.const $72=, 8
- i32.sub $81=, $71, $72
- i32.const $72=, __stack_pointer
- i32.store $81=, 0($72), $81
- i64.store $discard=, 0($81):p2align=2, $1
- i32.const $push37=, .L.str+14
- call f14@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop37
- i32.const $73=, __stack_pointer
- i32.load $73=, 0($73)
- i32.const $74=, 8
- i32.add $81=, $73, $74
- i32.const $74=, __stack_pointer
- i32.store $81=, 0($74), $81
- i32.const $75=, __stack_pointer
- i32.load $75=, 0($75)
- i32.const $76=, 4
- i32.sub $81=, $75, $76
- i32.const $76=, __stack_pointer
- i32.store $81=, 0($76), $81
- i32.store $discard=, 0($81), $0
- i32.const $push38=, .L.str+15
- call f15@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop38
- i32.const $77=, __stack_pointer
- i32.load $77=, 0($77)
- i32.const $78=, 4
- i32.add $81=, $77, $78
- i32.const $78=, __stack_pointer
- i32.store $81=, 0($78), $81
- i32.const $push39=, 0
- call exit@FUNCTION, $pop39
+ i32.const $17=, 576
+ i32.add $17=, $87, $17
+ i32.add $push4=, $17, $pop3
+ i64.const $push5=, 55834574860
+ i64.store $1=, 0($pop4):p2align=4, $pop5
+ i32.const $push6=, 40
+ i32.const $18=, 576
+ i32.add $18=, $87, $18
+ i32.add $push7=, $18, $pop6
+ i64.const $push8=, 47244640266
+ i64.store $2=, 0($pop7), $pop8
+ i32.const $push9=, 32
+ i32.const $19=, 576
+ i32.add $19=, $87, $19
+ i32.add $push10=, $19, $pop9
+ i64.const $push11=, 38654705672
+ i64.store $3=, 0($pop10):p2align=4, $pop11
+ i32.const $push12=, 24
+ i32.const $20=, 576
+ i32.add $20=, $87, $20
+ i32.add $push13=, $20, $pop12
+ i64.const $push14=, 30064771078
+ i64.store $4=, 0($pop13), $pop14
+ i32.const $push15=, 16
+ i32.const $21=, 576
+ i32.add $21=, $87, $21
+ i32.add $push16=, $21, $pop15
+ i64.const $push17=, 21474836484
+ i64.store $5=, 0($pop16):p2align=4, $pop17
+ i32.const $push18=, 8
+ i32.const $22=, 576
+ i32.add $22=, $87, $22
+ i32.or $push19=, $22, $pop18
+ i64.const $push20=, 12884901890
+ i64.store $6=, 0($pop19), $pop20
+ i64.const $push21=, 4294967296
+ i64.store $discard=, 576($87):p2align=4, $pop21
+ i32.const $push22=, .L.str
+ i32.const $23=, 576
+ i32.add $23=, $87, $23
+ call f0@FUNCTION, $pop22, $23
+ i32.const $push144=, 56
+ i32.const $24=, 512
+ i32.add $24=, $87, $24
+ i32.add $push23=, $24, $pop144
+ i32.const $push24=, 15
+ i32.store $7=, 0($pop23):p2align=3, $pop24
+ i32.const $push143=, 48
+ i32.const $25=, 512
+ i32.add $25=, $87, $25
+ i32.add $push25=, $25, $pop143
+ i64.const $push26=, 60129542157
+ i64.store $8=, 0($pop25):p2align=4, $pop26
+ i32.const $push142=, 40
+ i32.const $26=, 512
+ i32.add $26=, $87, $26
+ i32.add $push27=, $26, $pop142
+ i64.const $push28=, 51539607563
+ i64.store $9=, 0($pop27), $pop28
+ i32.const $push141=, 32
+ i32.const $27=, 512
+ i32.add $27=, $87, $27
+ i32.add $push29=, $27, $pop141
+ i64.const $push30=, 42949672969
+ i64.store $10=, 0($pop29):p2align=4, $pop30
+ i32.const $push140=, 24
+ i32.const $28=, 512
+ i32.add $28=, $87, $28
+ i32.add $push31=, $28, $pop140
+ i64.const $push32=, 34359738375
+ i64.store $11=, 0($pop31), $pop32
+ i32.const $push139=, 16
+ i32.const $29=, 512
+ i32.add $29=, $87, $29
+ i32.add $push33=, $29, $pop139
+ i64.const $push34=, 25769803781
+ i64.store $12=, 0($pop33):p2align=4, $pop34
+ i32.const $push138=, 8
+ i32.const $30=, 512
+ i32.add $30=, $87, $30
+ i32.or $push35=, $30, $pop138
+ i64.const $push36=, 17179869187
+ i64.store $13=, 0($pop35), $pop36
+ i64.const $push37=, 8589934593
+ i64.store $discard=, 512($87):p2align=4, $pop37
+ i32.const $push38=, .L.str+1
+ i32.const $31=, 512
+ i32.add $31=, $87, $31
+ call f1@FUNCTION, $7, $pop38, $31
+ i32.const $push137=, 48
+ i32.const $32=, 448
+ i32.add $32=, $87, $32
+ i32.add $push39=, $32, $pop137
+ i64.store $discard=, 0($pop39):p2align=4, $0
+ i32.const $push136=, 40
+ i32.const $33=, 448
+ i32.add $33=, $87, $33
+ i32.add $push40=, $33, $pop136
+ i64.store $discard=, 0($pop40), $1
+ i32.const $push135=, 32
+ i32.const $34=, 448
+ i32.add $34=, $87, $34
+ i32.add $push41=, $34, $pop135
+ i64.store $discard=, 0($pop41):p2align=4, $2
+ i32.const $push134=, 24
+ i32.const $35=, 448
+ i32.add $35=, $87, $35
+ i32.add $push42=, $35, $pop134
+ i64.store $discard=, 0($pop42), $3
+ i32.const $push133=, 16
+ i32.const $36=, 448
+ i32.add $36=, $87, $36
+ i32.add $push43=, $36, $pop133
+ i64.store $discard=, 0($pop43):p2align=4, $4
+ i32.const $push132=, 8
+ i32.const $37=, 448
+ i32.add $37=, $87, $37
+ i32.or $push44=, $37, $pop132
+ i64.store $discard=, 0($pop44), $5
+ i64.store $discard=, 448($87):p2align=4, $6
+ i32.const $push45=, .L.str+2
+ i32.const $38=, 448
+ i32.add $38=, $87, $38
+ call f2@FUNCTION, $7, $7, $pop45, $38
+ i32.const $push131=, 48
+ i32.const $39=, 384
+ i32.add $39=, $87, $39
+ i32.add $push46=, $39, $pop131
+ i32.store $discard=, 0($pop46):p2align=4, $7
+ i32.const $push130=, 40
+ i32.const $40=, 384
+ i32.add $40=, $87, $40
+ i32.add $push47=, $40, $pop130
+ i64.store $6=, 0($pop47), $8
+ i32.const $push129=, 32
+ i32.const $41=, 384
+ i32.add $41=, $87, $41
+ i32.add $push48=, $41, $pop129
+ i64.store $8=, 0($pop48):p2align=4, $9
+ i32.const $push128=, 24
+ i32.const $42=, 384
+ i32.add $42=, $87, $42
+ i32.add $push49=, $42, $pop128
+ i64.store $9=, 0($pop49), $10
+ i32.const $push127=, 16
+ i32.const $43=, 384
+ i32.add $43=, $87, $43
+ i32.add $push50=, $43, $pop127
+ i64.store $10=, 0($pop50):p2align=4, $11
+ i32.const $push126=, 8
+ i32.const $44=, 384
+ i32.add $44=, $87, $44
+ i32.or $push51=, $44, $pop126
+ i64.store $11=, 0($pop51), $12
+ i64.store $discard=, 384($87):p2align=4, $13
+ i32.const $push52=, .L.str+3
+ i32.const $45=, 384
+ i32.add $45=, $87, $45
+ call f3@FUNCTION, $7, $7, $7, $pop52, $45
+ i32.const $push125=, 40
+ i32.const $46=, 336
+ i32.add $46=, $87, $46
+ i32.add $push53=, $46, $pop125
+ i64.store $discard=, 0($pop53), $0
+ i32.const $push124=, 32
+ i32.const $47=, 336
+ i32.add $47=, $87, $47
+ i32.add $push54=, $47, $pop124
+ i64.store $discard=, 0($pop54):p2align=4, $1
+ i32.const $push123=, 24
+ i32.const $48=, 336
+ i32.add $48=, $87, $48
+ i32.add $push55=, $48, $pop123
+ i64.store $discard=, 0($pop55), $2
+ i32.const $push122=, 16
+ i32.const $49=, 336
+ i32.add $49=, $87, $49
+ i32.add $push56=, $49, $pop122
+ i64.store $discard=, 0($pop56):p2align=4, $3
+ i32.const $push121=, 8
+ i32.const $50=, 336
+ i32.add $50=, $87, $50
+ i32.or $push57=, $50, $pop121
+ i64.store $discard=, 0($pop57), $4
+ i64.store $discard=, 336($87):p2align=4, $5
+ i32.const $push58=, .L.str+4
+ i32.const $51=, 336
+ i32.add $51=, $87, $51
+ call f4@FUNCTION, $7, $7, $7, $7, $pop58, $51
+ i32.const $push120=, 40
+ i32.const $52=, 288
+ i32.add $52=, $87, $52
+ i32.add $push59=, $52, $pop120
+ i32.store $discard=, 0($pop59):p2align=3, $7
+ i32.const $push119=, 32
+ i32.const $53=, 288
+ i32.add $53=, $87, $53
+ i32.add $push60=, $53, $pop119
+ i64.store $5=, 0($pop60):p2align=4, $6
+ i32.const $push118=, 24
+ i32.const $54=, 288
+ i32.add $54=, $87, $54
+ i32.add $push61=, $54, $pop118
+ i64.store $6=, 0($pop61), $8
+ i32.const $push117=, 16
+ i32.const $55=, 288
+ i32.add $55=, $87, $55
+ i32.add $push62=, $55, $pop117
+ i64.store $8=, 0($pop62):p2align=4, $9
+ i32.const $push116=, 8
+ i32.const $56=, 288
+ i32.add $56=, $87, $56
+ i32.or $push63=, $56, $pop116
+ i64.store $9=, 0($pop63), $10
+ i64.store $discard=, 288($87):p2align=4, $11
+ i32.const $push64=, .L.str+5
+ i32.const $57=, 288
+ i32.add $57=, $87, $57
+ call f5@FUNCTION, $7, $7, $7, $7, $7, $pop64, $57
+ i32.const $push115=, 32
+ i32.const $58=, 240
+ i32.add $58=, $87, $58
+ i32.add $push65=, $58, $pop115
+ i64.store $discard=, 0($pop65):p2align=4, $0
+ i32.const $push114=, 24
+ i32.const $59=, 240
+ i32.add $59=, $87, $59
+ i32.add $push66=, $59, $pop114
+ i64.store $discard=, 0($pop66), $1
+ i32.const $push113=, 16
+ i32.const $60=, 240
+ i32.add $60=, $87, $60
+ i32.add $push67=, $60, $pop113
+ i64.store $discard=, 0($pop67):p2align=4, $2
+ i32.const $push112=, 8
+ i32.const $61=, 240
+ i32.add $61=, $87, $61
+ i32.or $push68=, $61, $pop112
+ i64.store $discard=, 0($pop68), $3
+ i64.store $discard=, 240($87):p2align=4, $4
+ i32.const $push69=, .L.str+6
+ i32.const $62=, 240
+ i32.add $62=, $87, $62
+ call f6@FUNCTION, $7, $7, $7, $7, $7, $7, $pop69, $62
+ i32.const $push111=, 32
+ i32.const $63=, 192
+ i32.add $63=, $87, $63
+ i32.add $push70=, $63, $pop111
+ i32.store $discard=, 0($pop70):p2align=4, $7
+ i32.const $push110=, 24
+ i32.const $64=, 192
+ i32.add $64=, $87, $64
+ i32.add $push71=, $64, $pop110
+ i64.store $4=, 0($pop71), $5
+ i32.const $push109=, 16
+ i32.const $65=, 192
+ i32.add $65=, $87, $65
+ i32.add $push72=, $65, $pop109
+ i64.store $5=, 0($pop72):p2align=4, $6
+ i32.const $push108=, 8
+ i32.const $66=, 192
+ i32.add $66=, $87, $66
+ i32.or $push73=, $66, $pop108
+ i64.store $6=, 0($pop73), $8
+ i64.store $discard=, 192($87):p2align=4, $9
+ i32.const $push74=, .L.str+7
+ i32.const $67=, 192
+ i32.add $67=, $87, $67
+ call f7@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $pop74, $67
+ i32.const $push107=, 24
+ i32.const $68=, 160
+ i32.add $68=, $87, $68
+ i32.add $push75=, $68, $pop107
+ i64.store $discard=, 0($pop75), $0
+ i32.const $push106=, 16
+ i32.const $69=, 160
+ i32.add $69=, $87, $69
+ i32.add $push76=, $69, $pop106
+ i64.store $discard=, 0($pop76):p2align=4, $1
+ i32.const $push105=, 8
+ i32.const $70=, 160
+ i32.add $70=, $87, $70
+ i32.or $push77=, $70, $pop105
+ i64.store $discard=, 0($pop77), $2
+ i64.store $discard=, 160($87):p2align=4, $3
+ i32.const $push78=, .L.str+8
+ i32.const $71=, 160
+ i32.add $71=, $87, $71
+ call f8@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $pop78, $71
+ i32.const $push104=, 24
+ i32.const $72=, 128
+ i32.add $72=, $87, $72
+ i32.add $push79=, $72, $pop104
+ i32.store $discard=, 0($pop79):p2align=3, $7
+ i32.const $push103=, 16
+ i32.const $73=, 128
+ i32.add $73=, $87, $73
+ i32.add $push80=, $73, $pop103
+ i64.store $3=, 0($pop80):p2align=4, $4
+ i32.const $push102=, 8
+ i32.const $74=, 128
+ i32.add $74=, $87, $74
+ i32.or $push81=, $74, $pop102
+ i64.store $4=, 0($pop81), $5
+ i64.store $discard=, 128($87):p2align=4, $6
+ i32.const $push82=, .L.str+9
+ i32.const $75=, 128
+ i32.add $75=, $87, $75
+ call f9@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop82, $75
+ i32.const $push101=, 16
+ i32.const $76=, 96
+ i32.add $76=, $87, $76
+ i32.add $push83=, $76, $pop101
+ i64.store $discard=, 0($pop83):p2align=4, $0
+ i32.const $push100=, 8
+ i32.const $77=, 96
+ i32.add $77=, $87, $77
+ i32.or $push84=, $77, $pop100
+ i64.store $discard=, 0($pop84), $1
+ i64.store $discard=, 96($87):p2align=4, $2
+ i32.const $push85=, .L.str+10
+ i32.const $78=, 96
+ i32.add $78=, $87, $78
+ call f10@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop85, $78
+ i32.const $push99=, 16
+ i32.const $79=, 64
+ i32.add $79=, $87, $79
+ i32.add $push86=, $79, $pop99
+ i32.store $discard=, 0($pop86):p2align=4, $7
+ i32.const $push98=, 8
+ i32.const $80=, 64
+ i32.add $80=, $87, $80
+ i32.or $push87=, $80, $pop98
+ i64.store $2=, 0($pop87), $3
+ i64.store $discard=, 64($87):p2align=4, $4
+ i32.const $push88=, .L.str+11
+ i32.const $81=, 64
+ i32.add $81=, $87, $81
+ call f11@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop88, $81
+ i32.const $push97=, 8
+ i32.const $82=, 48
+ i32.add $82=, $87, $82
+ i32.or $push89=, $82, $pop97
+ i64.store $discard=, 0($pop89), $0
+ i64.store $discard=, 48($87):p2align=4, $1
+ i32.const $push90=, .L.str+12
+ i32.const $83=, 48
+ i32.add $83=, $87, $83
+ call f12@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop90, $83
+ i32.const $push96=, 8
+ i32.const $84=, 32
+ i32.add $84=, $87, $84
+ i32.or $push91=, $84, $pop96
+ i32.store $discard=, 0($pop91):p2align=3, $7
+ i64.store $discard=, 32($87):p2align=4, $2
+ i32.const $push92=, .L.str+13
+ i32.const $85=, 32
+ i32.add $85=, $87, $85
+ call f13@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop92, $85
+ i64.store $discard=, 16($87):p2align=4, $0
+ i32.const $push93=, .L.str+14
+ i32.const $86=, 16
+ i32.add $86=, $87, $86
+ call f14@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop93, $86
+ i32.store $discard=, 0($87):p2align=4, $7
+ i32.const $push94=, .L.str+15
+ call f15@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop94, $87
+ i32.const $push95=, 0
+ call exit@FUNCTION, $pop95
unreachable
.endfunc
.Lfunc_end17:
diff --git a/test/torture-s/va-arg-20.c.s b/test/torture-s/va-arg-20.c.s
index 701fb040d..b74fbc38e 100644
--- a/test/torture-s/va-arg-20.c.s
+++ b/test/torture-s/va-arg-20.c.s
@@ -47,17 +47,16 @@ foo: # @foo
.globl bar
.type bar,@function
bar: # @bar
- .param i32, i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $push0=, 8($6), $7
+ i32.store $push0=, 8($6), $2
i32.store $push1=, 12($6), $pop0
i32.const $push2=, 7
i32.add $push3=, $pop1, $pop2
@@ -74,7 +73,7 @@ bar: # @bar
br_if 0, $pop10 # 0: down to label1
# BB#1: # %foo.exit
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -92,31 +91,19 @@ bar: # @bar
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32
# BB#0: # %entry
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 16
- i32.sub $6=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $6=, 0($5), $6
i32.const $0=, __stack_pointer
i32.load $0=, 0($0)
- i32.const $1=, 8
- i32.sub $6=, $0, $1
+ i32.const $1=, 16
+ i32.sub $2=, $0, $1
i32.const $1=, __stack_pointer
- i32.store $6=, 0($1), $6
+ i32.store $2=, 0($1), $2
i64.const $push0=, 16
- i64.store $discard=, 0($6), $pop0
+ i64.store $discard=, 0($2):p2align=4, $pop0
i32.const $push1=, 0
i32.const $push3=, 0
- call bar@FUNCTION, $pop1, $pop3
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.add $6=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $6=, 0($3), $6
+ call bar@FUNCTION, $pop1, $pop3, $2
i32.const $push2=, 0
call exit@FUNCTION, $pop2
unreachable
diff --git a/test/torture-s/va-arg-21.c.s b/test/torture-s/va-arg-21.c.s
index 3f800eb81..8eb55a1b6 100644
--- a/test/torture-s/va-arg-21.c.s
+++ b/test/torture-s/va-arg-21.c.s
@@ -6,29 +6,17 @@
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
+ i32.store $3=, 0($2), $3
i32.const $push0=, .L.str.1
- i32.store $discard=, 0($7), $pop0
- call doit@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $discard=, 0($3):p2align=4, $pop0
+ call doit@FUNCTION, $0, $3
i32.const $push1=, 0
call exit@FUNCTION, $pop1
unreachable
@@ -39,27 +27,27 @@ main: # @main
.section .text.doit,"ax",@progbits
.type doit,@function
doit: # @doit
- .param i32
- .local i32, i32, i32
+ .param i32, i32
+ .local i32, i32
# BB#0: # %entry
i32.const $push0=, 4
- i32.call $1=, malloc@FUNCTION, $pop0
+ i32.call $2=, malloc@FUNCTION, $pop0
i32.const $push10=, 4
- i32.call $2=, malloc@FUNCTION, $pop10
+ i32.call $3=, malloc@FUNCTION, $pop10
i32.const $push2=, 0
i32.load $push3=, stdout($pop2)
i32.const $push4=, .L.str
- i32.store $push1=, 0($1), $3
+ i32.store $push1=, 0($2), $1
tee_local $push9=, $1=, $pop1
i32.call $discard=, vfprintf@FUNCTION, $pop3, $pop4, $pop9
i32.const $push8=, 0
i32.load $push6=, stdout($pop8)
i32.const $push7=, .L.str
- i32.store $push5=, 0($2), $1
+ i32.store $push5=, 0($3), $1
i32.call $discard=, vfprintf@FUNCTION, $pop6, $pop7, $pop5
block
i32.const $push11=, 0
- i32.eq $push12=, $2, $pop11
+ i32.eq $push12=, $3, $pop11
br_if 0, $pop12 # 0: down to label0
# BB#1: # %if.end
return
diff --git a/test/torture-s/va-arg-23.c.s b/test/torture-s/va-arg-23.c.s
index 2080089f8..740c32f02 100644
--- a/test/torture-s/va-arg-23.c.s
+++ b/test/torture-s/va-arg-23.c.s
@@ -5,17 +5,16 @@
.globl foo
.type foo,@function
foo: # @foo
- .param i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $8=, __stack_pointer
i32.load $8=, 0($8)
i32.const $9=, 16
i32.sub $11=, $8, $9
- copy_local $12=, $11
i32.const $9=, __stack_pointer
i32.store $11=, 0($9), $11
- i32.store $push1=, 12($11), $12
+ i32.store $push1=, 12($11), $7
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
@@ -35,7 +34,7 @@ foo: # @foo
br_if 0, $pop11 # 0: down to label0
# BB#2: # %if.end
i32.const $10=, 16
- i32.add $11=, $12, $10
+ i32.add $11=, $11, $10
i32.const $10=, __stack_pointer
i32.store $11=, 0($10), $11
return
@@ -53,39 +52,27 @@ foo: # @foo
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 32
- i32.sub $9=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $9=, 0($6), $9
- i64.load $push0=, 24($9)
- i64.store $discard=, 16($9):p2align=2, $pop0
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $9=, $1, $2
+ i32.const $2=, 32
+ i32.sub $5=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $9=, 0($2), $9
+ i32.store $5=, 0($2), $5
+ i64.load $push0=, 24($5)
+ i64.store $discard=, 16($5):p2align=2, $pop0
i32.const $push1=, 2
- i32.store $discard=, 0($9), $pop1
+ i32.store $discard=, 0($5):p2align=4, $pop1
i32.const $push2=, 1
- i32.const $8=, 16
- i32.add $8=, $9, $8
- call foo@FUNCTION, $0, $0, $0, $0, $0, $8, $pop2
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $9=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $9=, 0($4), $9
+ i32.const $4=, 16
+ i32.add $4=, $5, $4
+ call foo@FUNCTION, $0, $0, $0, $0, $0, $4, $pop2, $5
i32.const $push3=, 0
- i32.const $7=, 32
- i32.add $9=, $9, $7
- i32.const $7=, __stack_pointer
- i32.store $9=, 0($7), $9
+ i32.const $3=, 32
+ i32.add $5=, $5, $3
+ i32.const $3=, __stack_pointer
+ i32.store $5=, 0($3), $5
return $pop3
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-24.c.s b/test/torture-s/va-arg-24.c.s
index 5e36dd62f..089ceb44a 100644
--- a/test/torture-s/va-arg-24.c.s
+++ b/test/torture-s/va-arg-24.c.s
@@ -6,231 +6,169 @@
.type main,@function
main: # @main
.result i32
- .local i32, i64, i64, i64, i64, i32, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i64, i64, i64, i64, i32, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $49=, __stack_pointer
- i32.load $49=, 0($49)
- i32.const $50=, 48
- i32.sub $51=, $49, $50
- i32.const $50=, __stack_pointer
- i32.store $51=, 0($50), $51
+ i32.const $8=, __stack_pointer
+ i32.load $8=, 0($8)
+ i32.const $9=, 288
+ i32.sub $39=, $8, $9
i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 40
- i32.sub $51=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $51=, 0($10), $51
- i64.const $push0=, 8589934593
- i64.store $discard=, 0($51):p2align=2, $pop0
- i32.const $push1=, 32
- i32.add $0=, $51, $pop1
+ i32.store $39=, 0($9), $39
+ i32.const $push0=, 32
+ i32.const $10=, 240
+ i32.add $10=, $39, $10
+ i32.add $push1=, $10, $pop0
i64.const $push2=, 42949672969
- i64.store $1=, 0($0):p2align=2, $pop2
+ i64.store $0=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 24
- i32.add $0=, $51, $pop3
- i64.const $push4=, 34359738375
- i64.store $2=, 0($0):p2align=2, $pop4
- i32.const $push5=, 16
- i32.add $0=, $51, $pop5
- i64.const $push6=, 25769803781
- i64.store $3=, 0($0):p2align=2, $pop6
- i32.const $push7=, 8
- i32.add $0=, $51, $pop7
- i64.const $push8=, 17179869187
- i64.store $4=, 0($0):p2align=2, $pop8
- call varargs0@FUNCTION, $0
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 40
- i32.add $51=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $51=, 0($12), $51
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 36
- i32.sub $51=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $51=, 0($14), $51
- i64.const $push9=, 12884901890
- i64.store $discard=, 0($51):p2align=2, $pop9
- i32.const $push31=, 32
- i32.add $0=, $51, $pop31
- i32.const $push10=, 10
- i32.store $0=, 0($0), $pop10
- i32.const $push30=, 24
- i32.add $5=, $51, $pop30
- i64.const $push11=, 38654705672
- i64.store $6=, 0($5):p2align=2, $pop11
- i32.const $push29=, 16
- i32.add $5=, $51, $pop29
- i64.const $push12=, 30064771078
- i64.store $7=, 0($5):p2align=2, $pop12
- i32.const $push28=, 8
- i32.add $5=, $51, $pop28
- i64.const $push13=, 21474836484
- i64.store $8=, 0($5):p2align=2, $pop13
- call varargs1@FUNCTION, $0, $0
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 36
- i32.add $51=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $51=, 0($16), $51
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 32
- i32.sub $51=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $51=, 0($18), $51
- i64.store $discard=, 0($51):p2align=2, $4
- i32.const $push27=, 24
- i32.add $5=, $51, $pop27
- i64.store $discard=, 0($5):p2align=2, $1
- i32.const $push26=, 16
- i32.add $5=, $51, $pop26
- i64.store $discard=, 0($5):p2align=2, $2
- i32.const $push25=, 8
- i32.add $5=, $51, $pop25
- i64.store $discard=, 0($5):p2align=2, $3
- call varargs2@FUNCTION, $0, $0, $0
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 32
- i32.add $51=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $51=, 0($20), $51
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 28
- i32.sub $51=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $51=, 0($22), $51
- i64.store $discard=, 0($51):p2align=2, $8
- i32.const $push24=, 24
- i32.add $5=, $51, $pop24
- i32.store $discard=, 0($5), $0
- i32.const $push23=, 16
- i32.add $5=, $51, $pop23
- i64.store $4=, 0($5):p2align=2, $6
- i32.const $push22=, 8
- i32.add $5=, $51, $pop22
- i64.store $6=, 0($5):p2align=2, $7
- call varargs3@FUNCTION, $0, $0, $0, $0
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 28
- i32.add $51=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $51=, 0($24), $51
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 24
- i32.sub $51=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $51=, 0($26), $51
- i64.store $discard=, 0($51):p2align=2, $3
- i32.const $push21=, 16
- i32.add $5=, $51, $pop21
- i64.store $discard=, 0($5):p2align=2, $1
- i32.const $push20=, 8
- i32.add $5=, $51, $pop20
- i64.store $discard=, 0($5):p2align=2, $2
- call varargs4@FUNCTION, $0, $0, $0, $0, $0
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 24
- i32.add $51=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $51=, 0($28), $51
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 20
- i32.sub $51=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $51=, 0($30), $51
- i64.store $discard=, 0($51):p2align=2, $6
- i32.const $push19=, 16
- i32.add $5=, $51, $pop19
- i32.store $discard=, 0($5), $0
- i32.const $push18=, 8
- i32.add $5=, $51, $pop18
- i64.store $3=, 0($5):p2align=2, $4
- call varargs5@FUNCTION, $0, $0, $0, $0, $0, $0
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 20
- i32.add $51=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $51=, 0($32), $51
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 16
- i32.sub $51=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $51=, 0($34), $51
- i64.store $discard=, 0($51):p2align=2, $2
- i32.const $push17=, 8
- i32.add $5=, $51, $pop17
- i64.store $discard=, 0($5):p2align=2, $1
- call varargs6@FUNCTION, $0, $0, $0, $0, $0, $0, $0
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 16
- i32.add $51=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $51=, 0($36), $51
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 12
- i32.sub $51=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $51=, 0($38), $51
- i64.store $discard=, 0($51):p2align=2, $3
- i32.const $push16=, 8
- i32.add $5=, $51, $pop16
- i32.store $discard=, 0($5), $0
- call varargs7@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0
- i32.const $39=, __stack_pointer
- i32.load $39=, 0($39)
- i32.const $40=, 12
- i32.add $51=, $39, $40
- i32.const $40=, __stack_pointer
- i32.store $51=, 0($40), $51
- i32.const $41=, __stack_pointer
- i32.load $41=, 0($41)
- i32.const $42=, 8
- i32.sub $51=, $41, $42
- i32.const $42=, __stack_pointer
- i32.store $51=, 0($42), $51
- i64.store $discard=, 0($51):p2align=2, $1
- call varargs8@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0
- i32.const $43=, __stack_pointer
- i32.load $43=, 0($43)
- i32.const $44=, 8
- i32.add $51=, $43, $44
- i32.const $44=, __stack_pointer
- i32.store $51=, 0($44), $51
- i32.const $45=, __stack_pointer
- i32.load $45=, 0($45)
- i32.const $46=, 4
- i32.sub $51=, $45, $46
- i32.const $46=, __stack_pointer
- i32.store $51=, 0($46), $51
- i32.store $discard=, 0($51), $0
- call varargs9@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0
- i32.const $47=, __stack_pointer
- i32.load $47=, 0($47)
- i32.const $48=, 4
- i32.add $51=, $47, $48
- i32.const $48=, __stack_pointer
- i32.store $51=, 0($48), $51
+ i32.const $11=, 240
+ i32.add $11=, $39, $11
+ i32.add $push4=, $11, $pop3
+ i64.const $push5=, 34359738375
+ i64.store $1=, 0($pop4), $pop5
+ i32.const $push6=, 16
+ i32.const $12=, 240
+ i32.add $12=, $39, $12
+ i32.add $push7=, $12, $pop6
+ i64.const $push8=, 25769803781
+ i64.store $2=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 8
+ i32.const $13=, 240
+ i32.add $13=, $39, $13
+ i32.or $push10=, $13, $pop9
+ i64.const $push11=, 17179869187
+ i64.store $3=, 0($pop10), $pop11
+ i64.const $push12=, 8589934593
+ i64.store $discard=, 240($39):p2align=4, $pop12
+ i32.const $14=, 240
+ i32.add $14=, $39, $14
+ call varargs0@FUNCTION, $4, $14
+ i32.const $push51=, 32
+ i32.const $15=, 192
+ i32.add $15=, $39, $15
+ i32.add $push13=, $15, $pop51
+ i32.const $push14=, 10
+ i32.store $4=, 0($pop13):p2align=4, $pop14
+ i32.const $push50=, 24
+ i32.const $16=, 192
+ i32.add $16=, $39, $16
+ i32.add $push15=, $16, $pop50
+ i64.const $push16=, 38654705672
+ i64.store $5=, 0($pop15), $pop16
+ i32.const $push49=, 16
+ i32.const $17=, 192
+ i32.add $17=, $39, $17
+ i32.add $push17=, $17, $pop49
+ i64.const $push18=, 30064771078
+ i64.store $6=, 0($pop17):p2align=4, $pop18
+ i32.const $push48=, 8
+ i32.const $18=, 192
+ i32.add $18=, $39, $18
+ i32.or $push19=, $18, $pop48
+ i64.const $push20=, 21474836484
+ i64.store $7=, 0($pop19), $pop20
+ i64.const $push21=, 12884901890
+ i64.store $discard=, 192($39):p2align=4, $pop21
+ i32.const $19=, 192
+ i32.add $19=, $39, $19
+ call varargs1@FUNCTION, $4, $4, $19
+ i32.const $push47=, 24
+ i32.const $20=, 160
+ i32.add $20=, $39, $20
+ i32.add $push22=, $20, $pop47
+ i64.store $discard=, 0($pop22), $0
+ i32.const $push46=, 16
+ i32.const $21=, 160
+ i32.add $21=, $39, $21
+ i32.add $push23=, $21, $pop46
+ i64.store $discard=, 0($pop23):p2align=4, $1
+ i32.const $push45=, 8
+ i32.const $22=, 160
+ i32.add $22=, $39, $22
+ i32.or $push24=, $22, $pop45
+ i64.store $discard=, 0($pop24), $2
+ i64.store $discard=, 160($39):p2align=4, $3
+ i32.const $23=, 160
+ i32.add $23=, $39, $23
+ call varargs2@FUNCTION, $4, $4, $4, $23
+ i32.const $push44=, 24
+ i32.const $24=, 128
+ i32.add $24=, $39, $24
+ i32.add $push25=, $24, $pop44
+ i32.store $discard=, 0($pop25):p2align=3, $4
+ i32.const $push43=, 16
+ i32.const $25=, 128
+ i32.add $25=, $39, $25
+ i32.add $push26=, $25, $pop43
+ i64.store $3=, 0($pop26):p2align=4, $5
+ i32.const $push42=, 8
+ i32.const $26=, 128
+ i32.add $26=, $39, $26
+ i32.or $push27=, $26, $pop42
+ i64.store $5=, 0($pop27), $6
+ i64.store $discard=, 128($39):p2align=4, $7
+ i32.const $27=, 128
+ i32.add $27=, $39, $27
+ call varargs3@FUNCTION, $4, $4, $4, $4, $27
+ i32.const $push41=, 16
+ i32.const $28=, 96
+ i32.add $28=, $39, $28
+ i32.add $push28=, $28, $pop41
+ i64.store $discard=, 0($pop28):p2align=4, $0
+ i32.const $push40=, 8
+ i32.const $29=, 96
+ i32.add $29=, $39, $29
+ i32.or $push29=, $29, $pop40
+ i64.store $discard=, 0($pop29), $1
+ i64.store $discard=, 96($39):p2align=4, $2
+ i32.const $30=, 96
+ i32.add $30=, $39, $30
+ call varargs4@FUNCTION, $4, $4, $4, $4, $4, $30
+ i32.const $push39=, 16
+ i32.const $31=, 64
+ i32.add $31=, $39, $31
+ i32.add $push30=, $31, $pop39
+ i32.store $discard=, 0($pop30):p2align=4, $4
+ i32.const $push38=, 8
+ i32.const $32=, 64
+ i32.add $32=, $39, $32
+ i32.or $push31=, $32, $pop38
+ i64.store $2=, 0($pop31), $3
+ i64.store $discard=, 64($39):p2align=4, $5
+ i32.const $33=, 64
+ i32.add $33=, $39, $33
+ call varargs5@FUNCTION, $4, $4, $4, $4, $4, $4, $33
+ i32.const $push37=, 8
+ i32.const $34=, 48
+ i32.add $34=, $39, $34
+ i32.or $push32=, $34, $pop37
+ i64.store $discard=, 0($pop32), $0
+ i64.store $discard=, 48($39):p2align=4, $1
+ i32.const $35=, 48
+ i32.add $35=, $39, $35
+ call varargs6@FUNCTION, $4, $4, $4, $4, $4, $4, $4, $35
+ i32.const $push36=, 8
+ i32.const $36=, 32
+ i32.add $36=, $39, $36
+ i32.or $push33=, $36, $pop36
+ i32.store $discard=, 0($pop33):p2align=3, $4
+ i64.store $discard=, 32($39):p2align=4, $2
+ i32.const $37=, 32
+ i32.add $37=, $39, $37
+ call varargs7@FUNCTION, $4, $4, $4, $4, $4, $4, $4, $4, $37
+ i64.store $discard=, 16($39):p2align=4, $0
+ i32.const $38=, 16
+ i32.add $38=, $39, $38
+ call varargs8@FUNCTION, $4, $4, $4, $4, $4, $4, $4, $4, $4, $38
+ i32.store $discard=, 0($39):p2align=4, $4
+ call varargs9@FUNCTION, $4, $4, $4, $4, $4, $4, $4, $4, $4, $4, $39
block
- i32.const $push15=, 0
- i32.load $push14=, errors($pop15)
- br_if 0, $pop14 # 0: down to label0
+ i32.const $push35=, 0
+ i32.load $push34=, errors($pop35)
+ br_if 0, $pop34 # 0: down to label0
# BB#1: # %if.end
- i32.const $push32=, 0
- call exit@FUNCTION, $pop32
+ i32.const $push52=, 0
+ call exit@FUNCTION, $pop52
unreachable
.LBB0_2: # %if.then
end_block # label0:
@@ -243,192 +181,179 @@ main: # @main
.section .text.varargs0,"ax",@progbits
.type varargs0,@function
varargs0: # @varargs0
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 64
- i32.sub $17=, $11, $12
- copy_local $18=, $17
- i32.const $12=, __stack_pointer
- i32.store $17=, 0($12), $17
- i32.store $discard=, 60($17), $18
- i32.load $push1=, 60($17)
+ i32.const $6=, __stack_pointer
+ i32.load $6=, 0($6)
+ i32.const $7=, 64
+ i32.sub $12=, $6, $7
+ i32.const $7=, __stack_pointer
+ i32.store $12=, 0($7), $12
+ i32.store $discard=, 60($12), $1
+ i32.load $push1=, 60($12)
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
i32.and $push5=, $pop3, $pop4
- tee_local $push92=, $5=, $pop5
- i32.const $push91=, 4
- i32.add $push6=, $pop92, $pop91
- i32.store $discard=, 60($17), $pop6
+ tee_local $push95=, $1=, $pop5
+ i32.const $push94=, 4
+ i32.add $push6=, $pop95, $pop94
+ i32.store $discard=, 60($12), $pop6
i32.const $push0=, 0
- i32.store $1=, 16($17):p2align=4, $pop0
- i32.const $push90=, 4
- i32.const $14=, 16
- i32.add $14=, $17, $14
- i32.or $push51=, $14, $pop90
- tee_local $push89=, $6=, $pop51
- i32.load $push7=, 0($5)
- i32.store $discard=, 0($pop89), $pop7
+ i32.store $2=, 16($12):p2align=4, $pop0
+ i32.const $push93=, 4
+ i32.const $9=, 16
+ i32.add $9=, $12, $9
+ i32.or $push54=, $9, $pop93
+ tee_local $push92=, $5=, $pop54
+ i32.load $push7=, 0($1)
+ i32.store $discard=, 0($pop92), $pop7
i32.const $push8=, 7
- i32.add $push9=, $5, $pop8
- i32.const $push88=, -4
- i32.and $push10=, $pop9, $pop88
- tee_local $push87=, $5=, $pop10
- i32.const $push86=, 4
- i32.add $push11=, $pop87, $pop86
- i32.store $discard=, 60($17), $pop11
- i32.const $push85=, 8
- i32.const $15=, 16
- i32.add $15=, $17, $15
- i32.or $push13=, $15, $pop85
- i32.load $push12=, 0($5)
+ i32.add $push9=, $1, $pop8
+ i32.const $push91=, -4
+ i32.and $push10=, $pop9, $pop91
+ tee_local $push90=, $1=, $pop10
+ i32.const $push89=, 4
+ i32.add $push11=, $pop90, $pop89
+ i32.store $discard=, 60($12), $pop11
+ i32.const $push88=, 8
+ i32.const $10=, 16
+ i32.add $10=, $12, $10
+ i32.or $push13=, $10, $pop88
+ i32.load $push12=, 0($1)
i32.store $discard=, 0($pop13):p2align=3, $pop12
- i32.const $push84=, 7
- i32.add $push14=, $5, $pop84
- i32.const $push83=, -4
- i32.and $push15=, $pop14, $pop83
- tee_local $push82=, $5=, $pop15
- i32.const $push81=, 4
- i32.add $push16=, $pop82, $pop81
- i32.store $discard=, 60($17), $pop16
- i32.const $push80=, 12
- i32.const $16=, 16
- i32.add $16=, $17, $16
- i32.or $push18=, $16, $pop80
- i32.load $push17=, 0($5)
+ i32.const $push87=, 7
+ i32.add $push14=, $1, $pop87
+ i32.const $push86=, -4
+ i32.and $push15=, $pop14, $pop86
+ tee_local $push85=, $1=, $pop15
+ i32.const $push84=, 4
+ i32.add $push16=, $pop85, $pop84
+ i32.store $discard=, 60($12), $pop16
+ i32.const $push83=, 12
+ i32.const $11=, 16
+ i32.add $11=, $12, $11
+ i32.or $push18=, $11, $pop83
+ i32.load $push17=, 0($1)
i32.store $discard=, 0($pop18), $pop17
- i32.const $push79=, 7
- i32.add $push19=, $5, $pop79
- i32.const $push78=, -4
- i32.and $push20=, $pop19, $pop78
- tee_local $push77=, $5=, $pop20
- i32.const $push76=, 4
- i32.add $push21=, $pop77, $pop76
- i32.store $discard=, 60($17), $pop21
- i32.load $push22=, 0($5)
- i32.store $discard=, 32($17):p2align=4, $pop22
- i32.const $push75=, 7
- i32.add $push23=, $5, $pop75
- i32.const $push74=, -4
- i32.and $push24=, $pop23, $pop74
- tee_local $push73=, $5=, $pop24
- i32.const $push72=, 4
- i32.add $push25=, $pop73, $pop72
- i32.store $discard=, 60($17), $pop25
- i32.load $push26=, 0($5)
- i32.store $discard=, 36($17), $pop26
- i32.const $push71=, 7
- i32.add $push27=, $5, $pop71
- i32.const $push70=, -4
- i32.and $push28=, $pop27, $pop70
- tee_local $push69=, $5=, $pop28
- i32.const $push68=, 4
- i32.add $push29=, $pop69, $pop68
- i32.store $discard=, 60($17), $pop29
- i32.load $push30=, 0($5)
- i32.store $discard=, 40($17):p2align=3, $pop30
- i32.const $push67=, 7
- i32.add $push31=, $5, $pop67
- i32.const $push66=, -4
- i32.and $push32=, $pop31, $pop66
- tee_local $push65=, $5=, $pop32
- i32.const $push64=, 4
- i32.add $push33=, $pop65, $pop64
- i32.store $discard=, 60($17), $pop33
- i32.load $push34=, 0($5)
- i32.store $discard=, 44($17), $pop34
- i32.const $push63=, 7
- i32.add $push35=, $5, $pop63
- i32.const $push62=, -4
- i32.and $push36=, $pop35, $pop62
- tee_local $push61=, $5=, $pop36
- i32.const $push60=, 4
- i32.add $push37=, $pop61, $pop60
- i32.store $discard=, 60($17), $pop37
- i32.load $push38=, 0($5)
- i32.store $discard=, 48($17):p2align=4, $pop38
- i32.const $push59=, 7
- i32.add $push39=, $5, $pop59
- i32.const $push58=, -4
- i32.and $push40=, $pop39, $pop58
- tee_local $push57=, $5=, $pop40
- i32.const $push56=, 4
- i32.add $push41=, $pop57, $pop56
- i32.store $discard=, 60($17), $pop41
- i32.load $push42=, 0($5)
- i32.store $discard=, 52($17), $pop42
- i32.const $push55=, 7
- i32.add $push43=, $5, $pop55
- i32.const $push54=, -4
- i32.and $push44=, $pop43, $pop54
- tee_local $push53=, $5=, $pop44
- i32.const $push52=, 4
- i32.add $push45=, $pop53, $pop52
- i32.store $discard=, 60($17), $pop45
- i32.load $push46=, 0($5)
- i32.store $discard=, 56($17):p2align=3, $pop46
- copy_local $4=, $1
- copy_local $5=, $1
+ i32.const $push82=, 7
+ i32.add $push19=, $1, $pop82
+ i32.const $push81=, -4
+ i32.and $push20=, $pop19, $pop81
+ tee_local $push80=, $1=, $pop20
+ i32.const $push79=, 4
+ i32.add $push21=, $pop80, $pop79
+ i32.store $discard=, 60($12), $pop21
+ i32.load $push22=, 0($1)
+ i32.store $discard=, 32($12):p2align=4, $pop22
+ i32.const $push78=, 7
+ i32.add $push23=, $1, $pop78
+ i32.const $push77=, -4
+ i32.and $push24=, $pop23, $pop77
+ tee_local $push76=, $1=, $pop24
+ i32.const $push75=, 4
+ i32.add $push25=, $pop76, $pop75
+ i32.store $discard=, 60($12), $pop25
+ i32.load $push26=, 0($1)
+ i32.store $discard=, 36($12), $pop26
+ i32.const $push74=, 7
+ i32.add $push27=, $1, $pop74
+ i32.const $push73=, -4
+ i32.and $push28=, $pop27, $pop73
+ tee_local $push72=, $1=, $pop28
+ i32.const $push71=, 4
+ i32.add $push29=, $pop72, $pop71
+ i32.store $discard=, 60($12), $pop29
+ i32.load $push30=, 0($1)
+ i32.store $discard=, 40($12):p2align=3, $pop30
+ i32.const $push70=, 7
+ i32.add $push31=, $1, $pop70
+ i32.const $push69=, -4
+ i32.and $push32=, $pop31, $pop69
+ tee_local $push68=, $1=, $pop32
+ i32.const $push67=, 4
+ i32.add $push33=, $pop68, $pop67
+ i32.store $discard=, 60($12), $pop33
+ i32.load $push34=, 0($1)
+ i32.store $discard=, 44($12), $pop34
+ i32.const $push66=, 7
+ i32.add $push35=, $1, $pop66
+ i32.const $push65=, -4
+ i32.and $push36=, $pop35, $pop65
+ tee_local $push64=, $1=, $pop36
+ i32.const $push63=, 4
+ i32.add $push37=, $pop64, $pop63
+ i32.store $discard=, 60($12), $pop37
+ i32.load $push38=, 0($1)
+ i32.store $discard=, 48($12):p2align=4, $pop38
+ i32.const $push62=, 7
+ i32.add $push39=, $1, $pop62
+ i32.const $push61=, -4
+ i32.and $push40=, $pop39, $pop61
+ tee_local $push60=, $1=, $pop40
+ i32.const $push59=, 4
+ i32.add $push41=, $pop60, $pop59
+ i32.store $discard=, 60($12), $pop41
+ i32.load $push42=, 0($1)
+ i32.store $discard=, 52($12), $pop42
+ i32.const $push58=, 7
+ i32.add $push43=, $1, $pop58
+ i32.const $push57=, -4
+ i32.and $push44=, $pop43, $pop57
+ tee_local $push56=, $1=, $pop44
+ i32.const $push55=, 4
+ i32.add $push45=, $pop56, $pop55
+ i32.store $discard=, 60($12), $pop45
+ i32.load $push46=, 0($1)
+ i32.store $discard=, 56($12):p2align=3, $pop46
+ copy_local $4=, $2
+ copy_local $1=, $2
.LBB1_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label1:
block
- i32.eq $push47=, $5, $4
+ i32.eq $push47=, $1, $4
br_if 0, $pop47 # 0: down to label3
# BB#2: # %if.then.i
# in Loop: Header=BB1_1 Depth=1
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 16
- i32.sub $17=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $17=, 0($8), $17
+ i32.const $push101=, 12
+ i32.or $push48=, $12, $pop101
+ i32.store $3=, 0($pop48), $1
+ i32.const $push100=, 8
+ i32.or $push49=, $12, $pop100
+ i32.store $discard=, 0($pop49):p2align=3, $4
+ i32.const $push99=, 4
+ i32.or $push50=, $12, $pop99
+ i32.store $discard=, 0($pop50), $3
i32.const $push98=, .L.str
- i32.store $discard=, 0($17), $pop98
- i32.const $push97=, 12
- i32.add $2=, $17, $pop97
- i32.store $2=, 0($2), $5
- i32.const $push96=, 8
- i32.add $3=, $17, $pop96
- i32.store $discard=, 0($3), $4
- i32.const $push95=, 4
- i32.add $4=, $17, $pop95
- i32.store $discard=, 0($4), $2
- i32.const $push94=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop94
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 16
- i32.add $17=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $17=, 0($10), $17
- i32.load $push48=, errors($1)
- i32.const $push93=, 1
- i32.add $push49=, $pop48, $pop93
- i32.store $discard=, errors($1), $pop49
+ i32.store $discard=, 0($12):p2align=4, $pop98
+ i32.const $push97=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop97, $12
+ i32.load $push51=, errors($2)
+ i32.const $push96=, 1
+ i32.add $push52=, $pop51, $pop96
+ i32.store $discard=, errors($2), $pop52
.LBB1_3: # %for.inc.i
# in Loop: Header=BB1_1 Depth=1
end_block # label3:
- i32.const $push99=, 10
- i32.eq $push50=, $5, $pop99
- br_if 1, $pop50 # 1: down to label2
+ i32.const $push102=, 10
+ i32.eq $push53=, $1, $pop102
+ br_if 1, $pop53 # 1: down to label2
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB1_1 Depth=1
- i32.load $4=, 0($6)
- i32.const $push101=, 1
- i32.add $5=, $5, $pop101
- i32.const $push100=, 4
- i32.add $6=, $6, $pop100
+ i32.load $4=, 0($5)
+ i32.const $push104=, 1
+ i32.add $1=, $1, $pop104
+ i32.const $push103=, 4
+ i32.add $5=, $5, $pop103
br 0 # 0: up to label1
.LBB1_5: # %verify.exit
end_loop # label2:
- i32.const $13=, 64
- i32.add $17=, $18, $13
- i32.const $13=, __stack_pointer
- i32.store $17=, 0($13), $17
+ i32.const $8=, 64
+ i32.add $12=, $12, $8
+ i32.const $8=, __stack_pointer
+ i32.store $12=, 0($8), $12
return
.endfunc
.Lfunc_end1:
@@ -437,183 +362,170 @@ varargs0: # @varargs0
.section .text.varargs1,"ax",@progbits
.type varargs1,@function
varargs1: # @varargs1
- .param i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 64
- i32.sub $17=, $11, $12
- copy_local $18=, $17
- i32.const $12=, __stack_pointer
- i32.store $17=, 0($12), $17
- i32.store $discard=, 60($17), $18
- i32.load $push1=, 60($17)
+ i32.const $6=, __stack_pointer
+ i32.load $6=, 0($6)
+ i32.const $7=, 64
+ i32.sub $12=, $6, $7
+ i32.const $7=, __stack_pointer
+ i32.store $12=, 0($7), $12
+ i32.store $discard=, 60($12), $2
+ i32.load $push1=, 60($12)
i32.const $push2=, 3
i32.add $push3=, $pop1, $pop2
i32.const $push4=, -4
i32.and $push5=, $pop3, $pop4
- tee_local $push82=, $6=, $pop5
- i32.const $push81=, 4
- i32.add $push6=, $pop82, $pop81
- i32.store $discard=, 60($17), $pop6
+ tee_local $push85=, $2=, $pop5
+ i32.const $push84=, 4
+ i32.add $push6=, $pop85, $pop84
+ i32.store $discard=, 60($12), $pop6
i64.const $push0=, 4294967296
- i64.store $discard=, 16($17):p2align=4, $pop0
- i32.const $push80=, 8
- i32.const $14=, 16
- i32.add $14=, $17, $14
- i32.or $push8=, $14, $pop80
- i32.load $push7=, 0($6)
+ i64.store $discard=, 16($12):p2align=4, $pop0
+ i32.const $push83=, 8
+ i32.const $9=, 16
+ i32.add $9=, $12, $9
+ i32.or $push8=, $9, $pop83
+ i32.load $push7=, 0($2)
i32.store $discard=, 0($pop8):p2align=3, $pop7
i32.const $push9=, 7
- i32.add $push10=, $6, $pop9
- i32.const $push79=, -4
- i32.and $push11=, $pop10, $pop79
- tee_local $push78=, $6=, $pop11
- i32.const $push77=, 4
- i32.add $push12=, $pop78, $pop77
- i32.store $discard=, 60($17), $pop12
- i32.const $push76=, 12
- i32.const $15=, 16
- i32.add $15=, $17, $15
- i32.or $push14=, $15, $pop76
- i32.load $push13=, 0($6)
+ i32.add $push10=, $2, $pop9
+ i32.const $push82=, -4
+ i32.and $push11=, $pop10, $pop82
+ tee_local $push81=, $2=, $pop11
+ i32.const $push80=, 4
+ i32.add $push12=, $pop81, $pop80
+ i32.store $discard=, 60($12), $pop12
+ i32.const $push79=, 12
+ i32.const $10=, 16
+ i32.add $10=, $12, $10
+ i32.or $push14=, $10, $pop79
+ i32.load $push13=, 0($2)
i32.store $discard=, 0($pop14), $pop13
- i32.const $push75=, 7
- i32.add $push15=, $6, $pop75
- i32.const $push74=, -4
- i32.and $push16=, $pop15, $pop74
- tee_local $push73=, $6=, $pop16
- i32.const $push72=, 4
- i32.add $push17=, $pop73, $pop72
- i32.store $discard=, 60($17), $pop17
- i32.load $push18=, 0($6)
- i32.store $discard=, 32($17):p2align=4, $pop18
- i32.const $push71=, 7
- i32.add $push19=, $6, $pop71
- i32.const $push70=, -4
- i32.and $push20=, $pop19, $pop70
- tee_local $push69=, $6=, $pop20
- i32.const $push68=, 4
- i32.add $push21=, $pop69, $pop68
- i32.store $discard=, 60($17), $pop21
- i32.load $push22=, 0($6)
- i32.store $discard=, 36($17), $pop22
- i32.const $push67=, 7
- i32.add $push23=, $6, $pop67
- i32.const $push66=, -4
- i32.and $push24=, $pop23, $pop66
- tee_local $push65=, $6=, $pop24
- i32.const $push64=, 4
- i32.add $push25=, $pop65, $pop64
- i32.store $discard=, 60($17), $pop25
- i32.load $push26=, 0($6)
- i32.store $discard=, 40($17):p2align=3, $pop26
- i32.const $push63=, 7
- i32.add $push27=, $6, $pop63
- i32.const $push62=, -4
- i32.and $push28=, $pop27, $pop62
- tee_local $push61=, $6=, $pop28
- i32.const $push60=, 4
- i32.add $push29=, $pop61, $pop60
- i32.store $discard=, 60($17), $pop29
- i32.load $push30=, 0($6)
- i32.store $discard=, 44($17), $pop30
- i32.const $push59=, 7
- i32.add $push31=, $6, $pop59
- i32.const $push58=, -4
- i32.and $push32=, $pop31, $pop58
- tee_local $push57=, $6=, $pop32
- i32.const $push56=, 4
- i32.add $push33=, $pop57, $pop56
- i32.store $discard=, 60($17), $pop33
- i32.load $push34=, 0($6)
- i32.store $discard=, 48($17):p2align=4, $pop34
- i32.const $push55=, 7
- i32.add $push35=, $6, $pop55
- i32.const $push54=, -4
- i32.and $push36=, $pop35, $pop54
- tee_local $push53=, $6=, $pop36
- i32.const $push52=, 4
- i32.add $push37=, $pop53, $pop52
- i32.store $discard=, 60($17), $pop37
- i32.load $push38=, 0($6)
- i32.store $discard=, 52($17), $pop38
- i32.const $push51=, 7
- i32.add $push39=, $6, $pop51
- i32.const $push50=, -4
- i32.and $push40=, $pop39, $pop50
- tee_local $push49=, $6=, $pop40
- i32.const $push48=, 4
- i32.add $push41=, $pop49, $pop48
- i32.store $discard=, 60($17), $pop41
- i32.load $push42=, 0($6)
- i32.store $discard=, 56($17):p2align=3, $pop42
- i32.const $push47=, 4
- i32.const $16=, 16
- i32.add $16=, $17, $16
- i32.or $4=, $16, $pop47
+ i32.const $push78=, 7
+ i32.add $push15=, $2, $pop78
+ i32.const $push77=, -4
+ i32.and $push16=, $pop15, $pop77
+ tee_local $push76=, $2=, $pop16
+ i32.const $push75=, 4
+ i32.add $push17=, $pop76, $pop75
+ i32.store $discard=, 60($12), $pop17
+ i32.load $push18=, 0($2)
+ i32.store $discard=, 32($12):p2align=4, $pop18
+ i32.const $push74=, 7
+ i32.add $push19=, $2, $pop74
+ i32.const $push73=, -4
+ i32.and $push20=, $pop19, $pop73
+ tee_local $push72=, $2=, $pop20
+ i32.const $push71=, 4
+ i32.add $push21=, $pop72, $pop71
+ i32.store $discard=, 60($12), $pop21
+ i32.load $push22=, 0($2)
+ i32.store $discard=, 36($12), $pop22
+ i32.const $push70=, 7
+ i32.add $push23=, $2, $pop70
+ i32.const $push69=, -4
+ i32.and $push24=, $pop23, $pop69
+ tee_local $push68=, $2=, $pop24
+ i32.const $push67=, 4
+ i32.add $push25=, $pop68, $pop67
+ i32.store $discard=, 60($12), $pop25
+ i32.load $push26=, 0($2)
+ i32.store $discard=, 40($12):p2align=3, $pop26
+ i32.const $push66=, 7
+ i32.add $push27=, $2, $pop66
+ i32.const $push65=, -4
+ i32.and $push28=, $pop27, $pop65
+ tee_local $push64=, $2=, $pop28
+ i32.const $push63=, 4
+ i32.add $push29=, $pop64, $pop63
+ i32.store $discard=, 60($12), $pop29
+ i32.load $push30=, 0($2)
+ i32.store $discard=, 44($12), $pop30
+ i32.const $push62=, 7
+ i32.add $push31=, $2, $pop62
+ i32.const $push61=, -4
+ i32.and $push32=, $pop31, $pop61
+ tee_local $push60=, $2=, $pop32
+ i32.const $push59=, 4
+ i32.add $push33=, $pop60, $pop59
+ i32.store $discard=, 60($12), $pop33
+ i32.load $push34=, 0($2)
+ i32.store $discard=, 48($12):p2align=4, $pop34
+ i32.const $push58=, 7
+ i32.add $push35=, $2, $pop58
+ i32.const $push57=, -4
+ i32.and $push36=, $pop35, $pop57
+ tee_local $push56=, $2=, $pop36
+ i32.const $push55=, 4
+ i32.add $push37=, $pop56, $pop55
+ i32.store $discard=, 60($12), $pop37
+ i32.load $push38=, 0($2)
+ i32.store $discard=, 52($12), $pop38
+ i32.const $push54=, 7
+ i32.add $push39=, $2, $pop54
+ i32.const $push53=, -4
+ i32.and $push40=, $pop39, $pop53
+ tee_local $push52=, $2=, $pop40
+ i32.const $push51=, 4
+ i32.add $push41=, $pop52, $pop51
+ i32.store $discard=, 60($12), $pop41
+ i32.load $push42=, 0($2)
+ i32.store $discard=, 56($12):p2align=3, $pop42
+ i32.const $push50=, 4
+ i32.const $11=, 16
+ i32.add $11=, $12, $11
+ i32.or $4=, $11, $pop50
i32.const $5=, 0
- i32.const $6=, 0
+ i32.const $2=, 0
.LBB2_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label4:
block
- i32.eq $push43=, $6, $5
+ i32.eq $push43=, $2, $5
br_if 0, $pop43 # 0: down to label6
# BB#2: # %if.then.i
# in Loop: Header=BB2_1 Depth=1
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 16
- i32.sub $17=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $17=, 0($8), $17
+ i32.const $push93=, 12
+ i32.or $push44=, $12, $pop93
+ i32.store $3=, 0($pop44), $2
+ i32.const $push92=, 8
+ i32.or $push45=, $12, $pop92
+ i32.store $discard=, 0($pop45):p2align=3, $5
+ i32.const $push91=, 4
+ i32.or $push46=, $12, $pop91
+ i32.store $discard=, 0($pop46), $3
i32.const $push90=, .L.str.2
- i32.store $discard=, 0($17), $pop90
- i32.const $push89=, 12
- i32.add $2=, $17, $pop89
- i32.store $2=, 0($2), $6
- i32.const $push88=, 8
- i32.add $3=, $17, $pop88
- i32.store $discard=, 0($3), $5
- i32.const $push87=, 4
- i32.add $5=, $17, $pop87
- i32.store $discard=, 0($5), $2
- i32.const $push86=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop86
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 16
- i32.add $17=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $17=, 0($10), $17
- i32.const $push85=, 0
- i32.const $push84=, 0
- i32.load $push44=, errors($pop84)
- i32.const $push83=, 1
- i32.add $push45=, $pop44, $pop83
- i32.store $discard=, errors($pop85), $pop45
+ i32.store $discard=, 0($12):p2align=4, $pop90
+ i32.const $push89=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop89, $12
+ i32.const $push88=, 0
+ i32.const $push87=, 0
+ i32.load $push47=, errors($pop87)
+ i32.const $push86=, 1
+ i32.add $push48=, $pop47, $pop86
+ i32.store $discard=, errors($pop88), $pop48
.LBB2_3: # %for.inc.i
# in Loop: Header=BB2_1 Depth=1
end_block # label6:
- i32.const $push91=, 10
- i32.eq $push46=, $6, $pop91
- br_if 1, $pop46 # 1: down to label5
+ i32.const $push94=, 10
+ i32.eq $push49=, $2, $pop94
+ br_if 1, $pop49 # 1: down to label5
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB2_1 Depth=1
i32.load $5=, 0($4)
- i32.const $push93=, 1
- i32.add $6=, $6, $pop93
- i32.const $push92=, 4
- i32.add $4=, $4, $pop92
+ i32.const $push96=, 1
+ i32.add $2=, $2, $pop96
+ i32.const $push95=, 4
+ i32.add $4=, $4, $pop95
br 0 # 0: up to label4
.LBB2_5: # %verify.exit
end_loop # label5:
- i32.const $13=, 64
- i32.add $17=, $18, $13
- i32.const $13=, __stack_pointer
- i32.store $17=, 0($13), $17
+ i32.const $8=, 64
+ i32.add $12=, $12, $8
+ i32.const $8=, __stack_pointer
+ i32.store $12=, 0($8), $12
return
.endfunc
.Lfunc_end2:
@@ -622,176 +534,163 @@ varargs1: # @varargs1
.section .text.varargs2,"ax",@progbits
.type varargs2,@function
varargs2: # @varargs2
- .param i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 64
- i32.sub $18=, $12, $13
- copy_local $19=, $18
- i32.const $13=, __stack_pointer
- i32.store $18=, 0($13), $18
- i32.store $discard=, 60($18), $19
- i32.load $7=, 60($18)
- i32.const $push74=, 8
- i32.const $15=, 16
- i32.add $15=, $18, $15
- i32.or $push1=, $15, $pop74
+ i32.const $7=, __stack_pointer
+ i32.load $7=, 0($7)
+ i32.const $8=, 64
+ i32.sub $13=, $7, $8
+ i32.const $8=, __stack_pointer
+ i32.store $13=, 0($8), $13
+ i32.store $discard=, 60($13), $3
+ i32.load $3=, 60($13)
+ i32.const $push77=, 8
+ i32.const $10=, 16
+ i32.add $10=, $13, $10
+ i32.or $push1=, $10, $pop77
i32.const $push2=, 2
i32.store $discard=, 0($pop1):p2align=3, $pop2
i32.const $push3=, 3
- i32.add $push4=, $7, $pop3
+ i32.add $push4=, $3, $pop3
i32.const $push5=, -4
i32.and $push6=, $pop4, $pop5
- tee_local $push73=, $7=, $pop6
- i32.const $push72=, 4
- i32.add $push7=, $pop73, $pop72
- i32.store $discard=, 60($18), $pop7
+ tee_local $push76=, $3=, $pop6
+ i32.const $push75=, 4
+ i32.add $push7=, $pop76, $pop75
+ i32.store $discard=, 60($13), $pop7
i64.const $push0=, 4294967296
- i64.store $discard=, 16($18):p2align=4, $pop0
- i32.load $5=, 60($18)
- i32.const $push71=, 12
- i32.const $16=, 16
- i32.add $16=, $18, $16
- i32.or $push9=, $16, $pop71
- i32.load $push8=, 0($7)
+ i64.store $discard=, 16($13):p2align=4, $pop0
+ i32.load $5=, 60($13)
+ i32.const $push74=, 12
+ i32.const $11=, 16
+ i32.add $11=, $13, $11
+ i32.or $push9=, $11, $pop74
+ i32.load $push8=, 0($3)
i32.store $discard=, 0($pop9), $pop8
- i32.const $push70=, 3
- i32.add $push10=, $5, $pop70
+ i32.const $push73=, 3
+ i32.add $push10=, $5, $pop73
+ i32.const $push72=, -4
+ i32.and $push11=, $pop10, $pop72
+ tee_local $push71=, $3=, $pop11
+ i32.const $push70=, 4
+ i32.add $push12=, $pop71, $pop70
+ i32.store $discard=, 60($13), $pop12
+ i32.load $push13=, 0($3)
+ i32.store $discard=, 32($13):p2align=4, $pop13
+ i32.const $push14=, 7
+ i32.add $push15=, $3, $pop14
i32.const $push69=, -4
- i32.and $push11=, $pop10, $pop69
- tee_local $push68=, $7=, $pop11
+ i32.and $push16=, $pop15, $pop69
+ tee_local $push68=, $3=, $pop16
i32.const $push67=, 4
- i32.add $push12=, $pop68, $pop67
- i32.store $discard=, 60($18), $pop12
- i32.load $push13=, 0($7)
- i32.store $discard=, 32($18):p2align=4, $pop13
- i32.const $push14=, 7
- i32.add $push15=, $7, $pop14
- i32.const $push66=, -4
- i32.and $push16=, $pop15, $pop66
- tee_local $push65=, $7=, $pop16
- i32.const $push64=, 4
- i32.add $push17=, $pop65, $pop64
- i32.store $discard=, 60($18), $pop17
- i32.load $push18=, 0($7)
- i32.store $discard=, 36($18), $pop18
- i32.const $push63=, 7
- i32.add $push19=, $7, $pop63
- i32.const $push62=, -4
- i32.and $push20=, $pop19, $pop62
- tee_local $push61=, $7=, $pop20
- i32.const $push60=, 4
- i32.add $push21=, $pop61, $pop60
- i32.store $discard=, 60($18), $pop21
- i32.load $push22=, 0($7)
- i32.store $discard=, 40($18):p2align=3, $pop22
- i32.const $push59=, 7
- i32.add $push23=, $7, $pop59
- i32.const $push58=, -4
- i32.and $push24=, $pop23, $pop58
- tee_local $push57=, $7=, $pop24
- i32.const $push56=, 4
- i32.add $push25=, $pop57, $pop56
- i32.store $discard=, 60($18), $pop25
- i32.load $push26=, 0($7)
- i32.store $discard=, 44($18), $pop26
- i32.const $push55=, 7
- i32.add $push27=, $7, $pop55
- i32.const $push54=, -4
- i32.and $push28=, $pop27, $pop54
- tee_local $push53=, $7=, $pop28
- i32.const $push52=, 4
- i32.add $push29=, $pop53, $pop52
- i32.store $discard=, 60($18), $pop29
- i32.load $push30=, 0($7)
- i32.store $discard=, 48($18):p2align=4, $pop30
- i32.const $push51=, 7
- i32.add $push31=, $7, $pop51
- i32.const $push50=, -4
- i32.and $push32=, $pop31, $pop50
- tee_local $push49=, $7=, $pop32
- i32.const $push48=, 4
- i32.add $push33=, $pop49, $pop48
- i32.store $discard=, 60($18), $pop33
- i32.load $push34=, 0($7)
- i32.store $discard=, 52($18), $pop34
- i32.const $push47=, 7
- i32.add $push35=, $7, $pop47
- i32.const $push46=, -4
- i32.and $push36=, $pop35, $pop46
- tee_local $push45=, $7=, $pop36
- i32.const $push44=, 4
- i32.add $push37=, $pop45, $pop44
- i32.store $discard=, 60($18), $pop37
- i32.load $push38=, 0($7)
- i32.store $discard=, 56($18):p2align=3, $pop38
- i32.const $push43=, 4
- i32.const $17=, 16
- i32.add $17=, $18, $17
- i32.or $5=, $17, $pop43
+ i32.add $push17=, $pop68, $pop67
+ i32.store $discard=, 60($13), $pop17
+ i32.load $push18=, 0($3)
+ i32.store $discard=, 36($13), $pop18
+ i32.const $push66=, 7
+ i32.add $push19=, $3, $pop66
+ i32.const $push65=, -4
+ i32.and $push20=, $pop19, $pop65
+ tee_local $push64=, $3=, $pop20
+ i32.const $push63=, 4
+ i32.add $push21=, $pop64, $pop63
+ i32.store $discard=, 60($13), $pop21
+ i32.load $push22=, 0($3)
+ i32.store $discard=, 40($13):p2align=3, $pop22
+ i32.const $push62=, 7
+ i32.add $push23=, $3, $pop62
+ i32.const $push61=, -4
+ i32.and $push24=, $pop23, $pop61
+ tee_local $push60=, $3=, $pop24
+ i32.const $push59=, 4
+ i32.add $push25=, $pop60, $pop59
+ i32.store $discard=, 60($13), $pop25
+ i32.load $push26=, 0($3)
+ i32.store $discard=, 44($13), $pop26
+ i32.const $push58=, 7
+ i32.add $push27=, $3, $pop58
+ i32.const $push57=, -4
+ i32.and $push28=, $pop27, $pop57
+ tee_local $push56=, $3=, $pop28
+ i32.const $push55=, 4
+ i32.add $push29=, $pop56, $pop55
+ i32.store $discard=, 60($13), $pop29
+ i32.load $push30=, 0($3)
+ i32.store $discard=, 48($13):p2align=4, $pop30
+ i32.const $push54=, 7
+ i32.add $push31=, $3, $pop54
+ i32.const $push53=, -4
+ i32.and $push32=, $pop31, $pop53
+ tee_local $push52=, $3=, $pop32
+ i32.const $push51=, 4
+ i32.add $push33=, $pop52, $pop51
+ i32.store $discard=, 60($13), $pop33
+ i32.load $push34=, 0($3)
+ i32.store $discard=, 52($13), $pop34
+ i32.const $push50=, 7
+ i32.add $push35=, $3, $pop50
+ i32.const $push49=, -4
+ i32.and $push36=, $pop35, $pop49
+ tee_local $push48=, $3=, $pop36
+ i32.const $push47=, 4
+ i32.add $push37=, $pop48, $pop47
+ i32.store $discard=, 60($13), $pop37
+ i32.load $push38=, 0($3)
+ i32.store $discard=, 56($13):p2align=3, $pop38
+ i32.const $push46=, 4
+ i32.const $12=, 16
+ i32.add $12=, $13, $12
+ i32.or $5=, $12, $pop46
i32.const $6=, 0
- i32.const $7=, 0
+ i32.const $3=, 0
.LBB3_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label7:
block
- i32.eq $push39=, $7, $6
+ i32.eq $push39=, $3, $6
br_if 0, $pop39 # 0: down to label9
# BB#2: # %if.then.i
# in Loop: Header=BB3_1 Depth=1
- i32.const $8=, __stack_pointer
- i32.load $8=, 0($8)
- i32.const $9=, 16
- i32.sub $18=, $8, $9
- i32.const $9=, __stack_pointer
- i32.store $18=, 0($9), $18
+ i32.const $push85=, 12
+ i32.or $push40=, $13, $pop85
+ i32.store $4=, 0($pop40), $3
+ i32.const $push84=, 8
+ i32.or $push41=, $13, $pop84
+ i32.store $discard=, 0($pop41):p2align=3, $6
+ i32.const $push83=, 4
+ i32.or $push42=, $13, $pop83
+ i32.store $discard=, 0($pop42), $4
i32.const $push82=, .L.str.3
- i32.store $discard=, 0($18), $pop82
- i32.const $push81=, 12
- i32.add $3=, $18, $pop81
- i32.store $3=, 0($3), $7
- i32.const $push80=, 8
- i32.add $4=, $18, $pop80
- i32.store $discard=, 0($4), $6
- i32.const $push79=, 4
- i32.add $6=, $18, $pop79
- i32.store $discard=, 0($6), $3
- i32.const $push78=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop78
- i32.const $10=, __stack_pointer
- i32.load $10=, 0($10)
- i32.const $11=, 16
- i32.add $18=, $10, $11
- i32.const $11=, __stack_pointer
- i32.store $18=, 0($11), $18
- i32.const $push77=, 0
- i32.const $push76=, 0
- i32.load $push40=, errors($pop76)
- i32.const $push75=, 1
- i32.add $push41=, $pop40, $pop75
- i32.store $discard=, errors($pop77), $pop41
+ i32.store $discard=, 0($13):p2align=4, $pop82
+ i32.const $push81=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop81, $13
+ i32.const $push80=, 0
+ i32.const $push79=, 0
+ i32.load $push43=, errors($pop79)
+ i32.const $push78=, 1
+ i32.add $push44=, $pop43, $pop78
+ i32.store $discard=, errors($pop80), $pop44
.LBB3_3: # %for.inc.i
# in Loop: Header=BB3_1 Depth=1
end_block # label9:
- i32.const $push83=, 10
- i32.eq $push42=, $7, $pop83
- br_if 1, $pop42 # 1: down to label8
+ i32.const $push86=, 10
+ i32.eq $push45=, $3, $pop86
+ br_if 1, $pop45 # 1: down to label8
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB3_1 Depth=1
i32.load $6=, 0($5)
- i32.const $push85=, 1
- i32.add $7=, $7, $pop85
- i32.const $push84=, 4
- i32.add $5=, $5, $pop84
+ i32.const $push88=, 1
+ i32.add $3=, $3, $pop88
+ i32.const $push87=, 4
+ i32.add $5=, $5, $pop87
br 0 # 0: up to label7
.LBB3_5: # %verify.exit
end_loop # label8:
- i32.const $14=, 64
- i32.add $18=, $19, $14
- i32.const $14=, __stack_pointer
- i32.store $18=, 0($14), $18
+ i32.const $9=, 64
+ i32.add $13=, $13, $9
+ i32.const $9=, __stack_pointer
+ i32.store $13=, 0($9), $13
return
.endfunc
.Lfunc_end3:
@@ -800,162 +699,149 @@ varargs2: # @varargs2
.section .text.varargs3,"ax",@progbits
.type varargs3,@function
varargs3: # @varargs3
- .param i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 64
- i32.sub $18=, $13, $14
- copy_local $19=, $18
- i32.const $14=, __stack_pointer
- i32.store $18=, 0($14), $18
- i32.store $discard=, 60($18), $19
- i32.load $8=, 60($18)
- i32.const $push64=, 8
- i32.const $16=, 16
- i32.add $16=, $18, $16
- i32.or $push1=, $16, $pop64
+ i32.const $9=, __stack_pointer
+ i32.load $9=, 0($9)
+ i32.const $10=, 64
+ i32.sub $14=, $9, $10
+ i32.const $10=, __stack_pointer
+ i32.store $14=, 0($10), $14
+ i32.store $discard=, 60($14), $4
+ i32.load $4=, 60($14)
+ i32.const $push67=, 8
+ i32.const $12=, 16
+ i32.add $12=, $14, $12
+ i32.or $push1=, $12, $pop67
i64.const $push2=, 12884901890
i64.store $discard=, 0($pop1), $pop2
i32.const $push3=, 3
- i32.add $push4=, $8, $pop3
+ i32.add $push4=, $4, $pop3
i32.const $push5=, -4
i32.and $push6=, $pop4, $pop5
- tee_local $push63=, $8=, $pop6
- i32.const $push62=, 4
- i32.add $push7=, $pop63, $pop62
- i32.store $discard=, 60($18), $pop7
+ tee_local $push66=, $4=, $pop6
+ i32.const $push65=, 4
+ i32.add $push7=, $pop66, $pop65
+ i32.store $discard=, 60($14), $pop7
i64.const $push0=, 4294967296
- i64.store $discard=, 16($18):p2align=4, $pop0
- i32.load $6=, 60($18)
- i32.load $push8=, 0($8)
- i32.store $discard=, 32($18):p2align=4, $pop8
- i32.const $push61=, 3
- i32.add $push9=, $6, $pop61
+ i64.store $discard=, 16($14):p2align=4, $pop0
+ i32.load $7=, 60($14)
+ i32.load $push8=, 0($4)
+ i32.store $discard=, 32($14):p2align=4, $pop8
+ i32.const $push64=, 3
+ i32.add $push9=, $7, $pop64
+ i32.const $push63=, -4
+ i32.and $push10=, $pop9, $pop63
+ tee_local $push62=, $4=, $pop10
+ i32.const $push61=, 4
+ i32.add $push11=, $pop62, $pop61
+ i32.store $discard=, 60($14), $pop11
+ i32.load $push12=, 0($4)
+ i32.store $discard=, 36($14), $pop12
+ i32.const $push13=, 7
+ i32.add $push14=, $4, $pop13
i32.const $push60=, -4
- i32.and $push10=, $pop9, $pop60
- tee_local $push59=, $8=, $pop10
+ i32.and $push15=, $pop14, $pop60
+ tee_local $push59=, $4=, $pop15
i32.const $push58=, 4
- i32.add $push11=, $pop59, $pop58
- i32.store $discard=, 60($18), $pop11
- i32.load $push12=, 0($8)
- i32.store $discard=, 36($18), $pop12
- i32.const $push13=, 7
- i32.add $push14=, $8, $pop13
- i32.const $push57=, -4
- i32.and $push15=, $pop14, $pop57
- tee_local $push56=, $8=, $pop15
- i32.const $push55=, 4
- i32.add $push16=, $pop56, $pop55
- i32.store $discard=, 60($18), $pop16
- i32.load $push17=, 0($8)
- i32.store $discard=, 40($18):p2align=3, $pop17
- i32.const $push54=, 7
- i32.add $push18=, $8, $pop54
- i32.const $push53=, -4
- i32.and $push19=, $pop18, $pop53
- tee_local $push52=, $8=, $pop19
- i32.const $push51=, 4
- i32.add $push20=, $pop52, $pop51
- i32.store $discard=, 60($18), $pop20
- i32.load $push21=, 0($8)
- i32.store $discard=, 44($18), $pop21
- i32.const $push50=, 7
- i32.add $push22=, $8, $pop50
- i32.const $push49=, -4
- i32.and $push23=, $pop22, $pop49
- tee_local $push48=, $8=, $pop23
- i32.const $push47=, 4
- i32.add $push24=, $pop48, $pop47
- i32.store $discard=, 60($18), $pop24
- i32.load $push25=, 0($8)
- i32.store $discard=, 48($18):p2align=4, $pop25
- i32.const $push46=, 7
- i32.add $push26=, $8, $pop46
- i32.const $push45=, -4
- i32.and $push27=, $pop26, $pop45
- tee_local $push44=, $8=, $pop27
- i32.const $push43=, 4
- i32.add $push28=, $pop44, $pop43
- i32.store $discard=, 60($18), $pop28
- i32.load $push29=, 0($8)
- i32.store $discard=, 52($18), $pop29
- i32.const $push42=, 7
- i32.add $push30=, $8, $pop42
- i32.const $push41=, -4
- i32.and $push31=, $pop30, $pop41
- tee_local $push40=, $8=, $pop31
- i32.const $push39=, 4
- i32.add $push32=, $pop40, $pop39
- i32.store $discard=, 60($18), $pop32
- i32.load $push33=, 0($8)
- i32.store $discard=, 56($18):p2align=3, $pop33
- i32.const $push38=, 4
- i32.const $17=, 16
- i32.add $17=, $18, $17
- i32.or $6=, $17, $pop38
- i32.const $7=, 0
+ i32.add $push16=, $pop59, $pop58
+ i32.store $discard=, 60($14), $pop16
+ i32.load $push17=, 0($4)
+ i32.store $discard=, 40($14):p2align=3, $pop17
+ i32.const $push57=, 7
+ i32.add $push18=, $4, $pop57
+ i32.const $push56=, -4
+ i32.and $push19=, $pop18, $pop56
+ tee_local $push55=, $4=, $pop19
+ i32.const $push54=, 4
+ i32.add $push20=, $pop55, $pop54
+ i32.store $discard=, 60($14), $pop20
+ i32.load $push21=, 0($4)
+ i32.store $discard=, 44($14), $pop21
+ i32.const $push53=, 7
+ i32.add $push22=, $4, $pop53
+ i32.const $push52=, -4
+ i32.and $push23=, $pop22, $pop52
+ tee_local $push51=, $4=, $pop23
+ i32.const $push50=, 4
+ i32.add $push24=, $pop51, $pop50
+ i32.store $discard=, 60($14), $pop24
+ i32.load $push25=, 0($4)
+ i32.store $discard=, 48($14):p2align=4, $pop25
+ i32.const $push49=, 7
+ i32.add $push26=, $4, $pop49
+ i32.const $push48=, -4
+ i32.and $push27=, $pop26, $pop48
+ tee_local $push47=, $4=, $pop27
+ i32.const $push46=, 4
+ i32.add $push28=, $pop47, $pop46
+ i32.store $discard=, 60($14), $pop28
+ i32.load $push29=, 0($4)
+ i32.store $discard=, 52($14), $pop29
+ i32.const $push45=, 7
+ i32.add $push30=, $4, $pop45
+ i32.const $push44=, -4
+ i32.and $push31=, $pop30, $pop44
+ tee_local $push43=, $4=, $pop31
+ i32.const $push42=, 4
+ i32.add $push32=, $pop43, $pop42
+ i32.store $discard=, 60($14), $pop32
+ i32.load $push33=, 0($4)
+ i32.store $discard=, 56($14):p2align=3, $pop33
+ i32.const $push35=, 12
+ i32.or $5=, $14, $pop35
+ i32.const $push41=, 4
+ i32.const $13=, 16
+ i32.add $13=, $14, $13
+ i32.or $7=, $13, $pop41
i32.const $8=, 0
+ i32.const $4=, 0
.LBB4_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label10:
block
- i32.eq $push34=, $8, $7
+ i32.eq $push34=, $4, $8
br_if 0, $pop34 # 0: down to label12
# BB#2: # %if.then.i
# in Loop: Header=BB4_1 Depth=1
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 16
- i32.sub $18=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $18=, 0($10), $18
+ i32.store $6=, 0($5), $4
+ i32.const $push74=, 8
+ i32.or $push36=, $14, $pop74
+ i32.store $discard=, 0($pop36):p2align=3, $8
+ i32.const $push73=, 4
+ i32.or $push37=, $14, $pop73
+ i32.store $discard=, 0($pop37), $6
i32.const $push72=, .L.str.4
- i32.store $discard=, 0($18), $pop72
- i32.const $push71=, 12
- i32.add $4=, $18, $pop71
- i32.store $4=, 0($4), $8
- i32.const $push70=, 8
- i32.add $5=, $18, $pop70
- i32.store $discard=, 0($5), $7
- i32.const $push69=, 4
- i32.add $7=, $18, $pop69
- i32.store $discard=, 0($7), $4
- i32.const $push68=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop68
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 16
- i32.add $18=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $18=, 0($12), $18
- i32.const $push67=, 0
- i32.const $push66=, 0
- i32.load $push35=, errors($pop66)
- i32.const $push65=, 1
- i32.add $push36=, $pop35, $pop65
- i32.store $discard=, errors($pop67), $pop36
+ i32.store $discard=, 0($14):p2align=4, $pop72
+ i32.const $push71=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop71, $14
+ i32.const $push70=, 0
+ i32.const $push69=, 0
+ i32.load $push38=, errors($pop69)
+ i32.const $push68=, 1
+ i32.add $push39=, $pop38, $pop68
+ i32.store $discard=, errors($pop70), $pop39
.LBB4_3: # %for.inc.i
# in Loop: Header=BB4_1 Depth=1
end_block # label12:
- i32.const $push73=, 10
- i32.eq $push37=, $8, $pop73
- br_if 1, $pop37 # 1: down to label11
+ i32.const $push75=, 10
+ i32.eq $push40=, $4, $pop75
+ br_if 1, $pop40 # 1: down to label11
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB4_1 Depth=1
- i32.load $7=, 0($6)
- i32.const $push75=, 1
- i32.add $8=, $8, $pop75
- i32.const $push74=, 4
- i32.add $6=, $6, $pop74
+ i32.load $8=, 0($7)
+ i32.const $push77=, 1
+ i32.add $4=, $4, $pop77
+ i32.const $push76=, 4
+ i32.add $7=, $7, $pop76
br 0 # 0: up to label10
.LBB4_5: # %verify.exit
end_loop # label11:
- i32.const $15=, 64
- i32.add $18=, $19, $15
- i32.const $15=, __stack_pointer
- i32.store $18=, 0($15), $18
+ i32.const $11=, 64
+ i32.add $14=, $14, $11
+ i32.const $11=, __stack_pointer
+ i32.store $14=, 0($11), $14
return
.endfunc
.Lfunc_end4:
@@ -964,147 +850,134 @@ varargs3: # @varargs3
.section .text.varargs4,"ax",@progbits
.type varargs4,@function
varargs4: # @varargs4
- .param i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 64
- i32.sub $20=, $15, $16
- copy_local $21=, $20
- i32.const $16=, __stack_pointer
- i32.store $20=, 0($16), $20
- i32.store $discard=, 60($20), $21
- i32.load $9=, 60($20)
- i32.const $push53=, 8
- i32.const $18=, 16
- i32.add $18=, $20, $18
- i32.or $push2=, $18, $pop53
+ i32.const $11=, __stack_pointer
+ i32.load $11=, 0($11)
+ i32.const $12=, 64
+ i32.sub $16=, $11, $12
+ i32.const $12=, __stack_pointer
+ i32.store $16=, 0($12), $16
+ i32.store $discard=, 60($16), $5
+ i32.load $5=, 60($16)
+ i32.const $push56=, 8
+ i32.const $14=, 16
+ i32.add $14=, $16, $14
+ i32.or $push2=, $14, $pop56
i64.const $push3=, 12884901890
i64.store $discard=, 0($pop2), $pop3
i32.const $push5=, 3
- i32.add $push6=, $9, $pop5
+ i32.add $push6=, $5, $pop5
i32.const $push7=, -4
i32.and $push8=, $pop6, $pop7
- tee_local $push52=, $9=, $pop8
+ tee_local $push55=, $5=, $pop8
i32.const $push1=, 4
- i32.store $push4=, 32($20):p2align=4, $pop1
- tee_local $push51=, $10=, $pop4
- i32.add $push9=, $pop52, $pop51
- i32.store $discard=, 60($20), $pop9
+ i32.store $push4=, 32($16):p2align=4, $pop1
+ tee_local $push54=, $10=, $pop4
+ i32.add $push9=, $pop55, $pop54
+ i32.store $discard=, 60($16), $pop9
i64.const $push0=, 4294967296
- i64.store $discard=, 16($20):p2align=4, $pop0
- i32.load $7=, 60($20)
- i32.load $push10=, 0($9)
- i32.store $discard=, 36($20), $pop10
- i32.const $push50=, 3
- i32.add $push11=, $7, $pop50
- i32.const $push49=, -4
- i32.and $push12=, $pop11, $pop49
- tee_local $push48=, $9=, $pop12
- i32.add $push13=, $10, $pop48
- i32.store $discard=, 60($20), $pop13
- i32.load $push14=, 0($9)
- i32.store $discard=, 40($20):p2align=3, $pop14
+ i64.store $discard=, 16($16):p2align=4, $pop0
+ i32.load $8=, 60($16)
+ i32.load $push10=, 0($5)
+ i32.store $discard=, 36($16), $pop10
+ i32.const $push53=, 3
+ i32.add $push11=, $8, $pop53
+ i32.const $push52=, -4
+ i32.and $push12=, $pop11, $pop52
+ tee_local $push51=, $5=, $pop12
+ i32.add $push13=, $10, $pop51
+ i32.store $discard=, 60($16), $pop13
+ i32.load $push14=, 0($5)
+ i32.store $discard=, 40($16):p2align=3, $pop14
i32.const $push15=, 7
- i32.add $push16=, $9, $pop15
+ i32.add $push16=, $5, $pop15
+ i32.const $push50=, -4
+ i32.and $push17=, $pop16, $pop50
+ tee_local $push49=, $5=, $pop17
+ i32.add $push18=, $10, $pop49
+ i32.store $discard=, 60($16), $pop18
+ i32.load $push19=, 0($5)
+ i32.store $discard=, 44($16), $pop19
+ i32.const $push48=, 7
+ i32.add $push20=, $5, $pop48
i32.const $push47=, -4
- i32.and $push17=, $pop16, $pop47
- tee_local $push46=, $9=, $pop17
- i32.add $push18=, $10, $pop46
- i32.store $discard=, 60($20), $pop18
- i32.load $push19=, 0($9)
- i32.store $discard=, 44($20), $pop19
+ i32.and $push21=, $pop20, $pop47
+ tee_local $push46=, $5=, $pop21
+ i32.add $push22=, $10, $pop46
+ i32.store $discard=, 60($16), $pop22
+ i32.load $push23=, 0($5)
+ i32.store $discard=, 48($16):p2align=4, $pop23
i32.const $push45=, 7
- i32.add $push20=, $9, $pop45
+ i32.add $push24=, $5, $pop45
i32.const $push44=, -4
- i32.and $push21=, $pop20, $pop44
- tee_local $push43=, $9=, $pop21
- i32.add $push22=, $10, $pop43
- i32.store $discard=, 60($20), $pop22
- i32.load $push23=, 0($9)
- i32.store $discard=, 48($20):p2align=4, $pop23
+ i32.and $push25=, $pop24, $pop44
+ tee_local $push43=, $5=, $pop25
+ i32.add $push26=, $10, $pop43
+ i32.store $discard=, 60($16), $pop26
+ i32.load $push27=, 0($5)
+ i32.store $discard=, 52($16), $pop27
i32.const $push42=, 7
- i32.add $push24=, $9, $pop42
+ i32.add $push28=, $5, $pop42
i32.const $push41=, -4
- i32.and $push25=, $pop24, $pop41
- tee_local $push40=, $9=, $pop25
- i32.add $push26=, $10, $pop40
- i32.store $discard=, 60($20), $pop26
- i32.load $push27=, 0($9)
- i32.store $discard=, 52($20), $pop27
- i32.const $push39=, 7
- i32.add $push28=, $9, $pop39
- i32.const $push38=, -4
- i32.and $push29=, $pop28, $pop38
- tee_local $push37=, $9=, $pop29
- i32.add $push30=, $10, $pop37
- i32.store $discard=, 60($20), $pop30
- i32.load $push31=, 0($9)
- i32.store $discard=, 56($20):p2align=3, $pop31
- i32.const $push36=, 4
- i32.const $19=, 16
- i32.add $19=, $20, $19
- i32.or $7=, $19, $pop36
- i32.const $8=, 0
+ i32.and $push29=, $pop28, $pop41
+ tee_local $push40=, $5=, $pop29
+ i32.add $push30=, $10, $pop40
+ i32.store $discard=, 60($16), $pop30
+ i32.load $push31=, 0($5)
+ i32.store $discard=, 56($16):p2align=3, $pop31
+ i32.const $push39=, 4
+ i32.const $15=, 16
+ i32.add $15=, $16, $15
+ i32.or $8=, $15, $pop39
+ i32.const $push33=, 12
+ i32.or $6=, $16, $pop33
i32.const $9=, 0
+ i32.const $5=, 0
.LBB5_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label13:
block
- i32.eq $push32=, $9, $8
+ i32.eq $push32=, $5, $9
br_if 0, $pop32 # 0: down to label15
# BB#2: # %if.then.i
# in Loop: Header=BB5_1 Depth=1
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 16
- i32.sub $20=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $20=, 0($12), $20
- i32.const $push60=, .L.str.5
- i32.store $discard=, 0($20), $pop60
- i32.const $push59=, 12
- i32.add $5=, $20, $pop59
- i32.store $5=, 0($5), $9
- i32.const $push58=, 8
- i32.add $6=, $20, $pop58
- i32.store $discard=, 0($6), $8
- i32.add $8=, $20, $10
- i32.store $discard=, 0($8), $5
- i32.const $push57=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop57
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 16
- i32.add $20=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $20=, 0($14), $20
- i32.const $push56=, 0
- i32.const $push55=, 0
- i32.load $push33=, errors($pop55)
- i32.const $push54=, 1
- i32.add $push34=, $pop33, $pop54
- i32.store $discard=, errors($pop56), $pop34
+ i32.store $7=, 0($6), $5
+ i32.const $push62=, 8
+ i32.or $push34=, $16, $pop62
+ i32.store $discard=, 0($pop34):p2align=3, $9
+ i32.or $push35=, $16, $10
+ i32.store $discard=, 0($pop35), $7
+ i32.const $push61=, .L.str.5
+ i32.store $discard=, 0($16):p2align=4, $pop61
+ i32.const $push60=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop60, $16
+ i32.const $push59=, 0
+ i32.const $push58=, 0
+ i32.load $push36=, errors($pop58)
+ i32.const $push57=, 1
+ i32.add $push37=, $pop36, $pop57
+ i32.store $discard=, errors($pop59), $pop37
.LBB5_3: # %for.inc.i
# in Loop: Header=BB5_1 Depth=1
end_block # label15:
- i32.const $push61=, 10
- i32.eq $push35=, $9, $pop61
- br_if 1, $pop35 # 1: down to label14
+ i32.const $push63=, 10
+ i32.eq $push38=, $5, $pop63
+ br_if 1, $pop38 # 1: down to label14
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB5_1 Depth=1
- i32.load $8=, 0($7)
- i32.const $push62=, 1
- i32.add $9=, $9, $pop62
- i32.add $7=, $7, $10
+ i32.load $9=, 0($8)
+ i32.const $push64=, 1
+ i32.add $5=, $5, $pop64
+ i32.add $8=, $8, $10
br 0 # 0: up to label13
.LBB5_5: # %verify.exit
end_loop # label14:
- i32.const $17=, 64
- i32.add $20=, $21, $17
- i32.const $17=, __stack_pointer
- i32.store $20=, 0($17), $20
+ i32.const $13=, 64
+ i32.add $16=, $16, $13
+ i32.const $13=, __stack_pointer
+ i32.store $16=, 0($13), $16
return
.endfunc
.Lfunc_end5:
@@ -1113,144 +986,131 @@ varargs4: # @varargs4
.section .text.varargs5,"ax",@progbits
.type varargs5,@function
varargs5: # @varargs5
- .param i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 64
- i32.sub $20=, $15, $16
- copy_local $21=, $20
- i32.const $16=, __stack_pointer
- i32.store $20=, 0($16), $20
- i32.store $discard=, 60($20), $21
- i32.load $10=, 60($20)
- i32.const $push49=, 8
- i32.const $18=, 16
- i32.add $18=, $20, $18
- i32.or $push1=, $18, $pop49
+ i32.const $11=, __stack_pointer
+ i32.load $11=, 0($11)
+ i32.const $12=, 64
+ i32.sub $16=, $11, $12
+ i32.const $12=, __stack_pointer
+ i32.store $16=, 0($12), $16
+ i32.store $discard=, 60($16), $6
+ i32.load $6=, 60($16)
+ i32.const $push52=, 8
+ i32.const $14=, 16
+ i32.add $14=, $16, $14
+ i32.or $push1=, $14, $pop52
i64.const $push2=, 12884901890
i64.store $discard=, 0($pop1), $pop2
i32.const $push4=, 3
- i32.add $push5=, $10, $pop4
+ i32.add $push5=, $6, $pop4
i32.const $push6=, -4
i32.and $push7=, $pop5, $pop6
- tee_local $push48=, $10=, $pop7
- i32.const $push47=, 4
- i32.add $push8=, $pop48, $pop47
- i32.store $discard=, 60($20), $pop8
+ tee_local $push51=, $6=, $pop7
+ i32.const $push50=, 4
+ i32.add $push8=, $pop51, $pop50
+ i32.store $discard=, 60($16), $pop8
i64.const $push0=, 4294967296
- i64.store $discard=, 16($20):p2align=4, $pop0
+ i64.store $discard=, 16($16):p2align=4, $pop0
i64.const $push3=, 21474836484
- i64.store $discard=, 32($20):p2align=4, $pop3
- i32.load $8=, 60($20)
- i32.load $push9=, 0($10)
- i32.store $discard=, 40($20):p2align=3, $pop9
- i32.const $push46=, 3
- i32.add $push10=, $8, $pop46
+ i64.store $discard=, 32($16):p2align=4, $pop3
+ i32.load $9=, 60($16)
+ i32.load $push9=, 0($6)
+ i32.store $discard=, 40($16):p2align=3, $pop9
+ i32.const $push49=, 3
+ i32.add $push10=, $9, $pop49
+ i32.const $push48=, -4
+ i32.and $push11=, $pop10, $pop48
+ tee_local $push47=, $6=, $pop11
+ i32.const $push46=, 4
+ i32.add $push12=, $pop47, $pop46
+ i32.store $discard=, 60($16), $pop12
+ i32.load $push13=, 0($6)
+ i32.store $discard=, 44($16), $pop13
+ i32.const $push14=, 7
+ i32.add $push15=, $6, $pop14
i32.const $push45=, -4
- i32.and $push11=, $pop10, $pop45
- tee_local $push44=, $10=, $pop11
+ i32.and $push16=, $pop15, $pop45
+ tee_local $push44=, $6=, $pop16
i32.const $push43=, 4
- i32.add $push12=, $pop44, $pop43
- i32.store $discard=, 60($20), $pop12
- i32.load $push13=, 0($10)
- i32.store $discard=, 44($20), $pop13
- i32.const $push14=, 7
- i32.add $push15=, $10, $pop14
- i32.const $push42=, -4
- i32.and $push16=, $pop15, $pop42
- tee_local $push41=, $10=, $pop16
- i32.const $push40=, 4
- i32.add $push17=, $pop41, $pop40
- i32.store $discard=, 60($20), $pop17
- i32.load $push18=, 0($10)
- i32.store $discard=, 48($20):p2align=4, $pop18
- i32.const $push39=, 7
- i32.add $push19=, $10, $pop39
- i32.const $push38=, -4
- i32.and $push20=, $pop19, $pop38
- tee_local $push37=, $10=, $pop20
- i32.const $push36=, 4
- i32.add $push21=, $pop37, $pop36
- i32.store $discard=, 60($20), $pop21
- i32.load $push22=, 0($10)
- i32.store $discard=, 52($20), $pop22
- i32.const $push35=, 7
- i32.add $push23=, $10, $pop35
- i32.const $push34=, -4
- i32.and $push24=, $pop23, $pop34
- tee_local $push33=, $10=, $pop24
- i32.const $push32=, 4
- i32.add $push25=, $pop33, $pop32
- i32.store $discard=, 60($20), $pop25
- i32.load $push26=, 0($10)
- i32.store $discard=, 56($20):p2align=3, $pop26
- i32.const $push31=, 4
- i32.const $19=, 16
- i32.add $19=, $20, $19
- i32.or $8=, $19, $pop31
- i32.const $9=, 0
+ i32.add $push17=, $pop44, $pop43
+ i32.store $discard=, 60($16), $pop17
+ i32.load $push18=, 0($6)
+ i32.store $discard=, 48($16):p2align=4, $pop18
+ i32.const $push42=, 7
+ i32.add $push19=, $6, $pop42
+ i32.const $push41=, -4
+ i32.and $push20=, $pop19, $pop41
+ tee_local $push40=, $6=, $pop20
+ i32.const $push39=, 4
+ i32.add $push21=, $pop40, $pop39
+ i32.store $discard=, 60($16), $pop21
+ i32.load $push22=, 0($6)
+ i32.store $discard=, 52($16), $pop22
+ i32.const $push38=, 7
+ i32.add $push23=, $6, $pop38
+ i32.const $push37=, -4
+ i32.and $push24=, $pop23, $pop37
+ tee_local $push36=, $6=, $pop24
+ i32.const $push35=, 4
+ i32.add $push25=, $pop36, $pop35
+ i32.store $discard=, 60($16), $pop25
+ i32.load $push26=, 0($6)
+ i32.store $discard=, 56($16):p2align=3, $pop26
+ i32.const $push28=, 12
+ i32.or $7=, $16, $pop28
+ i32.const $push34=, 4
+ i32.const $15=, 16
+ i32.add $15=, $16, $15
+ i32.or $9=, $15, $pop34
i32.const $10=, 0
+ i32.const $6=, 0
.LBB6_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label16:
block
- i32.eq $push27=, $10, $9
+ i32.eq $push27=, $6, $10
br_if 0, $pop27 # 0: down to label18
# BB#2: # %if.then.i
# in Loop: Header=BB6_1 Depth=1
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 16
- i32.sub $20=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $20=, 0($12), $20
+ i32.store $8=, 0($7), $6
+ i32.const $push59=, 8
+ i32.or $push29=, $16, $pop59
+ i32.store $discard=, 0($pop29):p2align=3, $10
+ i32.const $push58=, 4
+ i32.or $push30=, $16, $pop58
+ i32.store $discard=, 0($pop30), $8
i32.const $push57=, .L.str.6
- i32.store $discard=, 0($20), $pop57
- i32.const $push56=, 12
- i32.add $6=, $20, $pop56
- i32.store $6=, 0($6), $10
- i32.const $push55=, 8
- i32.add $7=, $20, $pop55
- i32.store $discard=, 0($7), $9
- i32.const $push54=, 4
- i32.add $9=, $20, $pop54
- i32.store $discard=, 0($9), $6
- i32.const $push53=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop53
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 16
- i32.add $20=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $20=, 0($14), $20
- i32.const $push52=, 0
- i32.const $push51=, 0
- i32.load $push28=, errors($pop51)
- i32.const $push50=, 1
- i32.add $push29=, $pop28, $pop50
- i32.store $discard=, errors($pop52), $pop29
+ i32.store $discard=, 0($16):p2align=4, $pop57
+ i32.const $push56=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop56, $16
+ i32.const $push55=, 0
+ i32.const $push54=, 0
+ i32.load $push31=, errors($pop54)
+ i32.const $push53=, 1
+ i32.add $push32=, $pop31, $pop53
+ i32.store $discard=, errors($pop55), $pop32
.LBB6_3: # %for.inc.i
# in Loop: Header=BB6_1 Depth=1
end_block # label18:
- i32.const $push58=, 10
- i32.eq $push30=, $10, $pop58
- br_if 1, $pop30 # 1: down to label17
+ i32.const $push60=, 10
+ i32.eq $push33=, $6, $pop60
+ br_if 1, $pop33 # 1: down to label17
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB6_1 Depth=1
- i32.load $9=, 0($8)
- i32.const $push60=, 1
- i32.add $10=, $10, $pop60
- i32.const $push59=, 4
- i32.add $8=, $8, $pop59
+ i32.load $10=, 0($9)
+ i32.const $push62=, 1
+ i32.add $6=, $6, $pop62
+ i32.const $push61=, 4
+ i32.add $9=, $9, $pop61
br 0 # 0: up to label16
.LBB6_5: # %verify.exit
end_loop # label17:
- i32.const $17=, 64
- i32.add $20=, $21, $17
- i32.const $17=, __stack_pointer
- i32.store $20=, 0($17), $20
+ i32.const $13=, 64
+ i32.add $16=, $16, $13
+ i32.const $13=, __stack_pointer
+ i32.store $16=, 0($13), $16
return
.endfunc
.Lfunc_end6:
@@ -1259,136 +1119,123 @@ varargs5: # @varargs5
.section .text.varargs6,"ax",@progbits
.type varargs6,@function
varargs6: # @varargs6
- .param i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $16=, __stack_pointer
- i32.load $16=, 0($16)
- i32.const $17=, 64
- i32.sub $21=, $16, $17
- copy_local $22=, $21
- i32.const $17=, __stack_pointer
- i32.store $21=, 0($17), $21
- i32.const $push42=, 8
- i32.const $19=, 16
- i32.add $19=, $21, $19
- i32.or $push1=, $19, $pop42
+ i32.const $12=, __stack_pointer
+ i32.load $12=, 0($12)
+ i32.const $13=, 64
+ i32.sub $17=, $12, $13
+ i32.const $13=, __stack_pointer
+ i32.store $17=, 0($13), $17
+ i32.store $discard=, 60($17), $7
+ i32.const $push45=, 8
+ i32.const $15=, 16
+ i32.add $15=, $17, $15
+ i32.or $push1=, $15, $pop45
i64.const $push2=, 12884901890
i64.store $discard=, 0($pop1), $pop2
- i32.store $discard=, 60($21), $22
- i32.load $11=, 60($21)
+ i32.load $7=, 60($17)
i32.const $push4=, 6
- i32.store $discard=, 40($21):p2align=3, $pop4
+ i32.store $discard=, 40($17):p2align=3, $pop4
i32.const $push5=, 3
- i32.add $push6=, $11, $pop5
+ i32.add $push6=, $7, $pop5
i32.const $push7=, -4
i32.and $push8=, $pop6, $pop7
- tee_local $push41=, $11=, $pop8
- i32.const $push40=, 4
- i32.add $push9=, $pop41, $pop40
- i32.store $discard=, 60($21), $pop9
+ tee_local $push44=, $7=, $pop8
+ i32.const $push43=, 4
+ i32.add $push9=, $pop44, $pop43
+ i32.store $discard=, 60($17), $pop9
i64.const $push0=, 4294967296
- i64.store $discard=, 16($21):p2align=4, $pop0
+ i64.store $discard=, 16($17):p2align=4, $pop0
i64.const $push3=, 21474836484
- i64.store $discard=, 32($21):p2align=4, $pop3
- i32.load $9=, 60($21)
- i32.load $push10=, 0($11)
- i32.store $discard=, 44($21), $pop10
- i32.const $push39=, 3
- i32.add $push11=, $9, $pop39
+ i64.store $discard=, 32($17):p2align=4, $pop3
+ i32.load $10=, 60($17)
+ i32.load $push10=, 0($7)
+ i32.store $discard=, 44($17), $pop10
+ i32.const $push42=, 3
+ i32.add $push11=, $10, $pop42
+ i32.const $push41=, -4
+ i32.and $push12=, $pop11, $pop41
+ tee_local $push40=, $7=, $pop12
+ i32.const $push39=, 4
+ i32.add $push13=, $pop40, $pop39
+ i32.store $discard=, 60($17), $pop13
+ i32.load $push14=, 0($7)
+ i32.store $discard=, 48($17):p2align=4, $pop14
+ i32.const $push15=, 7
+ i32.add $push16=, $7, $pop15
i32.const $push38=, -4
- i32.and $push12=, $pop11, $pop38
- tee_local $push37=, $11=, $pop12
+ i32.and $push17=, $pop16, $pop38
+ tee_local $push37=, $7=, $pop17
i32.const $push36=, 4
- i32.add $push13=, $pop37, $pop36
- i32.store $discard=, 60($21), $pop13
- i32.load $push14=, 0($11)
- i32.store $discard=, 48($21):p2align=4, $pop14
- i32.const $push15=, 7
- i32.add $push16=, $11, $pop15
- i32.const $push35=, -4
- i32.and $push17=, $pop16, $pop35
- tee_local $push34=, $11=, $pop17
- i32.const $push33=, 4
- i32.add $push18=, $pop34, $pop33
- i32.store $discard=, 60($21), $pop18
- i32.load $push19=, 0($11)
- i32.store $discard=, 52($21), $pop19
- i32.const $push32=, 7
- i32.add $push20=, $11, $pop32
- i32.const $push31=, -4
- i32.and $push21=, $pop20, $pop31
- tee_local $push30=, $11=, $pop21
- i32.const $push29=, 4
- i32.add $push22=, $pop30, $pop29
- i32.store $discard=, 60($21), $pop22
- i32.load $push23=, 0($11)
- i32.store $discard=, 56($21):p2align=3, $pop23
- i32.const $push28=, 4
- i32.const $20=, 16
- i32.add $20=, $21, $20
- i32.or $9=, $20, $pop28
- i32.const $10=, 0
+ i32.add $push18=, $pop37, $pop36
+ i32.store $discard=, 60($17), $pop18
+ i32.load $push19=, 0($7)
+ i32.store $discard=, 52($17), $pop19
+ i32.const $push35=, 7
+ i32.add $push20=, $7, $pop35
+ i32.const $push34=, -4
+ i32.and $push21=, $pop20, $pop34
+ tee_local $push33=, $7=, $pop21
+ i32.const $push32=, 4
+ i32.add $push22=, $pop33, $pop32
+ i32.store $discard=, 60($17), $pop22
+ i32.load $push23=, 0($7)
+ i32.store $discard=, 56($17):p2align=3, $pop23
+ i32.const $push25=, 12
+ i32.or $8=, $17, $pop25
+ i32.const $push31=, 4
+ i32.const $16=, 16
+ i32.add $16=, $17, $16
+ i32.or $10=, $16, $pop31
i32.const $11=, 0
+ i32.const $7=, 0
.LBB7_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label19:
block
- i32.eq $push24=, $11, $10
+ i32.eq $push24=, $7, $11
br_if 0, $pop24 # 0: down to label21
# BB#2: # %if.then.i
# in Loop: Header=BB7_1 Depth=1
- i32.const $12=, __stack_pointer
- i32.load $12=, 0($12)
- i32.const $13=, 16
- i32.sub $21=, $12, $13
- i32.const $13=, __stack_pointer
- i32.store $21=, 0($13), $21
+ i32.store $9=, 0($8), $7
+ i32.const $push52=, 8
+ i32.or $push26=, $17, $pop52
+ i32.store $discard=, 0($pop26):p2align=3, $11
+ i32.const $push51=, 4
+ i32.or $push27=, $17, $pop51
+ i32.store $discard=, 0($pop27), $9
i32.const $push50=, .L.str.7
- i32.store $discard=, 0($21), $pop50
- i32.const $push49=, 12
- i32.add $7=, $21, $pop49
- i32.store $7=, 0($7), $11
- i32.const $push48=, 8
- i32.add $8=, $21, $pop48
- i32.store $discard=, 0($8), $10
- i32.const $push47=, 4
- i32.add $10=, $21, $pop47
- i32.store $discard=, 0($10), $7
- i32.const $push46=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop46
- i32.const $14=, __stack_pointer
- i32.load $14=, 0($14)
- i32.const $15=, 16
- i32.add $21=, $14, $15
- i32.const $15=, __stack_pointer
- i32.store $21=, 0($15), $21
- i32.const $push45=, 0
- i32.const $push44=, 0
- i32.load $push25=, errors($pop44)
- i32.const $push43=, 1
- i32.add $push26=, $pop25, $pop43
- i32.store $discard=, errors($pop45), $pop26
+ i32.store $discard=, 0($17):p2align=4, $pop50
+ i32.const $push49=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop49, $17
+ i32.const $push48=, 0
+ i32.const $push47=, 0
+ i32.load $push28=, errors($pop47)
+ i32.const $push46=, 1
+ i32.add $push29=, $pop28, $pop46
+ i32.store $discard=, errors($pop48), $pop29
.LBB7_3: # %for.inc.i
# in Loop: Header=BB7_1 Depth=1
end_block # label21:
- i32.const $push51=, 10
- i32.eq $push27=, $11, $pop51
- br_if 1, $pop27 # 1: down to label20
+ i32.const $push53=, 10
+ i32.eq $push30=, $7, $pop53
+ br_if 1, $pop30 # 1: down to label20
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB7_1 Depth=1
- i32.load $10=, 0($9)
- i32.const $push53=, 1
- i32.add $11=, $11, $pop53
- i32.const $push52=, 4
- i32.add $9=, $9, $pop52
+ i32.load $11=, 0($10)
+ i32.const $push55=, 1
+ i32.add $7=, $7, $pop55
+ i32.const $push54=, 4
+ i32.add $10=, $10, $pop54
br 0 # 0: up to label19
.LBB7_5: # %verify.exit
end_loop # label20:
- i32.const $18=, 64
- i32.add $21=, $22, $18
- i32.const $18=, __stack_pointer
- i32.store $21=, 0($18), $21
+ i32.const $14=, 64
+ i32.add $17=, $17, $14
+ i32.const $14=, __stack_pointer
+ i32.store $17=, 0($14), $17
return
.endfunc
.Lfunc_end7:
@@ -1397,126 +1244,113 @@ varargs6: # @varargs6
.section .text.varargs7,"ax",@progbits
.type varargs7,@function
varargs7: # @varargs7
- .param i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 64
- i32.sub $22=, $17, $18
- copy_local $23=, $22
- i32.const $18=, __stack_pointer
- i32.store $22=, 0($18), $22
- i32.store $discard=, 60($22), $23
- i32.load $12=, 60($22)
- i32.const $push34=, 8
- i32.const $20=, 16
- i32.add $20=, $22, $20
- i32.or $push1=, $20, $pop34
+ i32.const $13=, __stack_pointer
+ i32.load $13=, 0($13)
+ i32.const $14=, 64
+ i32.sub $18=, $13, $14
+ i32.const $14=, __stack_pointer
+ i32.store $18=, 0($14), $18
+ i32.store $discard=, 60($18), $8
+ i32.load $8=, 60($18)
+ i32.const $push37=, 8
+ i32.const $16=, 16
+ i32.add $16=, $18, $16
+ i32.or $push1=, $16, $pop37
i64.const $push2=, 12884901890
i64.store $discard=, 0($pop1), $pop2
i32.const $push5=, 3
- i32.add $push6=, $12, $pop5
+ i32.add $push6=, $8, $pop5
i32.const $push7=, -4
i32.and $push8=, $pop6, $pop7
- tee_local $push33=, $12=, $pop8
- i32.const $push32=, 4
- i32.add $push9=, $pop33, $pop32
- i32.store $discard=, 60($22), $pop9
+ tee_local $push36=, $8=, $pop8
+ i32.const $push35=, 4
+ i32.add $push9=, $pop36, $pop35
+ i32.store $discard=, 60($18), $pop9
i64.const $push0=, 4294967296
- i64.store $discard=, 16($22):p2align=4, $pop0
+ i64.store $discard=, 16($18):p2align=4, $pop0
i64.const $push3=, 21474836484
- i64.store $discard=, 32($22):p2align=4, $pop3
+ i64.store $discard=, 32($18):p2align=4, $pop3
i64.const $push4=, 30064771078
- i64.store $discard=, 40($22), $pop4
- i32.load $10=, 60($22)
- i32.load $push10=, 0($12)
- i32.store $discard=, 48($22):p2align=4, $pop10
- i32.const $push31=, 3
- i32.add $push11=, $10, $pop31
+ i64.store $discard=, 40($18), $pop4
+ i32.load $11=, 60($18)
+ i32.load $push10=, 0($8)
+ i32.store $discard=, 48($18):p2align=4, $pop10
+ i32.const $push34=, 3
+ i32.add $push11=, $11, $pop34
+ i32.const $push33=, -4
+ i32.and $push12=, $pop11, $pop33
+ tee_local $push32=, $8=, $pop12
+ i32.const $push31=, 4
+ i32.add $push13=, $pop32, $pop31
+ i32.store $discard=, 60($18), $pop13
+ i32.load $push14=, 0($8)
+ i32.store $discard=, 52($18), $pop14
+ i32.const $push15=, 7
+ i32.add $push16=, $8, $pop15
i32.const $push30=, -4
- i32.and $push12=, $pop11, $pop30
- tee_local $push29=, $12=, $pop12
+ i32.and $push17=, $pop16, $pop30
+ tee_local $push29=, $8=, $pop17
i32.const $push28=, 4
- i32.add $push13=, $pop29, $pop28
- i32.store $discard=, 60($22), $pop13
- i32.load $push14=, 0($12)
- i32.store $discard=, 52($22), $pop14
- i32.const $push15=, 7
- i32.add $push16=, $12, $pop15
- i32.const $push27=, -4
- i32.and $push17=, $pop16, $pop27
- tee_local $push26=, $12=, $pop17
- i32.const $push25=, 4
- i32.add $push18=, $pop26, $pop25
- i32.store $discard=, 60($22), $pop18
- i32.load $push19=, 0($12)
- i32.store $discard=, 56($22):p2align=3, $pop19
- i32.const $push24=, 4
- i32.const $21=, 16
- i32.add $21=, $22, $21
- i32.or $10=, $21, $pop24
- i32.const $11=, 0
+ i32.add $push18=, $pop29, $pop28
+ i32.store $discard=, 60($18), $pop18
+ i32.load $push19=, 0($8)
+ i32.store $discard=, 56($18):p2align=3, $pop19
+ i32.const $push21=, 12
+ i32.or $9=, $18, $pop21
+ i32.const $push27=, 4
+ i32.const $17=, 16
+ i32.add $17=, $18, $17
+ i32.or $11=, $17, $pop27
i32.const $12=, 0
+ i32.const $8=, 0
.LBB8_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label22:
block
- i32.eq $push20=, $12, $11
+ i32.eq $push20=, $8, $12
br_if 0, $pop20 # 0: down to label24
# BB#2: # %if.then.i
# in Loop: Header=BB8_1 Depth=1
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 16
- i32.sub $22=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $22=, 0($14), $22
+ i32.store $10=, 0($9), $8
+ i32.const $push44=, 8
+ i32.or $push22=, $18, $pop44
+ i32.store $discard=, 0($pop22):p2align=3, $12
+ i32.const $push43=, 4
+ i32.or $push23=, $18, $pop43
+ i32.store $discard=, 0($pop23), $10
i32.const $push42=, .L.str.8
- i32.store $discard=, 0($22), $pop42
- i32.const $push41=, 12
- i32.add $8=, $22, $pop41
- i32.store $8=, 0($8), $12
- i32.const $push40=, 8
- i32.add $9=, $22, $pop40
- i32.store $discard=, 0($9), $11
- i32.const $push39=, 4
- i32.add $11=, $22, $pop39
- i32.store $discard=, 0($11), $8
- i32.const $push38=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop38
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 16
- i32.add $22=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $22=, 0($16), $22
- i32.const $push37=, 0
- i32.const $push36=, 0
- i32.load $push21=, errors($pop36)
- i32.const $push35=, 1
- i32.add $push22=, $pop21, $pop35
- i32.store $discard=, errors($pop37), $pop22
+ i32.store $discard=, 0($18):p2align=4, $pop42
+ i32.const $push41=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop41, $18
+ i32.const $push40=, 0
+ i32.const $push39=, 0
+ i32.load $push24=, errors($pop39)
+ i32.const $push38=, 1
+ i32.add $push25=, $pop24, $pop38
+ i32.store $discard=, errors($pop40), $pop25
.LBB8_3: # %for.inc.i
# in Loop: Header=BB8_1 Depth=1
end_block # label24:
- i32.const $push43=, 10
- i32.eq $push23=, $12, $pop43
- br_if 1, $pop23 # 1: down to label23
+ i32.const $push45=, 10
+ i32.eq $push26=, $8, $pop45
+ br_if 1, $pop26 # 1: down to label23
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB8_1 Depth=1
- i32.load $11=, 0($10)
- i32.const $push45=, 1
- i32.add $12=, $12, $pop45
- i32.const $push44=, 4
- i32.add $10=, $10, $pop44
+ i32.load $12=, 0($11)
+ i32.const $push47=, 1
+ i32.add $8=, $8, $pop47
+ i32.const $push46=, 4
+ i32.add $11=, $11, $pop46
br 0 # 0: up to label22
.LBB8_5: # %verify.exit
end_loop # label23:
- i32.const $19=, 64
- i32.add $22=, $23, $19
- i32.const $19=, __stack_pointer
- i32.store $22=, 0($19), $22
+ i32.const $15=, 64
+ i32.add $18=, $18, $15
+ i32.const $15=, __stack_pointer
+ i32.store $18=, 0($15), $18
return
.endfunc
.Lfunc_end8:
@@ -1525,117 +1359,104 @@ varargs7: # @varargs7
.section .text.varargs8,"ax",@progbits
.type varargs8,@function
varargs8: # @varargs8
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 64
- i32.sub $24=, $19, $20
- copy_local $25=, $24
- i32.const $20=, __stack_pointer
- i32.store $24=, 0($20), $24
- i32.store $discard=, 60($24), $25
- i32.load $14=, 60($24)
+ i32.const $15=, __stack_pointer
+ i32.load $15=, 0($15)
+ i32.const $16=, 64
+ i32.sub $20=, $15, $16
+ i32.const $16=, __stack_pointer
+ i32.store $20=, 0($16), $20
+ i32.store $discard=, 60($20), $9
+ i32.load $9=, 60($20)
i32.const $push1=, 8
- i32.const $22=, 16
- i32.add $22=, $24, $22
- i32.or $push2=, $22, $pop1
+ i32.const $18=, 16
+ i32.add $18=, $20, $18
+ i32.or $push2=, $18, $pop1
i64.const $push3=, 12884901890
i64.store $discard=, 0($pop2), $pop3
i32.const $push6=, 3
- i32.add $push7=, $14, $pop6
+ i32.add $push7=, $9, $pop6
i32.const $push8=, -4
i32.and $push9=, $pop7, $pop8
- tee_local $push27=, $14=, $pop9
- i32.const $push26=, 4
- i32.add $push10=, $pop27, $pop26
- i32.store $discard=, 60($24), $pop10
+ tee_local $push30=, $9=, $pop9
+ i32.const $push29=, 4
+ i32.add $push10=, $pop30, $pop29
+ i32.store $discard=, 60($20), $pop10
i64.const $push0=, 4294967296
- i64.store $discard=, 16($24):p2align=4, $pop0
+ i64.store $discard=, 16($20):p2align=4, $pop0
i64.const $push4=, 21474836484
- i64.store $discard=, 32($24):p2align=4, $pop4
+ i64.store $discard=, 32($20):p2align=4, $pop4
i64.const $push5=, 30064771078
- i64.store $discard=, 40($24), $pop5
- i32.const $push25=, 8
- i32.store $9=, 48($24):p2align=4, $pop25
- i32.load $12=, 60($24)
- i32.load $push11=, 0($14)
- i32.store $discard=, 52($24), $pop11
- i32.const $push24=, 3
- i32.add $push12=, $12, $pop24
- i32.const $push23=, -4
- i32.and $push13=, $pop12, $pop23
- tee_local $push22=, $14=, $pop13
- i32.const $push21=, 4
- i32.add $push14=, $pop22, $pop21
- i32.store $discard=, 60($24), $pop14
- i32.load $push15=, 0($14)
- i32.store $discard=, 56($24):p2align=3, $pop15
- i32.const $push20=, 4
- i32.const $23=, 16
- i32.add $23=, $24, $23
- i32.or $12=, $23, $pop20
- i32.const $13=, 0
+ i64.store $discard=, 40($20), $pop5
+ i32.const $push28=, 8
+ i32.store $10=, 48($20):p2align=4, $pop28
+ i32.load $13=, 60($20)
+ i32.load $push11=, 0($9)
+ i32.store $discard=, 52($20), $pop11
+ i32.const $push27=, 3
+ i32.add $push12=, $13, $pop27
+ i32.const $push26=, -4
+ i32.and $push13=, $pop12, $pop26
+ tee_local $push25=, $9=, $pop13
+ i32.const $push24=, 4
+ i32.add $push14=, $pop25, $pop24
+ i32.store $discard=, 60($20), $pop14
+ i32.load $push15=, 0($9)
+ i32.store $discard=, 56($20):p2align=3, $pop15
+ i32.const $push17=, 12
+ i32.or $11=, $20, $pop17
+ i32.const $push23=, 4
+ i32.const $19=, 16
+ i32.add $19=, $20, $19
+ i32.or $13=, $19, $pop23
i32.const $14=, 0
+ i32.const $9=, 0
.LBB9_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label25:
block
- i32.eq $push16=, $14, $13
+ i32.eq $push16=, $9, $14
br_if 0, $pop16 # 0: down to label27
# BB#2: # %if.then.i
# in Loop: Header=BB9_1 Depth=1
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 16
- i32.sub $24=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $24=, 0($16), $24
- i32.const $push34=, .L.str.9
- i32.store $discard=, 0($24), $pop34
- i32.const $push33=, 12
- i32.add $10=, $24, $pop33
- i32.store $10=, 0($10), $14
- i32.add $11=, $24, $9
- i32.store $discard=, 0($11), $13
- i32.const $push32=, 4
- i32.add $13=, $24, $pop32
- i32.store $discard=, 0($13), $10
- i32.const $push31=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop31
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 16
- i32.add $24=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $24=, 0($18), $24
- i32.const $push30=, 0
- i32.const $push29=, 0
- i32.load $push17=, errors($pop29)
- i32.const $push28=, 1
- i32.add $push18=, $pop17, $pop28
- i32.store $discard=, errors($pop30), $pop18
+ i32.store $12=, 0($11), $9
+ i32.or $push18=, $20, $10
+ i32.store $discard=, 0($pop18):p2align=3, $14
+ i32.const $push36=, 4
+ i32.or $push19=, $20, $pop36
+ i32.store $discard=, 0($pop19), $12
+ i32.const $push35=, .L.str.9
+ i32.store $discard=, 0($20):p2align=4, $pop35
+ i32.const $push34=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop34, $20
+ i32.const $push33=, 0
+ i32.const $push32=, 0
+ i32.load $push20=, errors($pop32)
+ i32.const $push31=, 1
+ i32.add $push21=, $pop20, $pop31
+ i32.store $discard=, errors($pop33), $pop21
.LBB9_3: # %for.inc.i
# in Loop: Header=BB9_1 Depth=1
end_block # label27:
- i32.const $push35=, 10
- i32.eq $push19=, $14, $pop35
- br_if 1, $pop19 # 1: down to label26
+ i32.const $push37=, 10
+ i32.eq $push22=, $9, $pop37
+ br_if 1, $pop22 # 1: down to label26
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB9_1 Depth=1
- i32.load $13=, 0($12)
- i32.const $push37=, 1
- i32.add $14=, $14, $pop37
- i32.const $push36=, 4
- i32.add $12=, $12, $pop36
+ i32.load $14=, 0($13)
+ i32.const $push39=, 1
+ i32.add $9=, $9, $pop39
+ i32.const $push38=, 4
+ i32.add $13=, $13, $pop38
br 0 # 0: up to label25
.LBB9_5: # %verify.exit
end_loop # label26:
- i32.const $21=, 64
- i32.add $24=, $25, $21
- i32.const $21=, __stack_pointer
- i32.store $24=, 0($21), $24
+ i32.const $17=, 64
+ i32.add $20=, $20, $17
+ i32.const $17=, __stack_pointer
+ i32.store $20=, 0($17), $20
return
.endfunc
.Lfunc_end9:
@@ -1644,107 +1465,94 @@ varargs8: # @varargs8
.section .text.varargs9,"ax",@progbits
.type varargs9,@function
varargs9: # @varargs9
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 64
- i32.sub $24=, $19, $20
- copy_local $25=, $24
- i32.const $20=, __stack_pointer
- i32.store $24=, 0($20), $24
- i32.store $discard=, 60($24), $25
- i32.load $14=, 60($24)
- i32.const $push19=, 8
- i32.const $22=, 16
- i32.add $22=, $24, $22
- i32.or $push1=, $22, $pop19
+ i32.const $15=, __stack_pointer
+ i32.load $15=, 0($15)
+ i32.const $16=, 64
+ i32.sub $20=, $15, $16
+ i32.const $16=, __stack_pointer
+ i32.store $20=, 0($16), $20
+ i32.store $discard=, 60($20), $10
+ i32.load $10=, 60($20)
+ i32.const $push22=, 8
+ i32.const $18=, 16
+ i32.add $18=, $20, $18
+ i32.or $push1=, $18, $pop22
i64.const $push2=, 12884901890
i64.store $discard=, 0($pop1), $pop2
i32.const $push6=, 3
- i32.add $push7=, $14, $pop6
+ i32.add $push7=, $10, $pop6
i32.const $push8=, -4
i32.and $push9=, $pop7, $pop8
- tee_local $push18=, $14=, $pop9
- i32.const $push17=, 4
- i32.add $push10=, $pop18, $pop17
- i32.store $discard=, 60($24), $pop10
+ tee_local $push21=, $10=, $pop9
+ i32.const $push20=, 4
+ i32.add $push10=, $pop21, $pop20
+ i32.store $discard=, 60($20), $pop10
i64.const $push0=, 4294967296
- i64.store $discard=, 16($24):p2align=4, $pop0
+ i64.store $discard=, 16($20):p2align=4, $pop0
i64.const $push3=, 21474836484
- i64.store $discard=, 32($24):p2align=4, $pop3
+ i64.store $discard=, 32($20):p2align=4, $pop3
i64.const $push4=, 30064771078
- i64.store $discard=, 40($24), $pop4
+ i64.store $discard=, 40($20), $pop4
i64.const $push5=, 38654705672
- i64.store $discard=, 48($24):p2align=4, $pop5
- i32.load $push11=, 0($14)
- i32.store $discard=, 56($24):p2align=3, $pop11
- i32.const $push16=, 4
- i32.const $23=, 16
- i32.add $23=, $24, $23
- i32.or $12=, $23, $pop16
- i32.const $13=, 0
+ i64.store $discard=, 48($20):p2align=4, $pop5
+ i32.load $push11=, 0($10)
+ i32.store $discard=, 56($20):p2align=3, $pop11
+ i32.const $push13=, 12
+ i32.or $11=, $20, $pop13
+ i32.const $push19=, 4
+ i32.const $19=, 16
+ i32.add $19=, $20, $19
+ i32.or $13=, $19, $pop19
i32.const $14=, 0
+ i32.const $10=, 0
.LBB10_1: # %for.body.i
# =>This Inner Loop Header: Depth=1
loop # label28:
block
- i32.eq $push12=, $14, $13
+ i32.eq $push12=, $10, $14
br_if 0, $pop12 # 0: down to label30
# BB#2: # %if.then.i
# in Loop: Header=BB10_1 Depth=1
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 16
- i32.sub $24=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $24=, 0($16), $24
+ i32.store $12=, 0($11), $10
+ i32.const $push29=, 8
+ i32.or $push14=, $20, $pop29
+ i32.store $discard=, 0($pop14):p2align=3, $14
+ i32.const $push28=, 4
+ i32.or $push15=, $20, $pop28
+ i32.store $discard=, 0($pop15), $12
i32.const $push27=, .L.str.10
- i32.store $discard=, 0($24), $pop27
- i32.const $push26=, 12
- i32.add $10=, $24, $pop26
- i32.store $10=, 0($10), $14
- i32.const $push25=, 8
- i32.add $11=, $24, $pop25
- i32.store $discard=, 0($11), $13
- i32.const $push24=, 4
- i32.add $13=, $24, $pop24
- i32.store $discard=, 0($13), $10
- i32.const $push23=, .L.str.1
- i32.call $discard=, printf@FUNCTION, $pop23
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 16
- i32.add $24=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $24=, 0($18), $24
- i32.const $push22=, 0
- i32.const $push21=, 0
- i32.load $push13=, errors($pop21)
- i32.const $push20=, 1
- i32.add $push14=, $pop13, $pop20
- i32.store $discard=, errors($pop22), $pop14
+ i32.store $discard=, 0($20):p2align=4, $pop27
+ i32.const $push26=, .L.str.1
+ i32.call $discard=, printf@FUNCTION, $pop26, $20
+ i32.const $push25=, 0
+ i32.const $push24=, 0
+ i32.load $push16=, errors($pop24)
+ i32.const $push23=, 1
+ i32.add $push17=, $pop16, $pop23
+ i32.store $discard=, errors($pop25), $pop17
.LBB10_3: # %for.inc.i
# in Loop: Header=BB10_1 Depth=1
end_block # label30:
- i32.const $push28=, 10
- i32.eq $push15=, $14, $pop28
- br_if 1, $pop15 # 1: down to label29
+ i32.const $push30=, 10
+ i32.eq $push18=, $10, $pop30
+ br_if 1, $pop18 # 1: down to label29
# BB#4: # %for.inc.i.for.body.i_crit_edge
# in Loop: Header=BB10_1 Depth=1
- i32.load $13=, 0($12)
- i32.const $push30=, 1
- i32.add $14=, $14, $pop30
- i32.const $push29=, 4
- i32.add $12=, $12, $pop29
+ i32.load $14=, 0($13)
+ i32.const $push32=, 1
+ i32.add $10=, $10, $pop32
+ i32.const $push31=, 4
+ i32.add $13=, $13, $pop31
br 0 # 0: up to label28
.LBB10_5: # %verify.exit
end_loop # label29:
- i32.const $21=, 64
- i32.add $24=, $25, $21
- i32.const $21=, __stack_pointer
- i32.store $24=, 0($21), $24
+ i32.const $17=, 64
+ i32.add $20=, $20, $17
+ i32.const $17=, __stack_pointer
+ i32.store $20=, 0($17), $20
return
.endfunc
.Lfunc_end10:
diff --git a/test/torture-s/va-arg-26.c.s b/test/torture-s/va-arg-26.c.s
index ac17f5fc8..f70a2751a 100644
--- a/test/torture-s/va-arg-26.c.s
+++ b/test/torture-s/va-arg-26.c.s
@@ -5,18 +5,17 @@
.globl f
.type f,@function
f: # @f
- .param f32, f32, f32, f32, f32, f32
+ .param f32, f32, f32, f32, f32, f32, i32
.result f64
- .local i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $7=, __stack_pointer
i32.load $7=, 0($7)
i32.const $8=, 16
i32.sub $10=, $7, $8
- copy_local $11=, $10
i32.const $8=, __stack_pointer
i32.store $10=, 0($8), $10
- i32.store $push0=, 12($10), $11
+ i32.store $push0=, 12($10), $6
i32.const $push1=, 7
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -8
@@ -27,7 +26,7 @@ f: # @f
i32.store $discard=, 12($10), $pop6
f64.load $push7=, 0($6)
i32.const $9=, 16
- i32.add $10=, $11, $9
+ i32.add $10=, $10, $9
i32.const $9=, __stack_pointer
i32.store $10=, 0($9), $10
return $pop7
@@ -41,40 +40,28 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local f64, f32, i32, i32, i32, i32, i32, i32, i32
+ .local f32, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 8
- i32.sub $8=, $2, $3
- i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
+ i32.store $3=, 0($2), $3
i64.const $push0=, 4619567317775286272
- i64.store $discard=, 0($8), $pop0
- f64.call $0=, f@FUNCTION, $1, $1, $1, $1, $1, $1
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 8
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
+ i64.store $discard=, 0($3):p2align=4, $pop0
block
- f64.const $push1=, 0x1.cp2
- f64.eq $push2=, $0, $pop1
- br_if 0, $pop2 # 0: down to label0
+ f64.call $push1=, f@FUNCTION, $0, $0, $0, $0, $0, $0, $3
+ f64.const $push2=, 0x1.cp2
+ f64.eq $push3=, $pop1, $pop2
+ br_if 0, $pop3 # 0: down to label0
# BB#1: # %if.then
call abort@FUNCTION
unreachable
.LBB1_2: # %if.end
end_block # label0:
- i32.const $push3=, 0
- call exit@FUNCTION, $pop3
+ i32.const $push4=, 0
+ call exit@FUNCTION, $pop4
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-4.c.s b/test/torture-s/va-arg-4.c.s
index 6197063ab..dfa905891 100644
--- a/test/torture-s/va-arg-4.c.s
+++ b/test/torture-s/va-arg-4.c.s
@@ -5,16 +5,15 @@
.globl f
.type f,@function
f: # @f
- .param i32, i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $2=, __stack_pointer
- i32.load $2=, 0($2)
- i32.const $3=, 16
- i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
- i32.store $5=, 0($3), $5
+ 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
block
i32.load8_u $push0=, 0($0)
i32.const $push1=, 97
@@ -31,7 +30,7 @@ f: # @f
i32.ne $push8=, $pop6, $pop7
br_if 0, $pop8 # 0: down to label0
# BB#3: # %if.end
- i32.store $push9=, 12($5), $6
+ i32.store $push9=, 12($6), $2
i32.const $push34=, 3
i32.add $push10=, $pop9, $pop34
i32.const $push33=, -4
@@ -39,14 +38,14 @@ f: # @f
tee_local $push32=, $0=, $pop11
i32.const $push31=, 4
i32.add $push12=, $pop32, $pop31
- i32.store $discard=, 12($5), $pop12
+ i32.store $discard=, 12($6), $pop12
block
i32.load $push13=, 0($0)
i32.const $push14=, 42
i32.ne $push15=, $pop13, $pop14
br_if 0, $pop15 # 0: down to label1
# BB#4: # %if.end17
- i32.load $push16=, 12($5)
+ i32.load $push16=, 12($6)
i32.const $push38=, 3
i32.add $push17=, $pop16, $pop38
i32.const $push37=, -4
@@ -54,14 +53,14 @@ f: # @f
tee_local $push36=, $0=, $pop18
i32.const $push35=, 4
i32.add $push19=, $pop36, $pop35
- i32.store $discard=, 12($5), $pop19
+ i32.store $discard=, 12($6), $pop19
block
i32.load $push20=, 0($0)
i32.const $push21=, 120
i32.ne $push22=, $pop20, $pop21
br_if 0, $pop22 # 0: down to label2
# BB#5: # %if.end21
- i32.load $push23=, 12($5)
+ i32.load $push23=, 12($6)
i32.const $push24=, 3
i32.add $push25=, $pop23, $pop24
i32.const $push26=, -4
@@ -69,15 +68,15 @@ f: # @f
tee_local $push39=, $0=, $pop27
i32.const $push28=, 4
i32.add $push29=, $pop39, $pop28
- i32.store $discard=, 12($5), $pop29
+ i32.store $discard=, 12($6), $pop29
block
i32.load $push30=, 0($0)
br_if 0, $pop30 # 0: down to label3
# BB#6: # %if.end25
- i32.const $4=, 16
- i32.add $5=, $6, $4
- i32.const $4=, __stack_pointer
- i32.store $5=, 0($4), $5
+ i32.const $5=, 16
+ i32.add $6=, $6, $5
+ i32.const $5=, __stack_pointer
+ i32.store $6=, 0($5), $6
return
.LBB0_7: # %if.then24
end_block # label3:
@@ -105,59 +104,47 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 48
- i32.sub $11=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $11=, 0($6), $11
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 48
+ i32.sub $7=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $7=, 0($2), $7
i32.const $push2=, 24
- i32.const $7=, 16
- i32.add $7=, $11, $7
- i32.add $push3=, $7, $pop2
+ i32.const $3=, 16
+ i32.add $3=, $7, $3
+ i32.add $push3=, $3, $pop2
i32.const $push0=, 0
i64.load $push1=, main.x+24($pop0):p2align=0
i64.store $discard=, 0($pop3):p2align=2, $pop1
i32.const $push5=, 16
- i32.const $8=, 16
- i32.add $8=, $11, $8
- i32.add $push6=, $8, $pop5
- i32.const $push16=, 0
- i64.load $push4=, main.x+16($pop16):p2align=0
+ i32.const $4=, 16
+ i32.add $4=, $7, $4
+ i32.add $push6=, $4, $pop5
+ i32.const $push17=, 0
+ i64.load $push4=, main.x+16($pop17):p2align=0
i64.store $discard=, 0($pop6):p2align=2, $pop4
i32.const $push8=, 8
- i32.const $9=, 16
- i32.add $9=, $11, $9
- i32.add $push9=, $9, $pop8
- i32.const $push15=, 0
- i64.load $push7=, main.x+8($pop15):p2align=0
+ i32.const $5=, 16
+ i32.add $5=, $7, $5
+ i32.add $push9=, $5, $pop8
+ i32.const $push16=, 0
+ i64.load $push7=, main.x+8($pop16):p2align=0
i64.store $discard=, 0($pop9):p2align=2, $pop7
- i32.const $push14=, 0
- i64.load $push10=, main.x($pop14):p2align=0
- i64.store $discard=, 16($11):p2align=2, $pop10
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 12
- i32.sub $11=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $11=, 0($2), $11
- i64.const $push11=, 515396075562
- i64.store $discard=, 0($11):p2align=2, $pop11
- i32.const $push13=, 8
- i32.add $0=, $11, $pop13
- i32.const $push12=, 0
- i32.store $0=, 0($0), $pop12
- i32.const $10=, 16
- i32.add $10=, $11, $10
- call f@FUNCTION, $10, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 12
- i32.add $11=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $11=, 0($4), $11
+ i32.const $push15=, 0
+ i64.load $push10=, main.x($pop15):p2align=0
+ i64.store $discard=, 16($7):p2align=2, $pop10
+ i32.const $push14=, 8
+ i32.or $push11=, $7, $pop14
+ i32.const $push13=, 0
+ i32.store $0=, 0($pop11):p2align=3, $pop13
+ i64.const $push12=, 515396075562
+ i64.store $discard=, 0($7):p2align=4, $pop12
+ i32.const $6=, 16
+ i32.add $6=, $7, $6
+ call f@FUNCTION, $6, $0, $7
call exit@FUNCTION, $0
unreachable
.endfunc
diff --git a/test/torture-s/va-arg-5.c.s b/test/torture-s/va-arg-5.c.s
index 06cf44160..777e17c35 100644
--- a/test/torture-s/va-arg-5.c.s
+++ b/test/torture-s/va-arg-5.c.s
@@ -5,18 +5,17 @@
.globl va_double
.type va_double,@function
va_double: # @va_double
- .param i32
+ .param i32, i32
.result i32
- .local i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
i32.const $3=, 16
i32.sub $5=, $2, $3
- copy_local $6=, $5
i32.const $3=, __stack_pointer
i32.store $5=, 0($3), $5
- i32.store $push0=, 12($5), $6
+ i32.store $push0=, 12($5), $1
i32.const $push31=, 7
i32.add $push1=, $pop0, $pop31
i32.const $push30=, -8
@@ -77,7 +76,7 @@ va_double: # @va_double
br_if 0, $pop27 # 0: down to label3
# BB#4: # %if.end10
i32.const $4=, 16
- i32.add $5=, $6, $4
+ i32.add $5=, $5, $4
i32.const $4=, __stack_pointer
i32.store $5=, 0($4), $5
return $1
@@ -106,36 +105,35 @@ va_double: # @va_double
.globl va_long_double
.type va_long_double,@function
va_long_double: # @va_long_double
- .param i32
+ .param i32, i32
.result i32
- .local i64, i32, i32, i32, i32, i32, i32
+ .local i64, 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $push0=, 12($6), $7
+ i32.store $push0=, 12($6), $1
i32.const $push45=, 15
i32.add $push1=, $pop0, $pop45
i32.const $push44=, -16
i32.and $push2=, $pop1, $pop44
- tee_local $push43=, $2=, $pop2
- i64.load $1=, 0($pop43)
+ tee_local $push43=, $1=, $pop2
+ i64.load $2=, 0($pop43)
i32.const $push42=, 8
- i32.or $push3=, $2, $pop42
+ i32.or $push3=, $1, $pop42
i32.store $push4=, 12($6), $pop3
- tee_local $push41=, $2=, $pop4
+ tee_local $push41=, $1=, $pop4
i32.const $push40=, 8
i32.add $push5=, $pop41, $pop40
i32.store $discard=, 12($6), $pop5
block
- i64.load $push6=, 0($2)
+ i64.load $push6=, 0($1)
i64.const $push8=, -7338557514379428662
i64.const $push7=, 4611846683218194439
- i32.call $push9=, __eqtf2@FUNCTION, $1, $pop6, $pop8, $pop7
+ i32.call $push9=, __eqtf2@FUNCTION, $2, $pop6, $pop8, $pop7
br_if 0, $pop9 # 0: down to label4
# BB#1: # %if.end
i32.load $push10=, 12($6)
@@ -143,20 +141,20 @@ va_long_double: # @va_long_double
i32.add $push11=, $pop10, $pop51
i32.const $push50=, -16
i32.and $push12=, $pop11, $pop50
- tee_local $push49=, $2=, $pop12
- i64.load $1=, 0($pop49)
+ tee_local $push49=, $1=, $pop12
+ i64.load $2=, 0($pop49)
i32.const $push48=, 8
- i32.or $push13=, $2, $pop48
+ i32.or $push13=, $1, $pop48
i32.store $push14=, 12($6), $pop13
- tee_local $push47=, $2=, $pop14
+ tee_local $push47=, $1=, $pop14
i32.const $push46=, 8
i32.add $push15=, $pop47, $pop46
i32.store $discard=, 12($6), $pop15
block
- i64.load $push16=, 0($2)
+ i64.load $push16=, 0($1)
i64.const $push18=, 8163791057260899163
i64.const $push17=, 4611787105943148885
- i32.call $push19=, __eqtf2@FUNCTION, $1, $pop16, $pop18, $pop17
+ i32.call $push19=, __eqtf2@FUNCTION, $2, $pop16, $pop18, $pop17
br_if 0, $pop19 # 0: down to label5
# BB#2: # %if.end4
i32.load $push20=, 12($6)
@@ -164,20 +162,20 @@ va_long_double: # @va_long_double
i32.add $push21=, $pop20, $pop57
i32.const $push56=, -16
i32.and $push22=, $pop21, $pop56
- tee_local $push55=, $2=, $pop22
- i64.load $1=, 0($pop55)
+ tee_local $push55=, $1=, $pop22
+ i64.load $2=, 0($pop55)
i32.const $push54=, 8
- i32.or $push23=, $2, $pop54
+ i32.or $push23=, $1, $pop54
i32.store $push24=, 12($6), $pop23
- tee_local $push53=, $2=, $pop24
+ tee_local $push53=, $1=, $pop24
i32.const $push52=, 8
i32.add $push25=, $pop53, $pop52
i32.store $discard=, 12($6), $pop25
block
- i64.load $push26=, 0($2)
+ i64.load $push26=, 0($1)
i64.const $push28=, -4892607794577095924
i64.const $push27=, 4611719242030715220
- i32.call $push29=, __eqtf2@FUNCTION, $1, $pop26, $pop28, $pop27
+ i32.call $push29=, __eqtf2@FUNCTION, $2, $pop26, $pop28, $pop27
br_if 0, $pop29 # 0: down to label6
# BB#3: # %if.end7
i32.load $push30=, 12($6)
@@ -185,27 +183,27 @@ va_long_double: # @va_long_double
i32.add $push31=, $pop30, $pop63
i32.const $push62=, -16
i32.and $push32=, $pop31, $pop62
- tee_local $push61=, $2=, $pop32
- i64.load $1=, 0($pop61)
+ tee_local $push61=, $1=, $pop32
+ i64.load $2=, 0($pop61)
i32.const $push60=, 8
- i32.or $push33=, $2, $pop60
+ i32.or $push33=, $1, $pop60
i32.store $push34=, 12($6), $pop33
- tee_local $push59=, $2=, $pop34
+ tee_local $push59=, $1=, $pop34
i32.const $push58=, 8
i32.add $push35=, $pop59, $pop58
i32.store $discard=, 12($6), $pop35
block
- i64.load $push36=, 0($2)
+ i64.load $push36=, 0($1)
i64.const $push38=, -2718666384188054750
i64.const $push37=, 4611706774898825505
- i32.call $push39=, __eqtf2@FUNCTION, $1, $pop36, $pop38, $pop37
+ i32.call $push39=, __eqtf2@FUNCTION, $2, $pop36, $pop38, $pop37
br_if 0, $pop39 # 0: down to label7
# BB#4: # %if.end10
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
- return $2
+ return $1
.LBB1_5: # %if.then9
end_block # label7:
call abort@FUNCTION
@@ -232,86 +230,70 @@ va_long_double: # @va_long_double
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 64
- i32.sub $11=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $11=, 0($10), $11
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 32
- i32.sub $11=, $1, $2
+ i32.const $2=, 96
+ i32.sub $7=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $11=, 0($2), $11
- i64.const $push0=, 4614256655080292474
- i64.store $discard=, 0($11), $pop0
- i32.const $push1=, 24
- i32.add $0=, $11, $pop1
+ i32.store $7=, 0($2), $7
+ i32.const $push0=, 24
+ i32.const $3=, 64
+ i32.add $3=, $7, $3
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 4612018121970389534
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1), $pop2
i32.const $push3=, 16
- i32.add $0=, $11, $pop3
- i64.const $push4=, 4612217596080624972
- i64.store $discard=, 0($0), $pop4
- i32.const $push5=, 8
- i32.add $0=, $11, $pop5
- i64.const $push6=, 4613303418679563607
- i64.store $discard=, 0($0), $pop6
- i32.call $discard=, va_double@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 32
- i32.add $11=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $11=, 0($4), $11
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
+ i32.const $4=, 64
+ i32.add $4=, $7, $4
+ i32.add $push4=, $4, $pop3
+ i64.const $push5=, 4612217596080624972
+ i64.store $discard=, 0($pop4):p2align=4, $pop5
+ i32.const $push6=, 8
+ i32.const $5=, 64
+ i32.add $5=, $7, $5
+ i32.or $push7=, $5, $pop6
+ i64.const $push8=, 4613303418679563607
+ i64.store $discard=, 0($pop7), $pop8
+ i64.const $push9=, 4614256655080292474
+ i64.store $discard=, 64($7):p2align=4, $pop9
i32.const $6=, 64
- i32.sub $11=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $11=, 0($6), $11
- i64.const $push7=, -7338557514379428662
- i64.store $discard=, 0($11), $pop7
- i32.const $push8=, 56
- i32.add $0=, $11, $pop8
- i64.const $push9=, 4611706774898825505
- i64.store $discard=, 0($0), $pop9
- i32.const $push10=, 48
- i32.add $0=, $11, $pop10
- i64.const $push11=, -2718666384188054750
- i64.store $discard=, 0($0), $pop11
- i32.const $push12=, 40
- i32.add $0=, $11, $pop12
- i64.const $push13=, 4611719242030715220
- i64.store $discard=, 0($0), $pop13
- i32.const $push14=, 32
- i32.add $0=, $11, $pop14
- i64.const $push15=, -4892607794577095924
- i64.store $discard=, 0($0), $pop15
- i32.const $push22=, 24
- i32.add $0=, $11, $pop22
- i64.const $push16=, 4611787105943148885
- i64.store $discard=, 0($0), $pop16
- i32.const $push21=, 16
- i32.add $0=, $11, $pop21
- i64.const $push17=, 8163791057260899163
- i64.store $discard=, 0($0), $pop17
- i32.const $push20=, 8
- i32.add $0=, $11, $pop20
- i64.const $push18=, 4611846683218194439
- i64.store $discard=, 0($0), $pop18
- i32.call $discard=, va_long_double@FUNCTION, $0
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 64
- i32.add $11=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $11=, 0($8), $11
- i32.const $push19=, 0
- call exit@FUNCTION, $pop19
+ i32.add $6=, $7, $6
+ i32.call $discard=, va_double@FUNCTION, $0, $6
+ i32.const $push10=, 56
+ i32.add $push11=, $7, $pop10
+ i64.const $push12=, 4611706774898825505
+ i64.store $discard=, 0($pop11), $pop12
+ i32.const $push13=, 48
+ i32.add $push14=, $7, $pop13
+ i64.const $push15=, -2718666384188054750
+ i64.store $discard=, 0($pop14):p2align=4, $pop15
+ i32.const $push16=, 40
+ i32.add $push17=, $7, $pop16
+ i64.const $push18=, 4611719242030715220
+ i64.store $discard=, 0($pop17), $pop18
+ i32.const $push19=, 32
+ i32.add $push20=, $7, $pop19
+ i64.const $push21=, -4892607794577095924
+ i64.store $discard=, 0($pop20):p2align=4, $pop21
+ i32.const $push32=, 24
+ i32.add $push22=, $7, $pop32
+ i64.const $push23=, 4611787105943148885
+ i64.store $discard=, 0($pop22), $pop23
+ i32.const $push31=, 16
+ i32.add $push24=, $7, $pop31
+ i64.const $push25=, 8163791057260899163
+ i64.store $discard=, 0($pop24):p2align=4, $pop25
+ i32.const $push30=, 8
+ i32.or $push26=, $7, $pop30
+ i64.const $push27=, 4611846683218194439
+ i64.store $discard=, 0($pop26), $pop27
+ i64.const $push28=, -7338557514379428662
+ i64.store $discard=, 0($7):p2align=4, $pop28
+ i32.call $discard=, va_long_double@FUNCTION, $0, $7
+ i32.const $push29=, 0
+ call exit@FUNCTION, $pop29
unreachable
.endfunc
.Lfunc_end2:
diff --git a/test/torture-s/va-arg-6.c.s b/test/torture-s/va-arg-6.c.s
index 80cf546d3..34ccf93d5 100644
--- a/test/torture-s/va-arg-6.c.s
+++ b/test/torture-s/va-arg-6.c.s
@@ -5,28 +5,27 @@
.globl f
.type f,@function
f: # @f
- .param i32
+ .param i32, i32
.result i32
- .local i64, i32, i32, i32, i32, i32, i32
+ .local i64, 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $push0=, 12($6), $7
+ i32.store $push0=, 12($6), $1
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
i32.and $push4=, $pop2, $pop3
- tee_local $push87=, $2=, $pop4
+ tee_local $push87=, $1=, $pop4
i32.const $push5=, 4
i32.add $push6=, $pop87, $pop5
i32.store $discard=, 12($6), $pop6
block
- i32.load $push7=, 0($2)
+ i32.load $push7=, 0($1)
i32.const $push8=, 10
i32.ne $push9=, $pop7, $pop8
br_if 0, $pop9 # 0: down to label0
@@ -36,12 +35,12 @@ f: # @f
i32.add $push12=, $pop10, $pop11
i32.const $push13=, -8
i32.and $push14=, $pop12, $pop13
- tee_local $push88=, $2=, $pop14
+ tee_local $push88=, $1=, $pop14
i32.const $push15=, 8
i32.add $push16=, $pop88, $pop15
i32.store $discard=, 12($6), $pop16
block
- i64.load $push17=, 0($2)
+ i64.load $push17=, 0($1)
i64.const $push18=, 10000000000
i64.ne $push19=, $pop17, $pop18
br_if 0, $pop19 # 0: down to label1
@@ -51,12 +50,12 @@ f: # @f
i32.add $push22=, $pop20, $pop21
i32.const $push23=, -4
i32.and $push24=, $pop22, $pop23
- tee_local $push89=, $2=, $pop24
+ tee_local $push89=, $1=, $pop24
i32.const $push25=, 4
i32.add $push26=, $pop89, $pop25
i32.store $discard=, 12($6), $pop26
block
- i32.load $push27=, 0($2)
+ i32.load $push27=, 0($1)
i32.const $push28=, 11
i32.ne $push29=, $pop27, $pop28
br_if 0, $pop29 # 0: down to label2
@@ -66,20 +65,20 @@ f: # @f
i32.add $push32=, $pop30, $pop31
i32.const $push33=, -16
i32.and $push34=, $pop32, $pop33
- tee_local $push92=, $2=, $pop34
- i64.load $1=, 0($pop92)
+ tee_local $push92=, $1=, $pop34
+ i64.load $2=, 0($pop92)
i32.const $push35=, 8
- i32.or $push36=, $2, $pop35
+ i32.or $push36=, $1, $pop35
i32.store $push37=, 12($6), $pop36
- tee_local $push91=, $2=, $pop37
+ tee_local $push91=, $1=, $pop37
i32.const $push90=, 8
i32.add $push38=, $pop91, $pop90
i32.store $discard=, 12($6), $pop38
block
- i64.load $push39=, 0($2)
+ i64.load $push39=, 0($1)
i64.const $push41=, -1475739525896764129
i64.const $push40=, 4611846459164112977
- i32.call $push42=, __eqtf2@FUNCTION, $1, $pop39, $pop41, $pop40
+ i32.call $push42=, __eqtf2@FUNCTION, $2, $pop39, $pop41, $pop40
br_if 0, $pop42 # 0: down to label3
# BB#4: # %if.end10
i32.load $push43=, 12($6)
@@ -87,12 +86,12 @@ f: # @f
i32.add $push44=, $pop43, $pop96
i32.const $push95=, -4
i32.and $push45=, $pop44, $pop95
- tee_local $push94=, $2=, $pop45
+ tee_local $push94=, $1=, $pop45
i32.const $push93=, 4
i32.add $push46=, $pop94, $pop93
i32.store $discard=, 12($6), $pop46
block
- i32.load $push47=, 0($2)
+ i32.load $push47=, 0($1)
i32.const $push48=, 12
i32.ne $push49=, $pop47, $pop48
br_if 0, $pop49 # 0: down to label4
@@ -102,12 +101,12 @@ f: # @f
i32.add $push51=, $pop50, $pop100
i32.const $push99=, -4
i32.and $push52=, $pop51, $pop99
- tee_local $push98=, $2=, $pop52
+ tee_local $push98=, $1=, $pop52
i32.const $push97=, 4
i32.add $push53=, $pop98, $pop97
i32.store $discard=, 12($6), $pop53
block
- i32.load $push54=, 0($2)
+ i32.load $push54=, 0($1)
i32.const $push55=, 13
i32.ne $push56=, $pop54, $pop55
br_if 0, $pop56 # 0: down to label5
@@ -117,12 +116,12 @@ f: # @f
i32.add $push59=, $pop57, $pop58
i32.const $push60=, -8
i32.and $push61=, $pop59, $pop60
- tee_local $push101=, $2=, $pop61
+ tee_local $push101=, $1=, $pop61
i32.const $push62=, 8
i32.add $push63=, $pop101, $pop62
i32.store $discard=, 12($6), $pop63
block
- i64.load $push64=, 0($2)
+ i64.load $push64=, 0($1)
i64.const $push65=, 20000000000
i64.ne $push66=, $pop64, $pop65
br_if 0, $pop66 # 0: down to label6
@@ -132,12 +131,12 @@ f: # @f
i32.add $push69=, $pop67, $pop68
i32.const $push70=, -4
i32.and $push71=, $pop69, $pop70
- tee_local $push102=, $2=, $pop71
+ tee_local $push102=, $1=, $pop71
i32.const $push72=, 4
i32.add $push73=, $pop102, $pop72
i32.store $discard=, 12($6), $pop73
block
- i32.load $push74=, 0($2)
+ i32.load $push74=, 0($1)
i32.const $push75=, 14
i32.ne $push76=, $pop74, $pop75
br_if 0, $pop76 # 0: down to label7
@@ -147,21 +146,21 @@ f: # @f
i32.add $push79=, $pop77, $pop78
i32.const $push80=, -8
i32.and $push81=, $pop79, $pop80
- tee_local $push103=, $2=, $pop81
+ tee_local $push103=, $1=, $pop81
i32.const $push82=, 8
i32.add $push83=, $pop103, $pop82
i32.store $discard=, 12($6), $pop83
block
- f64.load $push84=, 0($2)
+ f64.load $push84=, 0($1)
f64.const $push85=, 0x1.5c28f5c28f5c3p1
f64.ne $push86=, $pop84, $pop85
br_if 0, $pop86 # 0: down to label8
# BB#9: # %if.end25
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
- return $2
+ return $1
.LBB0_10: # %if.then24
end_block # label8:
call abort@FUNCTION
@@ -208,67 +207,55 @@ f: # @f
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 80
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 72
- i32.sub $7=, $1, $2
+ i32.const $2=, 80
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i32.const $push0=, 10
- i32.store $discard=, 0($7), $pop0
- i32.const $push1=, 64
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 64
+ i32.add $push1=, $3, $pop0
i64.const $push2=, 4613307314293241283
- i64.store $discard=, 0($0), $pop2
+ i64.store $discard=, 0($pop1):p2align=4, $pop2
i32.const $push3=, 56
- i32.add $0=, $7, $pop3
- i32.const $push4=, 14
- i32.store $discard=, 0($0), $pop4
- i32.const $push5=, 48
- i32.add $0=, $7, $pop5
- i64.const $push6=, 20000000000
- i64.store $discard=, 0($0), $pop6
- i32.const $push7=, 44
- i32.add $0=, $7, $pop7
- i32.const $push8=, 13
- i32.store $discard=, 0($0), $pop8
- i32.const $push9=, 40
- i32.add $0=, $7, $pop9
- i32.const $push10=, 12
- i32.store $discard=, 0($0), $pop10
- i32.const $push11=, 32
- i32.add $0=, $7, $pop11
- i64.const $push12=, 4611846459164112977
- i64.store $discard=, 0($0), $pop12
- i32.const $push13=, 24
- i32.add $0=, $7, $pop13
- i64.const $push14=, -1475739525896764129
- i64.store $discard=, 0($0), $pop14
- i32.const $push15=, 16
- i32.add $0=, $7, $pop15
- i32.const $push16=, 11
- i32.store $discard=, 0($0), $pop16
- i32.const $push17=, 8
- i32.add $0=, $7, $pop17
- i64.const $push18=, 10000000000
- i64.store $discard=, 0($0), $pop18
- i32.call $discard=, f@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 72
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push19=, 0
- call exit@FUNCTION, $pop19
+ i32.add $push4=, $3, $pop3
+ i32.const $push5=, 14
+ i32.store $discard=, 0($pop4):p2align=3, $pop5
+ i32.const $push6=, 48
+ i32.add $push7=, $3, $pop6
+ i64.const $push8=, 20000000000
+ i64.store $discard=, 0($pop7):p2align=4, $pop8
+ i32.const $push9=, 44
+ i32.add $push10=, $3, $pop9
+ i32.const $push11=, 13
+ i32.store $discard=, 0($pop10), $pop11
+ i32.const $push12=, 40
+ i32.add $push13=, $3, $pop12
+ i32.const $push14=, 12
+ i32.store $discard=, 0($pop13):p2align=3, $pop14
+ i32.const $push15=, 32
+ i32.add $push16=, $3, $pop15
+ i64.const $push17=, 4611846459164112977
+ i64.store $discard=, 0($pop16):p2align=4, $pop17
+ i32.const $push18=, 24
+ i32.add $push19=, $3, $pop18
+ i64.const $push20=, -1475739525896764129
+ i64.store $discard=, 0($pop19), $pop20
+ i32.const $push21=, 16
+ i32.add $push22=, $3, $pop21
+ i32.const $push23=, 11
+ i32.store $discard=, 0($pop22):p2align=4, $pop23
+ i32.const $push24=, 8
+ i32.or $push25=, $3, $pop24
+ i64.const $push26=, 10000000000
+ i64.store $discard=, 0($pop25), $pop26
+ i32.const $push27=, 10
+ i32.store $discard=, 0($3):p2align=4, $pop27
+ i32.call $discard=, f@FUNCTION, $0, $3
+ i32.const $push28=, 0
+ call exit@FUNCTION, $pop28
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-7.c.s b/test/torture-s/va-arg-7.c.s
index 0a7822ab7..b5c8cff87 100644
--- a/test/torture-s/va-arg-7.c.s
+++ b/test/torture-s/va-arg-7.c.s
@@ -5,17 +5,16 @@
.globl debug
.type debug,@function
debug: # @debug
- .param i32, i32, i32, i32, i32, i32, i32, f64, f64, f64, f64, f64, f64, f64, f64, f64
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, f64, f64, f64, f64, f64, f64, f64, f64, f64, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $17=, __stack_pointer
i32.load $17=, 0($17)
i32.const $18=, 16
i32.sub $20=, $17, $18
- copy_local $21=, $20
i32.const $18=, __stack_pointer
i32.store $20=, 0($18), $20
- i32.store $push0=, 12($20), $21
+ i32.store $push0=, 12($20), $16
i32.const $push27=, 3
i32.add $push1=, $pop0, $pop27
i32.const $push26=, -4
@@ -61,7 +60,7 @@ debug: # @debug
br_if 0, $pop23 # 0: down to label2
# BB#3: # %if.end7
i32.const $19=, 16
- i32.add $20=, $21, $19
+ i32.add $20=, $20, $19
i32.const $19=, __stack_pointer
i32.store $20=, 0($19), $20
return
@@ -87,35 +86,23 @@ debug: # @debug
.type main,@function
main: # @main
.result i32
- .local i32, f64, i32, i32, i32, i32, i32, i32, i32
+ .local i32, f64, i32, i32, i32
# BB#0: # %entry
- i32.const $6=, __stack_pointer
- i32.load $6=, 0($6)
- i32.const $7=, 16
- i32.sub $8=, $6, $7
- i32.const $7=, __stack_pointer
- i32.store $8=, 0($7), $8
i32.const $2=, __stack_pointer
i32.load $2=, 0($2)
- i32.const $3=, 12
- i32.sub $8=, $2, $3
+ i32.const $3=, 16
+ i32.sub $4=, $2, $3
i32.const $3=, __stack_pointer
- i32.store $8=, 0($3), $8
- i64.const $push0=, 38654705672
- i64.store $discard=, 0($8):p2align=2, $pop0
- i32.const $push1=, 8
- i32.add $0=, $8, $pop1
+ i32.store $4=, 0($3), $4
+ i32.const $push0=, 8
+ i32.or $push1=, $4, $pop0
i32.const $push2=, 10
- i32.store $discard=, 0($0), $pop2
- call debug@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $1, $1, $1, $1, $1, $1, $1, $1, $1
- i32.const $4=, __stack_pointer
- i32.load $4=, 0($4)
- i32.const $5=, 12
- i32.add $8=, $4, $5
- i32.const $5=, __stack_pointer
- i32.store $8=, 0($5), $8
- i32.const $push3=, 0
- call exit@FUNCTION, $pop3
+ i32.store $discard=, 0($pop1):p2align=3, $pop2
+ i64.const $push3=, 38654705672
+ i64.store $discard=, 0($4):p2align=4, $pop3
+ call debug@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $1, $1, $1, $1, $1, $1, $1, $1, $1, $4
+ i32.const $push4=, 0
+ call exit@FUNCTION, $pop4
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-8.c.s b/test/torture-s/va-arg-8.c.s
index 1d4868bb9..0c1d39afb 100644
--- a/test/torture-s/va-arg-8.c.s
+++ b/test/torture-s/va-arg-8.c.s
@@ -5,17 +5,16 @@
.globl debug
.type debug,@function
debug: # @debug
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push0=, 12($13), $14
+ i32.store $push0=, 12($13), $9
i32.const $push1=, 3
i32.add $push2=, $pop0, $pop1
i32.const $push3=, -4
@@ -46,7 +45,7 @@ debug: # @debug
br_if 0, $pop19 # 0: down to label1
# BB#2: # %if.end4
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -68,35 +67,23 @@ debug: # @debug
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
i32.const $2=, 16
- i32.sub $7=, $1, $2
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
- i32.const $push0=, 10
- i32.store $discard=, 0($7), $pop0
- i32.const $push1=, 8
- i32.add $0=, $7, $pop1
+ i32.store $3=, 0($2), $3
+ i32.const $push0=, 8
+ i32.or $push1=, $3, $pop0
i64.const $push2=, 20014547621496
- i64.store $discard=, 0($0), $pop2
- call debug@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 16
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
- i32.const $push3=, 0
- call exit@FUNCTION, $pop3
+ i64.store $discard=, 0($pop1), $pop2
+ i32.const $push3=, 10
+ i32.store $discard=, 0($3):p2align=4, $pop3
+ call debug@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $3
+ i32.const $push4=, 0
+ call exit@FUNCTION, $pop4
unreachable
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/va-arg-9.c.s b/test/torture-s/va-arg-9.c.s
index 291f04ec9..70d2127da 100644
--- a/test/torture-s/va-arg-9.c.s
+++ b/test/torture-s/va-arg-9.c.s
@@ -105,17 +105,16 @@ fap: # @fap
.globl f0
.type f0,@function
f0: # @f0
- .param i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param 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
- copy_local $7=, $6
i32.const $4=, __stack_pointer
i32.store $6=, 0($4), $6
- i32.store $push2=, 8($6), $7
+ i32.store $push2=, 8($6), $1
i32.store $discard=, 12($6), $pop2
block
i32.call $push3=, strlen@FUNCTION, $0
@@ -166,7 +165,7 @@ f0: # @f0
.LBB2_6: # %fap.exit
end_block # label7:
i32.const $5=, 16
- i32.add $6=, $7, $5
+ i32.add $6=, $6, $5
i32.const $5=, __stack_pointer
i32.store $6=, 0($5), $6
return
@@ -183,17 +182,16 @@ f0: # @f0
.globl f1
.type f1,@function
f1: # @f1
- .param i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $4=, __stack_pointer
i32.load $4=, 0($4)
i32.const $5=, 16
i32.sub $7=, $4, $5
- copy_local $8=, $7
i32.const $5=, __stack_pointer
i32.store $7=, 0($5), $7
- i32.store $push2=, 8($7), $8
+ i32.store $push2=, 8($7), $2
i32.store $discard=, 12($7), $pop2
block
i32.call $push3=, strlen@FUNCTION, $1
@@ -244,7 +242,7 @@ f1: # @f1
.LBB3_6: # %fap.exit
end_block # label12:
i32.const $6=, 16
- i32.add $7=, $8, $6
+ i32.add $7=, $7, $6
i32.const $6=, __stack_pointer
i32.store $7=, 0($6), $7
return
@@ -261,17 +259,16 @@ f1: # @f1
.globl f2
.type f2,@function
f2: # @f2
- .param i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $5=, __stack_pointer
i32.load $5=, 0($5)
i32.const $6=, 16
i32.sub $8=, $5, $6
- copy_local $9=, $8
i32.const $6=, __stack_pointer
i32.store $8=, 0($6), $8
- i32.store $push2=, 8($8), $9
+ i32.store $push2=, 8($8), $3
i32.store $discard=, 12($8), $pop2
block
i32.call $push3=, strlen@FUNCTION, $2
@@ -322,7 +319,7 @@ f2: # @f2
.LBB4_6: # %fap.exit
end_block # label17:
i32.const $7=, 16
- i32.add $8=, $9, $7
+ i32.add $8=, $8, $7
i32.const $7=, __stack_pointer
i32.store $8=, 0($7), $8
return
@@ -339,17 +336,16 @@ f2: # @f2
.globl f3
.type f3,@function
f3: # @f3
- .param i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $6=, __stack_pointer
i32.load $6=, 0($6)
i32.const $7=, 16
i32.sub $9=, $6, $7
- copy_local $10=, $9
i32.const $7=, __stack_pointer
i32.store $9=, 0($7), $9
- i32.store $push2=, 8($9), $10
+ i32.store $push2=, 8($9), $4
i32.store $discard=, 12($9), $pop2
block
i32.call $push3=, strlen@FUNCTION, $3
@@ -400,7 +396,7 @@ f3: # @f3
.LBB5_6: # %fap.exit
end_block # label22:
i32.const $8=, 16
- i32.add $9=, $10, $8
+ i32.add $9=, $9, $8
i32.const $8=, __stack_pointer
i32.store $9=, 0($8), $9
return
@@ -417,17 +413,16 @@ f3: # @f3
.globl f4
.type f4,@function
f4: # @f4
- .param i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $7=, __stack_pointer
i32.load $7=, 0($7)
i32.const $8=, 16
i32.sub $10=, $7, $8
- copy_local $11=, $10
i32.const $8=, __stack_pointer
i32.store $10=, 0($8), $10
- i32.store $push2=, 8($10), $11
+ i32.store $push2=, 8($10), $5
i32.store $discard=, 12($10), $pop2
block
i32.call $push3=, strlen@FUNCTION, $4
@@ -478,7 +473,7 @@ f4: # @f4
.LBB6_6: # %fap.exit
end_block # label27:
i32.const $9=, 16
- i32.add $10=, $11, $9
+ i32.add $10=, $10, $9
i32.const $9=, __stack_pointer
i32.store $10=, 0($9), $10
return
@@ -495,17 +490,16 @@ f4: # @f4
.globl f5
.type f5,@function
f5: # @f5
- .param i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $8=, __stack_pointer
i32.load $8=, 0($8)
i32.const $9=, 16
i32.sub $11=, $8, $9
- copy_local $12=, $11
i32.const $9=, __stack_pointer
i32.store $11=, 0($9), $11
- i32.store $push2=, 8($11), $12
+ i32.store $push2=, 8($11), $6
i32.store $discard=, 12($11), $pop2
block
i32.call $push3=, strlen@FUNCTION, $5
@@ -556,7 +550,7 @@ f5: # @f5
.LBB7_6: # %fap.exit
end_block # label32:
i32.const $10=, 16
- i32.add $11=, $12, $10
+ i32.add $11=, $11, $10
i32.const $10=, __stack_pointer
i32.store $11=, 0($10), $11
return
@@ -573,17 +567,16 @@ f5: # @f5
.globl f6
.type f6,@function
f6: # @f6
- .param i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $9=, __stack_pointer
i32.load $9=, 0($9)
i32.const $10=, 16
i32.sub $12=, $9, $10
- copy_local $13=, $12
i32.const $10=, __stack_pointer
i32.store $12=, 0($10), $12
- i32.store $push2=, 8($12), $13
+ i32.store $push2=, 8($12), $7
i32.store $discard=, 12($12), $pop2
block
i32.call $push3=, strlen@FUNCTION, $6
@@ -634,7 +627,7 @@ f6: # @f6
.LBB8_6: # %fap.exit
end_block # label37:
i32.const $11=, 16
- i32.add $12=, $13, $11
+ i32.add $12=, $12, $11
i32.const $11=, __stack_pointer
i32.store $12=, 0($11), $12
return
@@ -651,17 +644,16 @@ f6: # @f6
.globl f7
.type f7,@function
f7: # @f7
- .param i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $10=, __stack_pointer
i32.load $10=, 0($10)
i32.const $11=, 16
i32.sub $13=, $10, $11
- copy_local $14=, $13
i32.const $11=, __stack_pointer
i32.store $13=, 0($11), $13
- i32.store $push2=, 8($13), $14
+ i32.store $push2=, 8($13), $8
i32.store $discard=, 12($13), $pop2
block
i32.call $push3=, strlen@FUNCTION, $7
@@ -712,7 +704,7 @@ f7: # @f7
.LBB9_6: # %fap.exit
end_block # label42:
i32.const $12=, 16
- i32.add $13=, $14, $12
+ i32.add $13=, $13, $12
i32.const $12=, __stack_pointer
i32.store $13=, 0($12), $13
return
@@ -729,17 +721,16 @@ f7: # @f7
.globl f8
.type f8,@function
f8: # @f8
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $11=, __stack_pointer
i32.load $11=, 0($11)
i32.const $12=, 16
i32.sub $14=, $11, $12
- copy_local $15=, $14
i32.const $12=, __stack_pointer
i32.store $14=, 0($12), $14
- i32.store $push2=, 8($14), $15
+ i32.store $push2=, 8($14), $9
i32.store $discard=, 12($14), $pop2
block
i32.call $push3=, strlen@FUNCTION, $8
@@ -790,7 +781,7 @@ f8: # @f8
.LBB10_6: # %fap.exit
end_block # label47:
i32.const $13=, 16
- i32.add $14=, $15, $13
+ i32.add $14=, $14, $13
i32.const $13=, __stack_pointer
i32.store $14=, 0($13), $14
return
@@ -807,17 +798,16 @@ f8: # @f8
.globl f9
.type f9,@function
f9: # @f9
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $12=, __stack_pointer
i32.load $12=, 0($12)
i32.const $13=, 16
i32.sub $15=, $12, $13
- copy_local $16=, $15
i32.const $13=, __stack_pointer
i32.store $15=, 0($13), $15
- i32.store $push2=, 8($15), $16
+ i32.store $push2=, 8($15), $10
i32.store $discard=, 12($15), $pop2
block
i32.call $push3=, strlen@FUNCTION, $9
@@ -868,7 +858,7 @@ f9: # @f9
.LBB11_6: # %fap.exit
end_block # label52:
i32.const $14=, 16
- i32.add $15=, $16, $14
+ i32.add $15=, $15, $14
i32.const $14=, __stack_pointer
i32.store $15=, 0($14), $15
return
@@ -885,17 +875,16 @@ f9: # @f9
.globl f10
.type f10,@function
f10: # @f10
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $13=, __stack_pointer
i32.load $13=, 0($13)
i32.const $14=, 16
i32.sub $16=, $13, $14
- copy_local $17=, $16
i32.const $14=, __stack_pointer
i32.store $16=, 0($14), $16
- i32.store $push2=, 8($16), $17
+ i32.store $push2=, 8($16), $11
i32.store $discard=, 12($16), $pop2
block
i32.call $push3=, strlen@FUNCTION, $10
@@ -946,7 +935,7 @@ f10: # @f10
.LBB12_6: # %fap.exit
end_block # label57:
i32.const $15=, 16
- i32.add $16=, $17, $15
+ i32.add $16=, $16, $15
i32.const $15=, __stack_pointer
i32.store $16=, 0($15), $16
return
@@ -963,17 +952,16 @@ f10: # @f10
.globl f11
.type f11,@function
f11: # @f11
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $14=, __stack_pointer
i32.load $14=, 0($14)
i32.const $15=, 16
i32.sub $17=, $14, $15
- copy_local $18=, $17
i32.const $15=, __stack_pointer
i32.store $17=, 0($15), $17
- i32.store $push2=, 8($17), $18
+ i32.store $push2=, 8($17), $12
i32.store $discard=, 12($17), $pop2
block
i32.call $push3=, strlen@FUNCTION, $11
@@ -1024,7 +1012,7 @@ f11: # @f11
.LBB13_6: # %fap.exit
end_block # label62:
i32.const $16=, 16
- i32.add $17=, $18, $16
+ i32.add $17=, $17, $16
i32.const $16=, __stack_pointer
i32.store $17=, 0($16), $17
return
@@ -1041,17 +1029,16 @@ f11: # @f11
.globl f12
.type f12,@function
f12: # @f12
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $15=, __stack_pointer
i32.load $15=, 0($15)
i32.const $16=, 16
i32.sub $18=, $15, $16
- copy_local $19=, $18
i32.const $16=, __stack_pointer
i32.store $18=, 0($16), $18
- i32.store $push2=, 8($18), $19
+ i32.store $push2=, 8($18), $13
i32.store $discard=, 12($18), $pop2
block
i32.call $push3=, strlen@FUNCTION, $12
@@ -1102,7 +1089,7 @@ f12: # @f12
.LBB14_6: # %fap.exit
end_block # label67:
i32.const $17=, 16
- i32.add $18=, $19, $17
+ i32.add $18=, $18, $17
i32.const $17=, __stack_pointer
i32.store $18=, 0($17), $18
return
@@ -1119,17 +1106,16 @@ f12: # @f12
.globl f13
.type f13,@function
f13: # @f13
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $16=, __stack_pointer
i32.load $16=, 0($16)
i32.const $17=, 16
i32.sub $19=, $16, $17
- copy_local $20=, $19
i32.const $17=, __stack_pointer
i32.store $19=, 0($17), $19
- i32.store $push2=, 8($19), $20
+ i32.store $push2=, 8($19), $14
i32.store $discard=, 12($19), $pop2
block
i32.call $push3=, strlen@FUNCTION, $13
@@ -1180,7 +1166,7 @@ f13: # @f13
.LBB15_6: # %fap.exit
end_block # label72:
i32.const $18=, 16
- i32.add $19=, $20, $18
+ i32.add $19=, $19, $18
i32.const $18=, __stack_pointer
i32.store $19=, 0($18), $19
return
@@ -1197,17 +1183,16 @@ f13: # @f13
.globl f14
.type f14,@function
f14: # @f14
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $17=, __stack_pointer
i32.load $17=, 0($17)
i32.const $18=, 16
i32.sub $20=, $17, $18
- copy_local $21=, $20
i32.const $18=, __stack_pointer
i32.store $20=, 0($18), $20
- i32.store $push2=, 8($20), $21
+ i32.store $push2=, 8($20), $15
i32.store $discard=, 12($20), $pop2
block
i32.call $push3=, strlen@FUNCTION, $14
@@ -1258,7 +1243,7 @@ f14: # @f14
.LBB16_6: # %fap.exit
end_block # label77:
i32.const $19=, 16
- i32.add $20=, $21, $19
+ i32.add $20=, $20, $19
i32.const $19=, __stack_pointer
i32.store $20=, 0($19), $20
return
@@ -1275,17 +1260,16 @@ f14: # @f14
.globl f15
.type f15,@function
f15: # @f15
- .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
- .local i32, i32, i32, i32, i32, i32, i32
+ .param i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32
# BB#0: # %entry
i32.const $18=, __stack_pointer
i32.load $18=, 0($18)
i32.const $19=, 16
i32.sub $21=, $18, $19
- copy_local $22=, $21
i32.const $19=, __stack_pointer
i32.store $21=, 0($19), $21
- i32.store $push2=, 8($21), $22
+ i32.store $push2=, 8($21), $16
i32.store $discard=, 12($21), $pop2
block
i32.call $push3=, strlen@FUNCTION, $15
@@ -1336,7 +1320,7 @@ f15: # @f15
.LBB17_6: # %fap.exit
end_block # label82:
i32.const $20=, 16
- i32.add $21=, $22, $20
+ i32.add $21=, $21, $20
i32.const $20=, __stack_pointer
i32.store $21=, 0($20), $21
return
@@ -1354,440 +1338,390 @@ f15: # @f15
.type main,@function
main: # @main
.result i32
- .local i32, i64, i64, i64, i64, i64, i64, i64, i32, i64, i64, i64, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i64, i64, i64, i64, i64, i64, i64, i32, i64, i64, i64, i64, i64, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $79=, __stack_pointer
- i32.load $79=, 0($79)
- i32.const $80=, 64
- i32.sub $81=, $79, $80
- i32.const $80=, __stack_pointer
- i32.store $81=, 0($80), $81
+ i32.const $14=, __stack_pointer
+ i32.load $14=, 0($14)
+ i32.const $15=, 640
+ i32.sub $87=, $14, $15
i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 64
- i32.sub $81=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $81=, 0($16), $81
- i64.const $push0=, 4294967296
- i64.store $discard=, 0($81):p2align=2, $pop0
- i32.const $push1=, 56
- i32.add $0=, $81, $pop1
+ i32.store $87=, 0($15), $87
+ i32.const $push0=, 56
+ i32.const $16=, 576
+ i32.add $16=, $87, $16
+ i32.add $push1=, $16, $pop0
i64.const $push2=, 64424509454
- i64.store $1=, 0($0):p2align=2, $pop2
+ i64.store $0=, 0($pop1), $pop2
i32.const $push3=, 48
- i32.add $0=, $81, $pop3
- i64.const $push4=, 55834574860
- i64.store $2=, 0($0):p2align=2, $pop4
- i32.const $push5=, 40
- i32.add $0=, $81, $pop5
- i64.const $push6=, 47244640266
- i64.store $3=, 0($0):p2align=2, $pop6
- i32.const $push7=, 32
- i32.add $0=, $81, $pop7
- i64.const $push8=, 38654705672
- i64.store $4=, 0($0):p2align=2, $pop8
- i32.const $push9=, 24
- i32.add $0=, $81, $pop9
- i64.const $push10=, 30064771078
- i64.store $5=, 0($0):p2align=2, $pop10
- i32.const $push11=, 16
- i32.add $0=, $81, $pop11
- i64.const $push12=, 21474836484
- i64.store $6=, 0($0):p2align=2, $pop12
- i32.const $push13=, 8
- i32.add $0=, $81, $pop13
- i64.const $push14=, 12884901890
- i64.store $7=, 0($0):p2align=2, $pop14
- i32.const $push15=, .L.str
- call f0@FUNCTION, $pop15
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 64
- i32.add $81=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $81=, 0($18), $81
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 60
- i32.sub $81=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $81=, 0($20), $81
- i64.const $push16=, 8589934593
- i64.store $discard=, 0($81):p2align=2, $pop16
- i32.const $push88=, 56
- i32.add $0=, $81, $pop88
- i32.const $push17=, 15
- i32.store $0=, 0($0), $pop17
- i32.const $push87=, 48
- i32.add $8=, $81, $pop87
- i64.const $push18=, 60129542157
- i64.store $9=, 0($8):p2align=2, $pop18
- i32.const $push86=, 40
- i32.add $8=, $81, $pop86
- i64.const $push19=, 51539607563
- i64.store $10=, 0($8):p2align=2, $pop19
- i32.const $push85=, 32
- i32.add $8=, $81, $pop85
- i64.const $push20=, 42949672969
- i64.store $11=, 0($8):p2align=2, $pop20
- i32.const $push84=, 24
- i32.add $8=, $81, $pop84
- i64.const $push21=, 34359738375
- i64.store $12=, 0($8):p2align=2, $pop21
- i32.const $push83=, 16
- i32.add $8=, $81, $pop83
- i64.const $push22=, 25769803781
- i64.store $13=, 0($8):p2align=2, $pop22
- i32.const $push82=, 8
- i32.add $8=, $81, $pop82
- i64.const $push23=, 17179869187
- i64.store $14=, 0($8):p2align=2, $pop23
- i32.const $push24=, .L.str+1
- call f1@FUNCTION, $0, $pop24
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 60
- i32.add $81=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $81=, 0($22), $81
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 56
- i32.sub $81=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $81=, 0($24), $81
- i64.store $discard=, 0($81):p2align=2, $7
- i32.const $push81=, 48
- i32.add $8=, $81, $pop81
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push80=, 40
- i32.add $8=, $81, $pop80
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push79=, 32
- i32.add $8=, $81, $pop79
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push78=, 24
- i32.add $8=, $81, $pop78
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push77=, 16
- i32.add $8=, $81, $pop77
- i64.store $discard=, 0($8):p2align=2, $5
- i32.const $push76=, 8
- i32.add $8=, $81, $pop76
- i64.store $discard=, 0($8):p2align=2, $6
- i32.const $push25=, .L.str+2
- call f2@FUNCTION, $0, $0, $pop25
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 56
- i32.add $81=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $81=, 0($26), $81
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 52
- i32.sub $81=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $81=, 0($28), $81
- i64.store $discard=, 0($81):p2align=2, $14
- i32.const $push75=, 48
- i32.add $8=, $81, $pop75
- i32.store $discard=, 0($8), $0
- i32.const $push74=, 40
- i32.add $8=, $81, $pop74
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push73=, 32
- i32.add $8=, $81, $pop73
- i64.store $9=, 0($8):p2align=2, $10
- i32.const $push72=, 24
- i32.add $8=, $81, $pop72
- i64.store $10=, 0($8):p2align=2, $11
- i32.const $push71=, 16
- i32.add $8=, $81, $pop71
- i64.store $11=, 0($8):p2align=2, $12
- i32.const $push70=, 8
- i32.add $8=, $81, $pop70
- i64.store $12=, 0($8):p2align=2, $13
- i32.const $push26=, .L.str+3
- call f3@FUNCTION, $0, $0, $0, $pop26
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 52
- i32.add $81=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $81=, 0($30), $81
- i32.const $31=, __stack_pointer
- i32.load $31=, 0($31)
- i32.const $32=, 48
- i32.sub $81=, $31, $32
- i32.const $32=, __stack_pointer
- i32.store $81=, 0($32), $81
- i64.store $discard=, 0($81):p2align=2, $6
- i32.const $push69=, 40
- i32.add $8=, $81, $pop69
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push68=, 32
- i32.add $8=, $81, $pop68
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push67=, 24
- i32.add $8=, $81, $pop67
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push66=, 16
- i32.add $8=, $81, $pop66
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push65=, 8
- i32.add $8=, $81, $pop65
- i64.store $discard=, 0($8):p2align=2, $5
- i32.const $push27=, .L.str+4
- call f4@FUNCTION, $0, $0, $0, $0, $pop27
- i32.const $33=, __stack_pointer
- i32.load $33=, 0($33)
- i32.const $34=, 48
- i32.add $81=, $33, $34
- i32.const $34=, __stack_pointer
- i32.store $81=, 0($34), $81
- i32.const $35=, __stack_pointer
- i32.load $35=, 0($35)
- i32.const $36=, 44
- i32.sub $81=, $35, $36
- i32.const $36=, __stack_pointer
- i32.store $81=, 0($36), $81
- i64.store $discard=, 0($81):p2align=2, $12
- i32.const $push64=, 40
- i32.add $8=, $81, $pop64
- i32.store $discard=, 0($8), $0
- i32.const $push63=, 32
- i32.add $8=, $81, $pop63
- i64.store $6=, 0($8):p2align=2, $7
- i32.const $push62=, 24
- i32.add $8=, $81, $pop62
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push61=, 16
- i32.add $8=, $81, $pop61
- i64.store $9=, 0($8):p2align=2, $10
- i32.const $push60=, 8
- i32.add $8=, $81, $pop60
- i64.store $10=, 0($8):p2align=2, $11
- i32.const $push28=, .L.str+5
- call f5@FUNCTION, $0, $0, $0, $0, $0, $pop28
- i32.const $37=, __stack_pointer
- i32.load $37=, 0($37)
- i32.const $38=, 44
- i32.add $81=, $37, $38
- i32.const $38=, __stack_pointer
- i32.store $81=, 0($38), $81
- i32.const $39=, __stack_pointer
- i32.load $39=, 0($39)
- i32.const $40=, 40
- i32.sub $81=, $39, $40
- i32.const $40=, __stack_pointer
- i32.store $81=, 0($40), $81
- i64.store $discard=, 0($81):p2align=2, $5
- i32.const $push59=, 32
- i32.add $8=, $81, $pop59
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push58=, 24
- i32.add $8=, $81, $pop58
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push57=, 16
- i32.add $8=, $81, $pop57
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push56=, 8
- i32.add $8=, $81, $pop56
- i64.store $discard=, 0($8):p2align=2, $4
- i32.const $push29=, .L.str+6
- call f6@FUNCTION, $0, $0, $0, $0, $0, $0, $pop29
- i32.const $41=, __stack_pointer
- i32.load $41=, 0($41)
- i32.const $42=, 40
- i32.add $81=, $41, $42
- i32.const $42=, __stack_pointer
- i32.store $81=, 0($42), $81
- i32.const $43=, __stack_pointer
- i32.load $43=, 0($43)
- i32.const $44=, 36
- i32.sub $81=, $43, $44
- i32.const $44=, __stack_pointer
- i32.store $81=, 0($44), $81
- i64.store $discard=, 0($81):p2align=2, $10
- i32.const $push55=, 32
- i32.add $8=, $81, $pop55
- i32.store $discard=, 0($8), $0
- i32.const $push54=, 24
- i32.add $8=, $81, $pop54
- i64.store $5=, 0($8):p2align=2, $6
- i32.const $push53=, 16
- i32.add $8=, $81, $pop53
- i64.store $6=, 0($8):p2align=2, $7
- i32.const $push52=, 8
- i32.add $8=, $81, $pop52
- i64.store $7=, 0($8):p2align=2, $9
- i32.const $push30=, .L.str+7
- call f7@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $pop30
- i32.const $45=, __stack_pointer
- i32.load $45=, 0($45)
- i32.const $46=, 36
- i32.add $81=, $45, $46
- i32.const $46=, __stack_pointer
- i32.store $81=, 0($46), $81
- i32.const $47=, __stack_pointer
- i32.load $47=, 0($47)
- i32.const $48=, 32
- i32.sub $81=, $47, $48
- i32.const $48=, __stack_pointer
- i32.store $81=, 0($48), $81
- i64.store $discard=, 0($81):p2align=2, $4
- i32.const $push51=, 24
- i32.add $8=, $81, $pop51
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push50=, 16
- i32.add $8=, $81, $pop50
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push49=, 8
- i32.add $8=, $81, $pop49
- i64.store $discard=, 0($8):p2align=2, $3
- i32.const $push31=, .L.str+8
- call f8@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $pop31
- i32.const $49=, __stack_pointer
- i32.load $49=, 0($49)
- i32.const $50=, 32
- i32.add $81=, $49, $50
- i32.const $50=, __stack_pointer
- i32.store $81=, 0($50), $81
- i32.const $51=, __stack_pointer
- i32.load $51=, 0($51)
- i32.const $52=, 28
- i32.sub $81=, $51, $52
- i32.const $52=, __stack_pointer
- i32.store $81=, 0($52), $81
- i64.store $discard=, 0($81):p2align=2, $7
- i32.const $push48=, 24
- i32.add $8=, $81, $pop48
- i32.store $discard=, 0($8), $0
- i32.const $push47=, 16
- i32.add $8=, $81, $pop47
- i64.store $4=, 0($8):p2align=2, $5
- i32.const $push46=, 8
- i32.add $8=, $81, $pop46
- i64.store $5=, 0($8):p2align=2, $6
- i32.const $push32=, .L.str+9
- call f9@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop32
- i32.const $53=, __stack_pointer
- i32.load $53=, 0($53)
- i32.const $54=, 28
- i32.add $81=, $53, $54
- i32.const $54=, __stack_pointer
- i32.store $81=, 0($54), $81
- i32.const $55=, __stack_pointer
- i32.load $55=, 0($55)
- i32.const $56=, 24
- i32.sub $81=, $55, $56
- i32.const $56=, __stack_pointer
- i32.store $81=, 0($56), $81
- i64.store $discard=, 0($81):p2align=2, $3
- i32.const $push45=, 16
- i32.add $8=, $81, $pop45
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push44=, 8
- i32.add $8=, $81, $pop44
- i64.store $discard=, 0($8):p2align=2, $2
- i32.const $push33=, .L.str+10
- call f10@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop33
- i32.const $57=, __stack_pointer
- i32.load $57=, 0($57)
- i32.const $58=, 24
- i32.add $81=, $57, $58
- i32.const $58=, __stack_pointer
- i32.store $81=, 0($58), $81
- i32.const $59=, __stack_pointer
- i32.load $59=, 0($59)
- i32.const $60=, 20
- i32.sub $81=, $59, $60
- i32.const $60=, __stack_pointer
- i32.store $81=, 0($60), $81
- i64.store $discard=, 0($81):p2align=2, $5
- i32.const $push43=, 16
- i32.add $8=, $81, $pop43
- i32.store $discard=, 0($8), $0
- i32.const $push42=, 8
- i32.add $8=, $81, $pop42
- i64.store $3=, 0($8):p2align=2, $4
- i32.const $push34=, .L.str+11
- call f11@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop34
- i32.const $61=, __stack_pointer
- i32.load $61=, 0($61)
- i32.const $62=, 20
- i32.add $81=, $61, $62
- i32.const $62=, __stack_pointer
- i32.store $81=, 0($62), $81
- i32.const $63=, __stack_pointer
- i32.load $63=, 0($63)
- i32.const $64=, 16
- i32.sub $81=, $63, $64
- i32.const $64=, __stack_pointer
- i32.store $81=, 0($64), $81
- i64.store $discard=, 0($81):p2align=2, $2
- i32.const $push41=, 8
- i32.add $8=, $81, $pop41
- i64.store $discard=, 0($8):p2align=2, $1
- i32.const $push35=, .L.str+12
- call f12@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop35
- i32.const $65=, __stack_pointer
- i32.load $65=, 0($65)
- i32.const $66=, 16
- i32.add $81=, $65, $66
- i32.const $66=, __stack_pointer
- i32.store $81=, 0($66), $81
- i32.const $67=, __stack_pointer
- i32.load $67=, 0($67)
- i32.const $68=, 12
- i32.sub $81=, $67, $68
- i32.const $68=, __stack_pointer
- i32.store $81=, 0($68), $81
- i64.store $discard=, 0($81):p2align=2, $3
- i32.const $push40=, 8
- i32.add $8=, $81, $pop40
- i32.store $discard=, 0($8), $0
- i32.const $push36=, .L.str+13
- call f13@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop36
- i32.const $69=, __stack_pointer
- i32.load $69=, 0($69)
- i32.const $70=, 12
- i32.add $81=, $69, $70
- i32.const $70=, __stack_pointer
- i32.store $81=, 0($70), $81
- i32.const $71=, __stack_pointer
- i32.load $71=, 0($71)
- i32.const $72=, 8
- i32.sub $81=, $71, $72
- i32.const $72=, __stack_pointer
- i32.store $81=, 0($72), $81
- i64.store $discard=, 0($81):p2align=2, $1
- i32.const $push37=, .L.str+14
- call f14@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop37
- i32.const $73=, __stack_pointer
- i32.load $73=, 0($73)
- i32.const $74=, 8
- i32.add $81=, $73, $74
- i32.const $74=, __stack_pointer
- i32.store $81=, 0($74), $81
- i32.const $75=, __stack_pointer
- i32.load $75=, 0($75)
- i32.const $76=, 4
- i32.sub $81=, $75, $76
- i32.const $76=, __stack_pointer
- i32.store $81=, 0($76), $81
- i32.store $discard=, 0($81), $0
- i32.const $push38=, .L.str+15
- call f15@FUNCTION, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $0, $pop38
- i32.const $77=, __stack_pointer
- i32.load $77=, 0($77)
- i32.const $78=, 4
- i32.add $81=, $77, $78
- i32.const $78=, __stack_pointer
- i32.store $81=, 0($78), $81
- i32.const $push39=, 0
- call exit@FUNCTION, $pop39
+ i32.const $17=, 576
+ i32.add $17=, $87, $17
+ i32.add $push4=, $17, $pop3
+ i64.const $push5=, 55834574860
+ i64.store $1=, 0($pop4):p2align=4, $pop5
+ i32.const $push6=, 40
+ i32.const $18=, 576
+ i32.add $18=, $87, $18
+ i32.add $push7=, $18, $pop6
+ i64.const $push8=, 47244640266
+ i64.store $2=, 0($pop7), $pop8
+ i32.const $push9=, 32
+ i32.const $19=, 576
+ i32.add $19=, $87, $19
+ i32.add $push10=, $19, $pop9
+ i64.const $push11=, 38654705672
+ i64.store $3=, 0($pop10):p2align=4, $pop11
+ i32.const $push12=, 24
+ i32.const $20=, 576
+ i32.add $20=, $87, $20
+ i32.add $push13=, $20, $pop12
+ i64.const $push14=, 30064771078
+ i64.store $4=, 0($pop13), $pop14
+ i32.const $push15=, 16
+ i32.const $21=, 576
+ i32.add $21=, $87, $21
+ i32.add $push16=, $21, $pop15
+ i64.const $push17=, 21474836484
+ i64.store $5=, 0($pop16):p2align=4, $pop17
+ i32.const $push18=, 8
+ i32.const $22=, 576
+ i32.add $22=, $87, $22
+ i32.or $push19=, $22, $pop18
+ i64.const $push20=, 12884901890
+ i64.store $6=, 0($pop19), $pop20
+ i64.const $push21=, 4294967296
+ i64.store $discard=, 576($87):p2align=4, $pop21
+ i32.const $push22=, .L.str
+ i32.const $23=, 576
+ i32.add $23=, $87, $23
+ call f0@FUNCTION, $pop22, $23
+ i32.const $push144=, 56
+ i32.const $24=, 512
+ i32.add $24=, $87, $24
+ i32.add $push23=, $24, $pop144
+ i32.const $push24=, 15
+ i32.store $7=, 0($pop23):p2align=3, $pop24
+ i32.const $push143=, 48
+ i32.const $25=, 512
+ i32.add $25=, $87, $25
+ i32.add $push25=, $25, $pop143
+ i64.const $push26=, 60129542157
+ i64.store $8=, 0($pop25):p2align=4, $pop26
+ i32.const $push142=, 40
+ i32.const $26=, 512
+ i32.add $26=, $87, $26
+ i32.add $push27=, $26, $pop142
+ i64.const $push28=, 51539607563
+ i64.store $9=, 0($pop27), $pop28
+ i32.const $push141=, 32
+ i32.const $27=, 512
+ i32.add $27=, $87, $27
+ i32.add $push29=, $27, $pop141
+ i64.const $push30=, 42949672969
+ i64.store $10=, 0($pop29):p2align=4, $pop30
+ i32.const $push140=, 24
+ i32.const $28=, 512
+ i32.add $28=, $87, $28
+ i32.add $push31=, $28, $pop140
+ i64.const $push32=, 34359738375
+ i64.store $11=, 0($pop31), $pop32
+ i32.const $push139=, 16
+ i32.const $29=, 512
+ i32.add $29=, $87, $29
+ i32.add $push33=, $29, $pop139
+ i64.const $push34=, 25769803781
+ i64.store $12=, 0($pop33):p2align=4, $pop34
+ i32.const $push138=, 8
+ i32.const $30=, 512
+ i32.add $30=, $87, $30
+ i32.or $push35=, $30, $pop138
+ i64.const $push36=, 17179869187
+ i64.store $13=, 0($pop35), $pop36
+ i64.const $push37=, 8589934593
+ i64.store $discard=, 512($87):p2align=4, $pop37
+ i32.const $push38=, .L.str+1
+ i32.const $31=, 512
+ i32.add $31=, $87, $31
+ call f1@FUNCTION, $7, $pop38, $31
+ i32.const $push137=, 48
+ i32.const $32=, 448
+ i32.add $32=, $87, $32
+ i32.add $push39=, $32, $pop137
+ i64.store $discard=, 0($pop39):p2align=4, $0
+ i32.const $push136=, 40
+ i32.const $33=, 448
+ i32.add $33=, $87, $33
+ i32.add $push40=, $33, $pop136
+ i64.store $discard=, 0($pop40), $1
+ i32.const $push135=, 32
+ i32.const $34=, 448
+ i32.add $34=, $87, $34
+ i32.add $push41=, $34, $pop135
+ i64.store $discard=, 0($pop41):p2align=4, $2
+ i32.const $push134=, 24
+ i32.const $35=, 448
+ i32.add $35=, $87, $35
+ i32.add $push42=, $35, $pop134
+ i64.store $discard=, 0($pop42), $3
+ i32.const $push133=, 16
+ i32.const $36=, 448
+ i32.add $36=, $87, $36
+ i32.add $push43=, $36, $pop133
+ i64.store $discard=, 0($pop43):p2align=4, $4
+ i32.const $push132=, 8
+ i32.const $37=, 448
+ i32.add $37=, $87, $37
+ i32.or $push44=, $37, $pop132
+ i64.store $discard=, 0($pop44), $5
+ i64.store $discard=, 448($87):p2align=4, $6
+ i32.const $push45=, .L.str+2
+ i32.const $38=, 448
+ i32.add $38=, $87, $38
+ call f2@FUNCTION, $7, $7, $pop45, $38
+ i32.const $push131=, 48
+ i32.const $39=, 384
+ i32.add $39=, $87, $39
+ i32.add $push46=, $39, $pop131
+ i32.store $discard=, 0($pop46):p2align=4, $7
+ i32.const $push130=, 40
+ i32.const $40=, 384
+ i32.add $40=, $87, $40
+ i32.add $push47=, $40, $pop130
+ i64.store $6=, 0($pop47), $8
+ i32.const $push129=, 32
+ i32.const $41=, 384
+ i32.add $41=, $87, $41
+ i32.add $push48=, $41, $pop129
+ i64.store $8=, 0($pop48):p2align=4, $9
+ i32.const $push128=, 24
+ i32.const $42=, 384
+ i32.add $42=, $87, $42
+ i32.add $push49=, $42, $pop128
+ i64.store $9=, 0($pop49), $10
+ i32.const $push127=, 16
+ i32.const $43=, 384
+ i32.add $43=, $87, $43
+ i32.add $push50=, $43, $pop127
+ i64.store $10=, 0($pop50):p2align=4, $11
+ i32.const $push126=, 8
+ i32.const $44=, 384
+ i32.add $44=, $87, $44
+ i32.or $push51=, $44, $pop126
+ i64.store $11=, 0($pop51), $12
+ i64.store $discard=, 384($87):p2align=4, $13
+ i32.const $push52=, .L.str+3
+ i32.const $45=, 384
+ i32.add $45=, $87, $45
+ call f3@FUNCTION, $7, $7, $7, $pop52, $45
+ i32.const $push125=, 40
+ i32.const $46=, 336
+ i32.add $46=, $87, $46
+ i32.add $push53=, $46, $pop125
+ i64.store $discard=, 0($pop53), $0
+ i32.const $push124=, 32
+ i32.const $47=, 336
+ i32.add $47=, $87, $47
+ i32.add $push54=, $47, $pop124
+ i64.store $discard=, 0($pop54):p2align=4, $1
+ i32.const $push123=, 24
+ i32.const $48=, 336
+ i32.add $48=, $87, $48
+ i32.add $push55=, $48, $pop123
+ i64.store $discard=, 0($pop55), $2
+ i32.const $push122=, 16
+ i32.const $49=, 336
+ i32.add $49=, $87, $49
+ i32.add $push56=, $49, $pop122
+ i64.store $discard=, 0($pop56):p2align=4, $3
+ i32.const $push121=, 8
+ i32.const $50=, 336
+ i32.add $50=, $87, $50
+ i32.or $push57=, $50, $pop121
+ i64.store $discard=, 0($pop57), $4
+ i64.store $discard=, 336($87):p2align=4, $5
+ i32.const $push58=, .L.str+4
+ i32.const $51=, 336
+ i32.add $51=, $87, $51
+ call f4@FUNCTION, $7, $7, $7, $7, $pop58, $51
+ i32.const $push120=, 40
+ i32.const $52=, 288
+ i32.add $52=, $87, $52
+ i32.add $push59=, $52, $pop120
+ i32.store $discard=, 0($pop59):p2align=3, $7
+ i32.const $push119=, 32
+ i32.const $53=, 288
+ i32.add $53=, $87, $53
+ i32.add $push60=, $53, $pop119
+ i64.store $5=, 0($pop60):p2align=4, $6
+ i32.const $push118=, 24
+ i32.const $54=, 288
+ i32.add $54=, $87, $54
+ i32.add $push61=, $54, $pop118
+ i64.store $6=, 0($pop61), $8
+ i32.const $push117=, 16
+ i32.const $55=, 288
+ i32.add $55=, $87, $55
+ i32.add $push62=, $55, $pop117
+ i64.store $8=, 0($pop62):p2align=4, $9
+ i32.const $push116=, 8
+ i32.const $56=, 288
+ i32.add $56=, $87, $56
+ i32.or $push63=, $56, $pop116
+ i64.store $9=, 0($pop63), $10
+ i64.store $discard=, 288($87):p2align=4, $11
+ i32.const $push64=, .L.str+5
+ i32.const $57=, 288
+ i32.add $57=, $87, $57
+ call f5@FUNCTION, $7, $7, $7, $7, $7, $pop64, $57
+ i32.const $push115=, 32
+ i32.const $58=, 240
+ i32.add $58=, $87, $58
+ i32.add $push65=, $58, $pop115
+ i64.store $discard=, 0($pop65):p2align=4, $0
+ i32.const $push114=, 24
+ i32.const $59=, 240
+ i32.add $59=, $87, $59
+ i32.add $push66=, $59, $pop114
+ i64.store $discard=, 0($pop66), $1
+ i32.const $push113=, 16
+ i32.const $60=, 240
+ i32.add $60=, $87, $60
+ i32.add $push67=, $60, $pop113
+ i64.store $discard=, 0($pop67):p2align=4, $2
+ i32.const $push112=, 8
+ i32.const $61=, 240
+ i32.add $61=, $87, $61
+ i32.or $push68=, $61, $pop112
+ i64.store $discard=, 0($pop68), $3
+ i64.store $discard=, 240($87):p2align=4, $4
+ i32.const $push69=, .L.str+6
+ i32.const $62=, 240
+ i32.add $62=, $87, $62
+ call f6@FUNCTION, $7, $7, $7, $7, $7, $7, $pop69, $62
+ i32.const $push111=, 32
+ i32.const $63=, 192
+ i32.add $63=, $87, $63
+ i32.add $push70=, $63, $pop111
+ i32.store $discard=, 0($pop70):p2align=4, $7
+ i32.const $push110=, 24
+ i32.const $64=, 192
+ i32.add $64=, $87, $64
+ i32.add $push71=, $64, $pop110
+ i64.store $4=, 0($pop71), $5
+ i32.const $push109=, 16
+ i32.const $65=, 192
+ i32.add $65=, $87, $65
+ i32.add $push72=, $65, $pop109
+ i64.store $5=, 0($pop72):p2align=4, $6
+ i32.const $push108=, 8
+ i32.const $66=, 192
+ i32.add $66=, $87, $66
+ i32.or $push73=, $66, $pop108
+ i64.store $6=, 0($pop73), $8
+ i64.store $discard=, 192($87):p2align=4, $9
+ i32.const $push74=, .L.str+7
+ i32.const $67=, 192
+ i32.add $67=, $87, $67
+ call f7@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $pop74, $67
+ i32.const $push107=, 24
+ i32.const $68=, 160
+ i32.add $68=, $87, $68
+ i32.add $push75=, $68, $pop107
+ i64.store $discard=, 0($pop75), $0
+ i32.const $push106=, 16
+ i32.const $69=, 160
+ i32.add $69=, $87, $69
+ i32.add $push76=, $69, $pop106
+ i64.store $discard=, 0($pop76):p2align=4, $1
+ i32.const $push105=, 8
+ i32.const $70=, 160
+ i32.add $70=, $87, $70
+ i32.or $push77=, $70, $pop105
+ i64.store $discard=, 0($pop77), $2
+ i64.store $discard=, 160($87):p2align=4, $3
+ i32.const $push78=, .L.str+8
+ i32.const $71=, 160
+ i32.add $71=, $87, $71
+ call f8@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $pop78, $71
+ i32.const $push104=, 24
+ i32.const $72=, 128
+ i32.add $72=, $87, $72
+ i32.add $push79=, $72, $pop104
+ i32.store $discard=, 0($pop79):p2align=3, $7
+ i32.const $push103=, 16
+ i32.const $73=, 128
+ i32.add $73=, $87, $73
+ i32.add $push80=, $73, $pop103
+ i64.store $3=, 0($pop80):p2align=4, $4
+ i32.const $push102=, 8
+ i32.const $74=, 128
+ i32.add $74=, $87, $74
+ i32.or $push81=, $74, $pop102
+ i64.store $4=, 0($pop81), $5
+ i64.store $discard=, 128($87):p2align=4, $6
+ i32.const $push82=, .L.str+9
+ i32.const $75=, 128
+ i32.add $75=, $87, $75
+ call f9@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop82, $75
+ i32.const $push101=, 16
+ i32.const $76=, 96
+ i32.add $76=, $87, $76
+ i32.add $push83=, $76, $pop101
+ i64.store $discard=, 0($pop83):p2align=4, $0
+ i32.const $push100=, 8
+ i32.const $77=, 96
+ i32.add $77=, $87, $77
+ i32.or $push84=, $77, $pop100
+ i64.store $discard=, 0($pop84), $1
+ i64.store $discard=, 96($87):p2align=4, $2
+ i32.const $push85=, .L.str+10
+ i32.const $78=, 96
+ i32.add $78=, $87, $78
+ call f10@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop85, $78
+ i32.const $push99=, 16
+ i32.const $79=, 64
+ i32.add $79=, $87, $79
+ i32.add $push86=, $79, $pop99
+ i32.store $discard=, 0($pop86):p2align=4, $7
+ i32.const $push98=, 8
+ i32.const $80=, 64
+ i32.add $80=, $87, $80
+ i32.or $push87=, $80, $pop98
+ i64.store $2=, 0($pop87), $3
+ i64.store $discard=, 64($87):p2align=4, $4
+ i32.const $push88=, .L.str+11
+ i32.const $81=, 64
+ i32.add $81=, $87, $81
+ call f11@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop88, $81
+ i32.const $push97=, 8
+ i32.const $82=, 48
+ i32.add $82=, $87, $82
+ i32.or $push89=, $82, $pop97
+ i64.store $discard=, 0($pop89), $0
+ i64.store $discard=, 48($87):p2align=4, $1
+ i32.const $push90=, .L.str+12
+ i32.const $83=, 48
+ i32.add $83=, $87, $83
+ call f12@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop90, $83
+ i32.const $push96=, 8
+ i32.const $84=, 32
+ i32.add $84=, $87, $84
+ i32.or $push91=, $84, $pop96
+ i32.store $discard=, 0($pop91):p2align=3, $7
+ i64.store $discard=, 32($87):p2align=4, $2
+ i32.const $push92=, .L.str+13
+ i32.const $85=, 32
+ i32.add $85=, $87, $85
+ call f13@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop92, $85
+ i64.store $discard=, 16($87):p2align=4, $0
+ i32.const $push93=, .L.str+14
+ i32.const $86=, 16
+ i32.add $86=, $87, $86
+ call f14@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop93, $86
+ i32.store $discard=, 0($87):p2align=4, $7
+ i32.const $push94=, .L.str+15
+ call f15@FUNCTION, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $7, $pop94, $87
+ i32.const $push95=, 0
+ call exit@FUNCTION, $pop95
unreachable
.endfunc
.Lfunc_end18:
diff --git a/test/torture-s/va-arg-trap-1.c.s b/test/torture-s/va-arg-trap-1.c.s
index fe9af4ecc..0e7efdea2 100644
--- a/test/torture-s/va-arg-trap-1.c.s
+++ b/test/torture-s/va-arg-trap-1.c.s
@@ -19,8 +19,7 @@ foo: # @foo
.globl bar
.type bar,@function
bar: # @bar
- .param i32
- .local i32
+ .param i32, i32
# BB#0: # %entry
i32.const $push0=, 0
i32.store $discard=, ap($pop0), $1
@@ -36,29 +35,17 @@ bar: # @bar
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32
# BB#0: # %entry
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 16
- i32.sub $7=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $7=, 0($6), $7
i32.const $1=, __stack_pointer
i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $7=, $1, $2
+ i32.const $2=, 16
+ i32.sub $3=, $1, $2
i32.const $2=, __stack_pointer
- i32.store $7=, 0($2), $7
+ i32.store $3=, 0($2), $3
i32.const $push0=, 0
- i32.store $discard=, 0($7), $pop0
- call bar@FUNCTION, $0
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $7=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $7=, 0($4), $7
+ i32.store $discard=, 0($3):p2align=4, $pop0
+ call bar@FUNCTION, $0, $3
unreachable
.endfunc
.Lfunc_end2:
diff --git a/test/torture-s/vfprintf-1.c.s b/test/torture-s/vfprintf-1.c.s
index aec717159..d4b06b959 100644
--- a/test/torture-s/vfprintf-1.c.s
+++ b/test/torture-s/vfprintf-1.c.s
@@ -5,18 +5,17 @@
.globl inner
.type inner,@function
inner: # @inner
- .param i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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
- copy_local $5=, $4
i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $push0=, 12($4), $5
- i32.store $discard=, 8($4), $pop0
+ 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.store $push0=, 12($5), $1
+ i32.store $discard=, 8($5), $pop0
block
i32.const $push1=, 10
i32.gt_u $push2=, $0, $pop1
@@ -50,12 +49,12 @@ inner: # @inner
i32.const $push89=, 0
i32.load $push90=, stdout($pop89)
i32.const $push92=, .L.str
- i32.load $push91=, 12($4)
+ i32.load $push91=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop90, $pop92, $pop91
i32.const $push99=, 0
i32.load $push93=, stdout($pop99)
i32.const $push98=, .L.str
- i32.load $push94=, 8($4)
+ i32.load $push94=, 8($5)
i32.call $push95=, vfprintf@FUNCTION, $pop93, $pop98, $pop94
i32.const $push96=, 5
i32.eq $push97=, $pop95, $pop96
@@ -68,12 +67,12 @@ inner: # @inner
i32.const $push80=, 0
i32.load $push81=, stdout($pop80)
i32.const $push83=, .L.str.1
- i32.load $push82=, 12($4)
+ i32.load $push82=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop81, $pop83, $pop82
i32.const $push101=, 0
i32.load $push84=, stdout($pop101)
i32.const $push100=, .L.str.1
- i32.load $push85=, 8($4)
+ i32.load $push85=, 8($5)
i32.call $push86=, vfprintf@FUNCTION, $pop84, $pop100, $pop85
i32.const $push87=, 6
i32.eq $push88=, $pop86, $pop87
@@ -86,12 +85,12 @@ inner: # @inner
i32.const $push71=, 0
i32.load $push72=, stdout($pop71)
i32.const $push74=, .L.str.2
- i32.load $push73=, 12($4)
+ i32.load $push73=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop72, $pop74, $pop73
i32.const $push103=, 0
i32.load $push75=, stdout($pop103)
i32.const $push102=, .L.str.2
- i32.load $push76=, 8($4)
+ i32.load $push76=, 8($5)
i32.call $push77=, vfprintf@FUNCTION, $pop75, $pop102, $pop76
i32.const $push78=, 1
i32.eq $push79=, $pop77, $pop78
@@ -104,12 +103,12 @@ inner: # @inner
i32.const $push64=, 0
i32.load $push65=, stdout($pop64)
i32.const $push67=, .L.str.3
- i32.load $push66=, 12($4)
+ i32.load $push66=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop65, $pop67, $pop66
i32.const $push105=, 0
i32.load $push68=, stdout($pop105)
i32.const $push104=, .L.str.3
- i32.load $push69=, 8($4)
+ i32.load $push69=, 8($5)
i32.call $push70=, vfprintf@FUNCTION, $pop68, $pop104, $pop69
i32.const $push120=, 0
i32.eq $push121=, $pop70, $pop120
@@ -122,12 +121,12 @@ inner: # @inner
i32.const $push55=, 0
i32.load $push56=, stdout($pop55)
i32.const $push58=, .L.str.4
- i32.load $push57=, 12($4)
+ i32.load $push57=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop56, $pop58, $pop57
i32.const $push107=, 0
i32.load $push59=, stdout($pop107)
i32.const $push106=, .L.str.4
- i32.load $push60=, 8($4)
+ i32.load $push60=, 8($5)
i32.call $push61=, vfprintf@FUNCTION, $pop59, $pop106, $pop60
i32.const $push62=, 5
i32.eq $push63=, $pop61, $pop62
@@ -140,12 +139,12 @@ inner: # @inner
i32.const $push46=, 0
i32.load $push47=, stdout($pop46)
i32.const $push49=, .L.str.4
- i32.load $push48=, 12($4)
+ i32.load $push48=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop47, $pop49, $pop48
i32.const $push109=, 0
i32.load $push50=, stdout($pop109)
i32.const $push108=, .L.str.4
- i32.load $push51=, 8($4)
+ i32.load $push51=, 8($5)
i32.call $push52=, vfprintf@FUNCTION, $pop50, $pop108, $pop51
i32.const $push53=, 6
i32.eq $push54=, $pop52, $pop53
@@ -158,12 +157,12 @@ inner: # @inner
i32.const $push37=, 0
i32.load $push38=, stdout($pop37)
i32.const $push40=, .L.str.4
- i32.load $push39=, 12($4)
+ i32.load $push39=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop38, $pop40, $pop39
i32.const $push111=, 0
i32.load $push41=, stdout($pop111)
i32.const $push110=, .L.str.4
- i32.load $push42=, 8($4)
+ i32.load $push42=, 8($5)
i32.call $push43=, vfprintf@FUNCTION, $pop41, $pop110, $pop42
i32.const $push44=, 1
i32.eq $push45=, $pop43, $pop44
@@ -176,12 +175,12 @@ inner: # @inner
i32.const $push30=, 0
i32.load $push31=, stdout($pop30)
i32.const $push33=, .L.str.4
- i32.load $push32=, 12($4)
+ i32.load $push32=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop31, $pop33, $pop32
i32.const $push113=, 0
i32.load $push34=, stdout($pop113)
i32.const $push112=, .L.str.4
- i32.load $push35=, 8($4)
+ i32.load $push35=, 8($5)
i32.call $push36=, vfprintf@FUNCTION, $pop34, $pop112, $pop35
i32.const $push122=, 0
i32.eq $push123=, $pop36, $pop122
@@ -194,12 +193,12 @@ inner: # @inner
i32.const $push21=, 0
i32.load $push22=, stdout($pop21)
i32.const $push24=, .L.str.5
- i32.load $push23=, 12($4)
+ i32.load $push23=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop22, $pop24, $pop23
i32.const $push115=, 0
i32.load $push25=, stdout($pop115)
i32.const $push114=, .L.str.5
- i32.load $push26=, 8($4)
+ i32.load $push26=, 8($5)
i32.call $push27=, vfprintf@FUNCTION, $pop25, $pop114, $pop26
i32.const $push28=, 1
i32.eq $push29=, $pop27, $pop28
@@ -212,12 +211,12 @@ inner: # @inner
i32.const $push12=, 0
i32.load $push13=, stdout($pop12)
i32.const $push15=, .L.str.6
- i32.load $push14=, 12($4)
+ i32.load $push14=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop13, $pop15, $pop14
i32.const $push117=, 0
i32.load $push16=, stdout($pop117)
i32.const $push116=, .L.str.6
- i32.load $push17=, 8($4)
+ i32.load $push17=, 8($5)
i32.call $push18=, vfprintf@FUNCTION, $pop16, $pop116, $pop17
i32.const $push19=, 7
i32.eq $push20=, $pop18, $pop19
@@ -230,12 +229,12 @@ inner: # @inner
i32.const $push3=, 0
i32.load $push4=, stdout($pop3)
i32.const $push6=, .L.str.7
- i32.load $push5=, 12($4)
+ i32.load $push5=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop4, $pop6, $pop5
i32.const $push119=, 0
i32.load $push7=, stdout($pop119)
i32.const $push118=, .L.str.7
- i32.load $push8=, 8($4)
+ i32.load $push8=, 8($5)
i32.call $push9=, vfprintf@FUNCTION, $pop7, $pop118, $pop8
i32.const $push10=, 2
i32.eq $push11=, $pop9, $pop10
@@ -245,10 +244,10 @@ inner: # @inner
unreachable
.LBB0_24: # %sw.epilog
end_block # label1:
- i32.const $3=, 16
- i32.add $4=, $5, $3
- i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return
.LBB0_25: # %sw.default
end_block # label0:
@@ -264,137 +263,69 @@ inner: # @inner
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 16
- i32.sub $32=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $32=, 0($30), $32
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 112
+ i32.sub $10=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $10=, 0($2), $10
i32.const $push0=, 0
- call inner@FUNCTION, $pop0
+ i32.const $push20=, 0
+ call inner@FUNCTION, $pop0, $pop20
i32.const $push1=, 1
- call inner@FUNCTION, $pop1
+ i32.const $push19=, 0
+ call inner@FUNCTION, $pop1, $pop19
i32.const $push2=, 2
- call inner@FUNCTION, $pop2
+ i32.const $push18=, 0
+ call inner@FUNCTION, $pop2, $pop18
i32.const $push3=, 3
- call inner@FUNCTION, $pop3
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $32=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $32=, 0($2), $32
+ i32.const $push17=, 0
+ call inner@FUNCTION, $pop3, $pop17
i32.const $push4=, .L.str
- i32.store $discard=, 0($32), $pop4
+ i32.store $discard=, 96($10):p2align=4, $pop4
i32.const $push5=, 4
- call inner@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $32=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $32=, 0($4), $32
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $32=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $32=, 0($6), $32
+ i32.const $4=, 96
+ i32.add $4=, $10, $4
+ call inner@FUNCTION, $pop5, $4
i32.const $push6=, .L.str.1
- i32.store $0=, 0($32), $pop6
+ i32.store $0=, 80($10):p2align=4, $pop6
i32.const $push7=, 5
- call inner@FUNCTION, $pop7
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $32=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $32=, 0($8), $32
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.sub $32=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $32=, 0($10), $32
+ i32.const $5=, 80
+ i32.add $5=, $10, $5
+ call inner@FUNCTION, $pop7, $5
i32.const $push8=, .L.str.2
- i32.store $discard=, 0($32), $pop8
+ i32.store $discard=, 64($10):p2align=4, $pop8
i32.const $push9=, 6
- call inner@FUNCTION, $pop9
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.add $32=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $32=, 0($12), $32
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.sub $32=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $32=, 0($14), $32
+ i32.const $6=, 64
+ i32.add $6=, $10, $6
+ call inner@FUNCTION, $pop9, $6
i32.const $push10=, .L.str.3
- i32.store $discard=, 0($32), $pop10
+ i32.store $discard=, 48($10):p2align=4, $pop10
i32.const $push11=, 7
- call inner@FUNCTION, $pop11
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.add $32=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $32=, 0($16), $32
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.sub $32=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $32=, 0($18), $32
+ i32.const $7=, 48
+ i32.add $7=, $10, $7
+ call inner@FUNCTION, $pop11, $7
i32.const $push12=, 120
- i32.store $discard=, 0($32), $pop12
+ i32.store $discard=, 32($10):p2align=4, $pop12
i32.const $push13=, 8
- call inner@FUNCTION, $pop13
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.add $32=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $32=, 0($20), $32
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.sub $32=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $32=, 0($22), $32
- i32.store $discard=, 0($32), $0
+ i32.const $8=, 32
+ i32.add $8=, $10, $8
+ call inner@FUNCTION, $pop13, $8
+ i32.store $discard=, 16($10):p2align=4, $0
i32.const $push14=, 9
- call inner@FUNCTION, $pop14
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.add $32=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $32=, 0($24), $32
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.sub $32=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $32=, 0($26), $32
+ i32.const $9=, 16
+ i32.add $9=, $10, $9
+ call inner@FUNCTION, $pop14, $9
i32.const $push16=, 0
- i32.store $0=, 0($32), $pop16
+ i32.store $0=, 0($10):p2align=4, $pop16
i32.const $push15=, 10
- call inner@FUNCTION, $pop15
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.add $32=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $32=, 0($28), $32
- i32.const $31=, 16
- i32.add $32=, $32, $31
- i32.const $31=, __stack_pointer
- i32.store $32=, 0($31), $32
+ call inner@FUNCTION, $pop15, $10
+ i32.const $3=, 112
+ i32.add $10=, $10, $3
+ i32.const $3=, __stack_pointer
+ i32.store $10=, 0($3), $10
return $0
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/vfprintf-chk-1.c.s b/test/torture-s/vfprintf-chk-1.c.s
index 94195e943..b5a0059ed 100644
--- a/test/torture-s/vfprintf-chk-1.c.s
+++ b/test/torture-s/vfprintf-chk-1.c.s
@@ -31,18 +31,17 @@ __vfprintf_chk: # @__vfprintf_chk
.globl inner
.type inner,@function
inner: # @inner
- .param i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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
- copy_local $5=, $4
i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $push0=, 12($4), $5
- i32.store $discard=, 8($4), $pop0
+ 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.store $push0=, 12($5), $1
+ i32.store $discard=, 8($5), $pop0
block
i32.const $push1=, 10
i32.gt_u $push2=, $0, $pop1
@@ -82,7 +81,7 @@ inner: # @inner
i32.const $push139=, 0
i32.load $push126=, stdout($pop139)
i32.const $push138=, .L.str
- i32.load $push127=, 12($4)
+ i32.load $push127=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop126, $0, $pop138, $pop127
block
i32.const $push137=, 0
@@ -97,7 +96,7 @@ inner: # @inner
i32.store $push129=, should_optimize($pop143), $pop142
i32.load $push130=, stdout($pop129)
i32.const $push141=, .L.str
- i32.load $push131=, 8($4)
+ i32.load $push131=, 8($5)
i32.call $push132=, __vfprintf_chk@FUNCTION, $pop130, $0, $pop141, $pop131
i32.const $push133=, 5
i32.ne $push134=, $pop132, $pop133
@@ -125,7 +124,7 @@ inner: # @inner
i32.const $push146=, 0
i32.load $push114=, stdout($pop146)
i32.const $push145=, .L.str.1
- i32.load $push115=, 12($4)
+ i32.load $push115=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop114, $0, $pop145, $pop115
block
i32.const $push144=, 0
@@ -140,7 +139,7 @@ inner: # @inner
i32.store $push117=, should_optimize($pop150), $pop149
i32.load $push118=, stdout($pop117)
i32.const $push148=, .L.str.1
- i32.load $push119=, 8($4)
+ i32.load $push119=, 8($5)
i32.call $push120=, __vfprintf_chk@FUNCTION, $pop118, $0, $pop148, $pop119
i32.const $push121=, 6
i32.ne $push122=, $pop120, $pop121
@@ -168,7 +167,7 @@ inner: # @inner
i32.const $push153=, 0
i32.load $push103=, stdout($pop153)
i32.const $push152=, .L.str.2
- i32.load $push104=, 12($4)
+ i32.load $push104=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop103, $0, $pop152, $pop104
block
i32.const $push151=, 0
@@ -183,7 +182,7 @@ inner: # @inner
i32.store $push106=, should_optimize($pop157), $pop156
i32.load $push107=, stdout($pop106)
i32.const $push155=, .L.str.2
- i32.load $push108=, 8($4)
+ i32.load $push108=, 8($5)
i32.call $push109=, __vfprintf_chk@FUNCTION, $pop107, $0, $pop155, $pop108
i32.ne $push110=, $pop109, $0
br_if 0, $pop110 # 0: down to label22
@@ -210,7 +209,7 @@ inner: # @inner
i32.const $push160=, 0
i32.load $push93=, stdout($pop160)
i32.const $push159=, .L.str.3
- i32.load $push94=, 12($4)
+ i32.load $push94=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop93, $0, $pop159, $pop94
block
i32.const $push158=, 0
@@ -225,7 +224,7 @@ inner: # @inner
i32.store $push96=, should_optimize($pop164), $pop163
i32.load $push97=, stdout($pop96)
i32.const $push162=, .L.str.3
- i32.load $push98=, 8($4)
+ i32.load $push98=, 8($5)
i32.call $push99=, __vfprintf_chk@FUNCTION, $pop97, $0, $pop162, $pop98
br_if 0, $pop99 # 0: down to label24
# BB#22: # %if.end41
@@ -251,7 +250,7 @@ inner: # @inner
tee_local $push166=, $0=, $pop80
i32.load $push81=, stdout($pop166)
i32.const $push165=, .L.str.4
- i32.load $push82=, 12($4)
+ i32.load $push82=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop81, $0, $pop165, $pop82
block
i32.load $push83=, should_optimize($0)
@@ -263,7 +262,7 @@ inner: # @inner
i32.store $push84=, should_optimize($0), $0
i32.load $push85=, stdout($pop84)
i32.const $push168=, .L.str.4
- i32.load $push86=, 8($4)
+ i32.load $push86=, 8($5)
i32.call $push87=, __vfprintf_chk@FUNCTION, $pop85, $0, $pop168, $pop86
i32.const $push88=, 5
i32.ne $push89=, $pop87, $pop88
@@ -291,7 +290,7 @@ inner: # @inner
tee_local $push170=, $0=, $pop67
i32.load $push68=, stdout($pop170)
i32.const $push169=, .L.str.4
- i32.load $push69=, 12($4)
+ i32.load $push69=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop68, $0, $pop169, $pop69
block
i32.load $push70=, should_optimize($0)
@@ -303,7 +302,7 @@ inner: # @inner
i32.store $push71=, should_optimize($0), $0
i32.load $push72=, stdout($pop71)
i32.const $push172=, .L.str.4
- i32.load $push73=, 8($4)
+ i32.load $push73=, 8($5)
i32.call $push74=, __vfprintf_chk@FUNCTION, $pop72, $0, $pop172, $pop73
i32.const $push75=, 6
i32.ne $push76=, $pop74, $pop75
@@ -331,7 +330,7 @@ inner: # @inner
tee_local $push174=, $0=, $pop54
i32.load $push55=, stdout($pop174)
i32.const $push173=, .L.str.4
- i32.load $push56=, 12($4)
+ i32.load $push56=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop55, $0, $pop173, $pop56
block
i32.load $push57=, should_optimize($0)
@@ -343,7 +342,7 @@ inner: # @inner
i32.store $push58=, should_optimize($0), $0
i32.load $push59=, stdout($pop58)
i32.const $push176=, .L.str.4
- i32.load $push60=, 8($4)
+ i32.load $push60=, 8($5)
i32.call $push61=, __vfprintf_chk@FUNCTION, $pop59, $0, $pop176, $pop60
i32.const $push62=, 1
i32.ne $push63=, $pop61, $pop62
@@ -371,7 +370,7 @@ inner: # @inner
tee_local $push178=, $0=, $pop43
i32.load $push44=, stdout($pop178)
i32.const $push177=, .L.str.4
- i32.load $push45=, 12($4)
+ i32.load $push45=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop44, $0, $pop177, $pop45
block
i32.load $push46=, should_optimize($0)
@@ -383,7 +382,7 @@ inner: # @inner
i32.store $push47=, should_optimize($0), $0
i32.load $push48=, stdout($pop47)
i32.const $push180=, .L.str.4
- i32.load $push49=, 8($4)
+ i32.load $push49=, 8($5)
i32.call $push50=, __vfprintf_chk@FUNCTION, $pop48, $0, $pop180, $pop49
br_if 0, $pop50 # 0: down to label32
# BB#46: # %if.end89
@@ -409,7 +408,7 @@ inner: # @inner
tee_local $push182=, $0=, $pop30
i32.load $push31=, stdout($pop182)
i32.const $push181=, .L.str.5
- i32.load $push32=, 12($4)
+ i32.load $push32=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop31, $0, $pop181, $pop32
block
i32.load $push33=, should_optimize($0)
@@ -421,7 +420,7 @@ inner: # @inner
i32.store $push34=, should_optimize($0), $0
i32.load $push35=, stdout($pop34)
i32.const $push184=, .L.str.5
- i32.load $push36=, 8($4)
+ i32.load $push36=, 8($5)
i32.call $push37=, __vfprintf_chk@FUNCTION, $pop35, $0, $pop184, $pop36
i32.const $push38=, 1
i32.ne $push39=, $pop37, $pop38
@@ -449,7 +448,7 @@ inner: # @inner
tee_local $push186=, $0=, $pop17
i32.load $push18=, stdout($pop186)
i32.const $push185=, .L.str.6
- i32.load $push19=, 12($4)
+ i32.load $push19=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop18, $0, $pop185, $pop19
block
i32.load $push20=, should_optimize($0)
@@ -461,7 +460,7 @@ inner: # @inner
i32.store $push21=, should_optimize($0), $0
i32.load $push22=, stdout($pop21)
i32.const $push188=, .L.str.6
- i32.load $push23=, 8($4)
+ i32.load $push23=, 8($5)
i32.call $push24=, __vfprintf_chk@FUNCTION, $pop22, $0, $pop188, $pop23
i32.const $push25=, 7
i32.ne $push26=, $pop24, $pop25
@@ -489,7 +488,7 @@ inner: # @inner
tee_local $push190=, $0=, $pop4
i32.load $push5=, stdout($pop190)
i32.const $push189=, .L.str.7
- i32.load $push6=, 12($4)
+ i32.load $push6=, 12($5)
i32.call $discard=, __vfprintf_chk@FUNCTION, $pop5, $0, $pop189, $pop6
i32.load $push7=, should_optimize($0)
i32.const $push213=, 0
@@ -499,7 +498,7 @@ inner: # @inner
i32.store $push8=, should_optimize($0), $0
i32.load $push9=, stdout($pop8)
i32.const $push192=, .L.str.7
- i32.load $push10=, 8($4)
+ i32.load $push10=, 8($5)
i32.call $push11=, __vfprintf_chk@FUNCTION, $pop9, $0, $pop192, $pop10
i32.const $push12=, 2
i32.ne $push13=, $pop11, $pop12
@@ -512,10 +511,10 @@ inner: # @inner
br_if 1, $pop216 # 1: down to label4
.LBB1_65: # %sw.epilog
end_block # label5:
- i32.const $3=, 16
- i32.add $4=, $5, $3
- i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return
.LBB1_66: # %if.then127
end_block # label4:
@@ -543,137 +542,69 @@ inner: # @inner
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 16
- i32.sub $32=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $32=, 0($30), $32
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 112
+ i32.sub $10=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $10=, 0($2), $10
i32.const $push0=, 0
- call inner@FUNCTION, $pop0
+ i32.const $push20=, 0
+ call inner@FUNCTION, $pop0, $pop20
i32.const $push1=, 1
- call inner@FUNCTION, $pop1
+ i32.const $push19=, 0
+ call inner@FUNCTION, $pop1, $pop19
i32.const $push2=, 2
- call inner@FUNCTION, $pop2
+ i32.const $push18=, 0
+ call inner@FUNCTION, $pop2, $pop18
i32.const $push3=, 3
- call inner@FUNCTION, $pop3
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $32=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $32=, 0($2), $32
+ i32.const $push17=, 0
+ call inner@FUNCTION, $pop3, $pop17
i32.const $push4=, .L.str
- i32.store $discard=, 0($32), $pop4
+ i32.store $discard=, 96($10):p2align=4, $pop4
i32.const $push5=, 4
- call inner@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $32=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $32=, 0($4), $32
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $32=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $32=, 0($6), $32
+ i32.const $4=, 96
+ i32.add $4=, $10, $4
+ call inner@FUNCTION, $pop5, $4
i32.const $push6=, .L.str.1
- i32.store $0=, 0($32), $pop6
+ i32.store $0=, 80($10):p2align=4, $pop6
i32.const $push7=, 5
- call inner@FUNCTION, $pop7
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $32=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $32=, 0($8), $32
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.sub $32=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $32=, 0($10), $32
+ i32.const $5=, 80
+ i32.add $5=, $10, $5
+ call inner@FUNCTION, $pop7, $5
i32.const $push8=, .L.str.2
- i32.store $discard=, 0($32), $pop8
+ i32.store $discard=, 64($10):p2align=4, $pop8
i32.const $push9=, 6
- call inner@FUNCTION, $pop9
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.add $32=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $32=, 0($12), $32
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.sub $32=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $32=, 0($14), $32
+ i32.const $6=, 64
+ i32.add $6=, $10, $6
+ call inner@FUNCTION, $pop9, $6
i32.const $push10=, .L.str.3
- i32.store $discard=, 0($32), $pop10
+ i32.store $discard=, 48($10):p2align=4, $pop10
i32.const $push11=, 7
- call inner@FUNCTION, $pop11
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.add $32=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $32=, 0($16), $32
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.sub $32=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $32=, 0($18), $32
+ i32.const $7=, 48
+ i32.add $7=, $10, $7
+ call inner@FUNCTION, $pop11, $7
i32.const $push12=, 120
- i32.store $discard=, 0($32), $pop12
+ i32.store $discard=, 32($10):p2align=4, $pop12
i32.const $push13=, 8
- call inner@FUNCTION, $pop13
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.add $32=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $32=, 0($20), $32
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.sub $32=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $32=, 0($22), $32
- i32.store $discard=, 0($32), $0
+ i32.const $8=, 32
+ i32.add $8=, $10, $8
+ call inner@FUNCTION, $pop13, $8
+ i32.store $discard=, 16($10):p2align=4, $0
i32.const $push14=, 9
- call inner@FUNCTION, $pop14
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.add $32=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $32=, 0($24), $32
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.sub $32=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $32=, 0($26), $32
+ i32.const $9=, 16
+ i32.add $9=, $10, $9
+ call inner@FUNCTION, $pop14, $9
i32.const $push16=, 0
- i32.store $0=, 0($32), $pop16
+ i32.store $0=, 0($10):p2align=4, $pop16
i32.const $push15=, 10
- call inner@FUNCTION, $pop15
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.add $32=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $32=, 0($28), $32
- i32.const $31=, 16
- i32.add $32=, $32, $31
- i32.const $31=, __stack_pointer
- i32.store $32=, 0($31), $32
+ call inner@FUNCTION, $pop15, $10
+ i32.const $3=, 112
+ i32.add $10=, $10, $3
+ i32.const $3=, __stack_pointer
+ i32.store $10=, 0($3), $10
return $0
.endfunc
.Lfunc_end2:
diff --git a/test/torture-s/vprintf-1.c.s b/test/torture-s/vprintf-1.c.s
index d1d85fa8e..f043acc7d 100644
--- a/test/torture-s/vprintf-1.c.s
+++ b/test/torture-s/vprintf-1.c.s
@@ -5,18 +5,17 @@
.globl inner
.type inner,@function
inner: # @inner
- .param i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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
- copy_local $5=, $4
i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $push0=, 12($4), $5
- i32.store $discard=, 8($4), $pop0
+ 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.store $push0=, 12($5), $1
+ i32.store $discard=, 8($5), $pop0
block
i32.const $push1=, 10
i32.gt_u $push2=, $0, $pop1
@@ -50,12 +49,12 @@ inner: # @inner
i32.const $push90=, 0
i32.load $push91=, stdout($pop90)
i32.const $push92=, .L.str
- i32.load $push89=, 12($4)
+ i32.load $push89=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop91, $pop92, $pop89
i32.const $push99=, 0
i32.load $push94=, stdout($pop99)
i32.const $push98=, .L.str
- i32.load $push93=, 8($4)
+ i32.load $push93=, 8($5)
i32.call $push95=, vfprintf@FUNCTION, $pop94, $pop98, $pop93
i32.const $push96=, 5
i32.eq $push97=, $pop95, $pop96
@@ -68,12 +67,12 @@ inner: # @inner
i32.const $push81=, 0
i32.load $push82=, stdout($pop81)
i32.const $push83=, .L.str.1
- i32.load $push80=, 12($4)
+ i32.load $push80=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop82, $pop83, $pop80
i32.const $push101=, 0
i32.load $push85=, stdout($pop101)
i32.const $push100=, .L.str.1
- i32.load $push84=, 8($4)
+ i32.load $push84=, 8($5)
i32.call $push86=, vfprintf@FUNCTION, $pop85, $pop100, $pop84
i32.const $push87=, 6
i32.eq $push88=, $pop86, $pop87
@@ -86,12 +85,12 @@ inner: # @inner
i32.const $push72=, 0
i32.load $push73=, stdout($pop72)
i32.const $push74=, .L.str.2
- i32.load $push71=, 12($4)
+ i32.load $push71=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop73, $pop74, $pop71
i32.const $push103=, 0
i32.load $push76=, stdout($pop103)
i32.const $push102=, .L.str.2
- i32.load $push75=, 8($4)
+ i32.load $push75=, 8($5)
i32.call $push77=, vfprintf@FUNCTION, $pop76, $pop102, $pop75
i32.const $push78=, 1
i32.eq $push79=, $pop77, $pop78
@@ -104,12 +103,12 @@ inner: # @inner
i32.const $push65=, 0
i32.load $push66=, stdout($pop65)
i32.const $push67=, .L.str.3
- i32.load $push64=, 12($4)
+ i32.load $push64=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop66, $pop67, $pop64
i32.const $push105=, 0
i32.load $push69=, stdout($pop105)
i32.const $push104=, .L.str.3
- i32.load $push68=, 8($4)
+ i32.load $push68=, 8($5)
i32.call $push70=, vfprintf@FUNCTION, $pop69, $pop104, $pop68
i32.const $push120=, 0
i32.eq $push121=, $pop70, $pop120
@@ -122,12 +121,12 @@ inner: # @inner
i32.const $push56=, 0
i32.load $push57=, stdout($pop56)
i32.const $push58=, .L.str.4
- i32.load $push55=, 12($4)
+ i32.load $push55=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop57, $pop58, $pop55
i32.const $push107=, 0
i32.load $push60=, stdout($pop107)
i32.const $push106=, .L.str.4
- i32.load $push59=, 8($4)
+ i32.load $push59=, 8($5)
i32.call $push61=, vfprintf@FUNCTION, $pop60, $pop106, $pop59
i32.const $push62=, 5
i32.eq $push63=, $pop61, $pop62
@@ -140,12 +139,12 @@ inner: # @inner
i32.const $push47=, 0
i32.load $push48=, stdout($pop47)
i32.const $push49=, .L.str.4
- i32.load $push46=, 12($4)
+ i32.load $push46=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop48, $pop49, $pop46
i32.const $push109=, 0
i32.load $push51=, stdout($pop109)
i32.const $push108=, .L.str.4
- i32.load $push50=, 8($4)
+ i32.load $push50=, 8($5)
i32.call $push52=, vfprintf@FUNCTION, $pop51, $pop108, $pop50
i32.const $push53=, 6
i32.eq $push54=, $pop52, $pop53
@@ -158,12 +157,12 @@ inner: # @inner
i32.const $push38=, 0
i32.load $push39=, stdout($pop38)
i32.const $push40=, .L.str.4
- i32.load $push37=, 12($4)
+ i32.load $push37=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop39, $pop40, $pop37
i32.const $push111=, 0
i32.load $push42=, stdout($pop111)
i32.const $push110=, .L.str.4
- i32.load $push41=, 8($4)
+ i32.load $push41=, 8($5)
i32.call $push43=, vfprintf@FUNCTION, $pop42, $pop110, $pop41
i32.const $push44=, 1
i32.eq $push45=, $pop43, $pop44
@@ -176,12 +175,12 @@ inner: # @inner
i32.const $push31=, 0
i32.load $push32=, stdout($pop31)
i32.const $push33=, .L.str.4
- i32.load $push30=, 12($4)
+ i32.load $push30=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop32, $pop33, $pop30
i32.const $push113=, 0
i32.load $push35=, stdout($pop113)
i32.const $push112=, .L.str.4
- i32.load $push34=, 8($4)
+ i32.load $push34=, 8($5)
i32.call $push36=, vfprintf@FUNCTION, $pop35, $pop112, $pop34
i32.const $push122=, 0
i32.eq $push123=, $pop36, $pop122
@@ -194,12 +193,12 @@ inner: # @inner
i32.const $push22=, 0
i32.load $push23=, stdout($pop22)
i32.const $push24=, .L.str.5
- i32.load $push21=, 12($4)
+ i32.load $push21=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop23, $pop24, $pop21
i32.const $push115=, 0
i32.load $push26=, stdout($pop115)
i32.const $push114=, .L.str.5
- i32.load $push25=, 8($4)
+ i32.load $push25=, 8($5)
i32.call $push27=, vfprintf@FUNCTION, $pop26, $pop114, $pop25
i32.const $push28=, 1
i32.eq $push29=, $pop27, $pop28
@@ -212,12 +211,12 @@ inner: # @inner
i32.const $push13=, 0
i32.load $push14=, stdout($pop13)
i32.const $push15=, .L.str.6
- i32.load $push12=, 12($4)
+ i32.load $push12=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop14, $pop15, $pop12
i32.const $push117=, 0
i32.load $push17=, stdout($pop117)
i32.const $push116=, .L.str.6
- i32.load $push16=, 8($4)
+ i32.load $push16=, 8($5)
i32.call $push18=, vfprintf@FUNCTION, $pop17, $pop116, $pop16
i32.const $push19=, 7
i32.eq $push20=, $pop18, $pop19
@@ -230,12 +229,12 @@ inner: # @inner
i32.const $push4=, 0
i32.load $push5=, stdout($pop4)
i32.const $push6=, .L.str.7
- i32.load $push3=, 12($4)
+ i32.load $push3=, 12($5)
i32.call $discard=, vfprintf@FUNCTION, $pop5, $pop6, $pop3
i32.const $push119=, 0
i32.load $push8=, stdout($pop119)
i32.const $push118=, .L.str.7
- i32.load $push7=, 8($4)
+ i32.load $push7=, 8($5)
i32.call $push9=, vfprintf@FUNCTION, $pop8, $pop118, $pop7
i32.const $push10=, 2
i32.eq $push11=, $pop9, $pop10
@@ -245,10 +244,10 @@ inner: # @inner
unreachable
.LBB0_24: # %sw.epilog
end_block # label1:
- i32.const $3=, 16
- i32.add $4=, $5, $3
- i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return
.LBB0_25: # %sw.default
end_block # label0:
@@ -264,137 +263,69 @@ inner: # @inner
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 16
- i32.sub $32=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $32=, 0($30), $32
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 112
+ i32.sub $10=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $10=, 0($2), $10
i32.const $push0=, 0
- call inner@FUNCTION, $pop0
+ i32.const $push20=, 0
+ call inner@FUNCTION, $pop0, $pop20
i32.const $push1=, 1
- call inner@FUNCTION, $pop1
+ i32.const $push19=, 0
+ call inner@FUNCTION, $pop1, $pop19
i32.const $push2=, 2
- call inner@FUNCTION, $pop2
+ i32.const $push18=, 0
+ call inner@FUNCTION, $pop2, $pop18
i32.const $push3=, 3
- call inner@FUNCTION, $pop3
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $32=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $32=, 0($2), $32
+ i32.const $push17=, 0
+ call inner@FUNCTION, $pop3, $pop17
i32.const $push4=, .L.str
- i32.store $discard=, 0($32), $pop4
+ i32.store $discard=, 96($10):p2align=4, $pop4
i32.const $push5=, 4
- call inner@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $32=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $32=, 0($4), $32
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $32=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $32=, 0($6), $32
+ i32.const $4=, 96
+ i32.add $4=, $10, $4
+ call inner@FUNCTION, $pop5, $4
i32.const $push6=, .L.str.1
- i32.store $0=, 0($32), $pop6
+ i32.store $0=, 80($10):p2align=4, $pop6
i32.const $push7=, 5
- call inner@FUNCTION, $pop7
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $32=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $32=, 0($8), $32
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.sub $32=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $32=, 0($10), $32
+ i32.const $5=, 80
+ i32.add $5=, $10, $5
+ call inner@FUNCTION, $pop7, $5
i32.const $push8=, .L.str.2
- i32.store $discard=, 0($32), $pop8
+ i32.store $discard=, 64($10):p2align=4, $pop8
i32.const $push9=, 6
- call inner@FUNCTION, $pop9
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.add $32=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $32=, 0($12), $32
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.sub $32=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $32=, 0($14), $32
+ i32.const $6=, 64
+ i32.add $6=, $10, $6
+ call inner@FUNCTION, $pop9, $6
i32.const $push10=, .L.str.3
- i32.store $discard=, 0($32), $pop10
+ i32.store $discard=, 48($10):p2align=4, $pop10
i32.const $push11=, 7
- call inner@FUNCTION, $pop11
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.add $32=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $32=, 0($16), $32
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.sub $32=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $32=, 0($18), $32
+ i32.const $7=, 48
+ i32.add $7=, $10, $7
+ call inner@FUNCTION, $pop11, $7
i32.const $push12=, 120
- i32.store $discard=, 0($32), $pop12
+ i32.store $discard=, 32($10):p2align=4, $pop12
i32.const $push13=, 8
- call inner@FUNCTION, $pop13
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.add $32=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $32=, 0($20), $32
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.sub $32=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $32=, 0($22), $32
- i32.store $discard=, 0($32), $0
+ i32.const $8=, 32
+ i32.add $8=, $10, $8
+ call inner@FUNCTION, $pop13, $8
+ i32.store $discard=, 16($10):p2align=4, $0
i32.const $push14=, 9
- call inner@FUNCTION, $pop14
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.add $32=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $32=, 0($24), $32
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.sub $32=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $32=, 0($26), $32
+ i32.const $9=, 16
+ i32.add $9=, $10, $9
+ call inner@FUNCTION, $pop14, $9
i32.const $push16=, 0
- i32.store $0=, 0($32), $pop16
+ i32.store $0=, 0($10):p2align=4, $pop16
i32.const $push15=, 10
- call inner@FUNCTION, $pop15
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.add $32=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $32=, 0($28), $32
- i32.const $31=, 16
- i32.add $32=, $32, $31
- i32.const $31=, __stack_pointer
- i32.store $32=, 0($31), $32
+ call inner@FUNCTION, $pop15, $10
+ i32.const $3=, 112
+ i32.add $10=, $10, $3
+ i32.const $3=, __stack_pointer
+ i32.store $10=, 0($3), $10
return $0
.endfunc
.Lfunc_end1:
diff --git a/test/torture-s/vprintf-chk-1.c.s b/test/torture-s/vprintf-chk-1.c.s
index 00a4f7a44..7a67215df 100644
--- a/test/torture-s/vprintf-chk-1.c.s
+++ b/test/torture-s/vprintf-chk-1.c.s
@@ -33,18 +33,17 @@ __vprintf_chk: # @__vprintf_chk
.globl inner
.type inner,@function
inner: # @inner
- .param i32
- .local i32, i32, i32, i32, i32
+ .param i32, i32
+ .local 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
- copy_local $5=, $4
i32.const $2=, __stack_pointer
- i32.store $4=, 0($2), $4
- i32.store $push0=, 12($4), $5
- i32.store $discard=, 8($4), $pop0
+ 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.store $push0=, 12($5), $1
+ i32.store $discard=, 8($5), $pop0
block
i32.const $push1=, 10
i32.gt_u $push2=, $0, $pop1
@@ -82,7 +81,7 @@ inner: # @inner
i32.const $push98=, 0
i32.store $0=, should_optimize($pop88), $pop98
i32.const $push97=, .L.str
- i32.load $push89=, 12($4)
+ i32.load $push89=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop97, $pop89
block
i32.load $push90=, should_optimize($0)
@@ -93,7 +92,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push99=, .L.str
- i32.load $push91=, 8($4)
+ i32.load $push91=, 8($5)
i32.call $push92=, __vprintf_chk@FUNCTION, $0, $pop99, $pop91
i32.const $push93=, 5
i32.ne $push94=, $pop92, $pop93
@@ -119,7 +118,7 @@ inner: # @inner
i32.const $push79=, 1
i32.store $discard=, should_optimize($pop102), $pop79
i32.const $push101=, .L.str.1
- i32.load $push80=, 12($4)
+ i32.load $push80=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop101, $pop80
block
i32.const $push100=, 0
@@ -133,7 +132,7 @@ inner: # @inner
i32.store $discard=, should_optimize($pop105), $pop104
block
i32.const $push103=, .L.str.1
- i32.load $push82=, 8($4)
+ i32.load $push82=, 8($5)
i32.call $push83=, __vprintf_chk@FUNCTION, $0, $pop103, $pop82
i32.const $push84=, 6
i32.ne $push85=, $pop83, $pop84
@@ -159,7 +158,7 @@ inner: # @inner
i32.const $push71=, 1
i32.store $0=, should_optimize($pop108), $pop71
i32.const $push107=, .L.str.2
- i32.load $push72=, 12($4)
+ i32.load $push72=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop107, $pop72
block
i32.const $push106=, 0
@@ -173,7 +172,7 @@ inner: # @inner
i32.store $discard=, should_optimize($pop111), $pop110
block
i32.const $push109=, .L.str.2
- i32.load $push74=, 8($4)
+ i32.load $push74=, 8($5)
i32.call $push75=, __vprintf_chk@FUNCTION, $0, $pop109, $pop74
i32.ne $push76=, $pop75, $0
br_if 0, $pop76 # 0: down to label22
@@ -198,7 +197,7 @@ inner: # @inner
i32.const $push64=, 1
i32.store $discard=, should_optimize($pop114), $pop64
i32.const $push113=, .L.str.3
- i32.load $push65=, 12($4)
+ i32.load $push65=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop113, $pop65
block
i32.const $push112=, 0
@@ -212,7 +211,7 @@ inner: # @inner
i32.store $discard=, should_optimize($pop117), $pop116
block
i32.const $push115=, .L.str.3
- i32.load $push67=, 8($4)
+ i32.load $push67=, 8($5)
i32.call $push68=, __vprintf_chk@FUNCTION, $0, $pop115, $pop67
br_if 0, $pop68 # 0: down to label24
# BB#22: # %if.end41
@@ -236,7 +235,7 @@ inner: # @inner
i32.const $push119=, 0
i32.store $0=, should_optimize($pop55), $pop119
i32.const $push118=, .L.str.4
- i32.load $push56=, 12($4)
+ i32.load $push56=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop118, $pop56
block
i32.load $push57=, should_optimize($0)
@@ -247,7 +246,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push120=, .L.str.4
- i32.load $push58=, 8($4)
+ i32.load $push58=, 8($5)
i32.call $push59=, __vprintf_chk@FUNCTION, $0, $pop120, $pop58
i32.const $push60=, 5
i32.ne $push61=, $pop59, $pop60
@@ -273,7 +272,7 @@ inner: # @inner
i32.const $push122=, 0
i32.store $0=, should_optimize($pop46), $pop122
i32.const $push121=, .L.str.4
- i32.load $push47=, 12($4)
+ i32.load $push47=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop121, $pop47
block
i32.load $push48=, should_optimize($0)
@@ -284,7 +283,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push123=, .L.str.4
- i32.load $push49=, 8($4)
+ i32.load $push49=, 8($5)
i32.call $push50=, __vprintf_chk@FUNCTION, $0, $pop123, $pop49
i32.const $push51=, 6
i32.ne $push52=, $pop50, $pop51
@@ -310,7 +309,7 @@ inner: # @inner
i32.const $push125=, 0
i32.store $0=, should_optimize($pop37), $pop125
i32.const $push124=, .L.str.4
- i32.load $push38=, 12($4)
+ i32.load $push38=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop124, $pop38
block
i32.load $push39=, should_optimize($0)
@@ -321,7 +320,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push126=, .L.str.4
- i32.load $push40=, 8($4)
+ i32.load $push40=, 8($5)
i32.call $push41=, __vprintf_chk@FUNCTION, $0, $pop126, $pop40
i32.const $push42=, 1
i32.ne $push43=, $pop41, $pop42
@@ -347,7 +346,7 @@ inner: # @inner
i32.const $push128=, 0
i32.store $0=, should_optimize($pop30), $pop128
i32.const $push127=, .L.str.4
- i32.load $push31=, 12($4)
+ i32.load $push31=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop127, $pop31
block
i32.load $push32=, should_optimize($0)
@@ -358,7 +357,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push129=, .L.str.4
- i32.load $push33=, 8($4)
+ i32.load $push33=, 8($5)
i32.call $push34=, __vprintf_chk@FUNCTION, $0, $pop129, $pop33
br_if 0, $pop34 # 0: down to label32
# BB#46: # %if.end89
@@ -382,7 +381,7 @@ inner: # @inner
i32.const $push131=, 0
i32.store $0=, should_optimize($pop21), $pop131
i32.const $push130=, .L.str.5
- i32.load $push22=, 12($4)
+ i32.load $push22=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop130, $pop22
block
i32.load $push23=, should_optimize($0)
@@ -393,7 +392,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push132=, .L.str.5
- i32.load $push24=, 8($4)
+ i32.load $push24=, 8($5)
i32.call $push25=, __vprintf_chk@FUNCTION, $0, $pop132, $pop24
i32.const $push26=, 1
i32.ne $push27=, $pop25, $pop26
@@ -419,7 +418,7 @@ inner: # @inner
i32.const $push134=, 0
i32.store $0=, should_optimize($pop12), $pop134
i32.const $push133=, .L.str.6
- i32.load $push13=, 12($4)
+ i32.load $push13=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop133, $pop13
block
i32.load $push14=, should_optimize($0)
@@ -430,7 +429,7 @@ inner: # @inner
i32.store $discard=, should_optimize($0), $0
block
i32.const $push135=, .L.str.6
- i32.load $push15=, 8($4)
+ i32.load $push15=, 8($5)
i32.call $push16=, __vprintf_chk@FUNCTION, $0, $pop135, $pop15
i32.const $push17=, 7
i32.ne $push18=, $pop16, $pop17
@@ -456,7 +455,7 @@ inner: # @inner
i32.const $push137=, 0
i32.store $0=, should_optimize($pop3), $pop137
i32.const $push136=, .L.str.7
- i32.load $push4=, 12($4)
+ i32.load $push4=, 12($5)
i32.call $discard=, __vprintf_chk@FUNCTION, $0, $pop136, $pop4
i32.load $push5=, should_optimize($0)
i32.const $push159=, 0
@@ -465,7 +464,7 @@ inner: # @inner
# BB#63: # %if.end121
i32.store $discard=, should_optimize($0), $0
i32.const $push138=, .L.str.7
- i32.load $push6=, 8($4)
+ i32.load $push6=, 8($5)
i32.call $push7=, __vprintf_chk@FUNCTION, $0, $pop138, $pop6
i32.const $push8=, 2
i32.ne $push9=, $pop7, $pop8
@@ -478,10 +477,10 @@ inner: # @inner
br_if 1, $pop162 # 1: down to label4
.LBB1_65: # %sw.epilog
end_block # label5:
- i32.const $3=, 16
- i32.add $4=, $5, $3
- i32.const $3=, __stack_pointer
- i32.store $4=, 0($3), $4
+ i32.const $4=, 16
+ i32.add $5=, $5, $4
+ i32.const $4=, __stack_pointer
+ i32.store $5=, 0($4), $5
return
.LBB1_66: # %if.then127
end_block # label4:
@@ -509,137 +508,69 @@ inner: # @inner
.type main,@function
main: # @main
.result i32
- .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
+ .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32
# BB#0: # %entry
- i32.const $29=, __stack_pointer
- i32.load $29=, 0($29)
- i32.const $30=, 16
- i32.sub $32=, $29, $30
- i32.const $30=, __stack_pointer
- i32.store $32=, 0($30), $32
+ i32.const $1=, __stack_pointer
+ i32.load $1=, 0($1)
+ i32.const $2=, 112
+ i32.sub $10=, $1, $2
+ i32.const $2=, __stack_pointer
+ i32.store $10=, 0($2), $10
i32.const $push0=, 0
- call inner@FUNCTION, $pop0
+ i32.const $push20=, 0
+ call inner@FUNCTION, $pop0, $pop20
i32.const $push1=, 1
- call inner@FUNCTION, $pop1
+ i32.const $push19=, 0
+ call inner@FUNCTION, $pop1, $pop19
i32.const $push2=, 2
- call inner@FUNCTION, $pop2
+ i32.const $push18=, 0
+ call inner@FUNCTION, $pop2, $pop18
i32.const $push3=, 3
- call inner@FUNCTION, $pop3
- i32.const $1=, __stack_pointer
- i32.load $1=, 0($1)
- i32.const $2=, 4
- i32.sub $32=, $1, $2
- i32.const $2=, __stack_pointer
- i32.store $32=, 0($2), $32
+ i32.const $push17=, 0
+ call inner@FUNCTION, $pop3, $pop17
i32.const $push4=, .L.str
- i32.store $discard=, 0($32), $pop4
+ i32.store $discard=, 96($10):p2align=4, $pop4
i32.const $push5=, 4
- call inner@FUNCTION, $pop5
- i32.const $3=, __stack_pointer
- i32.load $3=, 0($3)
- i32.const $4=, 4
- i32.add $32=, $3, $4
- i32.const $4=, __stack_pointer
- i32.store $32=, 0($4), $32
- i32.const $5=, __stack_pointer
- i32.load $5=, 0($5)
- i32.const $6=, 4
- i32.sub $32=, $5, $6
- i32.const $6=, __stack_pointer
- i32.store $32=, 0($6), $32
+ i32.const $4=, 96
+ i32.add $4=, $10, $4
+ call inner@FUNCTION, $pop5, $4
i32.const $push6=, .L.str.1
- i32.store $0=, 0($32), $pop6
+ i32.store $0=, 80($10):p2align=4, $pop6
i32.const $push7=, 5
- call inner@FUNCTION, $pop7
- i32.const $7=, __stack_pointer
- i32.load $7=, 0($7)
- i32.const $8=, 4
- i32.add $32=, $7, $8
- i32.const $8=, __stack_pointer
- i32.store $32=, 0($8), $32
- i32.const $9=, __stack_pointer
- i32.load $9=, 0($9)
- i32.const $10=, 4
- i32.sub $32=, $9, $10
- i32.const $10=, __stack_pointer
- i32.store $32=, 0($10), $32
+ i32.const $5=, 80
+ i32.add $5=, $10, $5
+ call inner@FUNCTION, $pop7, $5
i32.const $push8=, .L.str.2
- i32.store $discard=, 0($32), $pop8
+ i32.store $discard=, 64($10):p2align=4, $pop8
i32.const $push9=, 6
- call inner@FUNCTION, $pop9
- i32.const $11=, __stack_pointer
- i32.load $11=, 0($11)
- i32.const $12=, 4
- i32.add $32=, $11, $12
- i32.const $12=, __stack_pointer
- i32.store $32=, 0($12), $32
- i32.const $13=, __stack_pointer
- i32.load $13=, 0($13)
- i32.const $14=, 4
- i32.sub $32=, $13, $14
- i32.const $14=, __stack_pointer
- i32.store $32=, 0($14), $32
+ i32.const $6=, 64
+ i32.add $6=, $10, $6
+ call inner@FUNCTION, $pop9, $6
i32.const $push10=, .L.str.3
- i32.store $discard=, 0($32), $pop10
+ i32.store $discard=, 48($10):p2align=4, $pop10
i32.const $push11=, 7
- call inner@FUNCTION, $pop11
- i32.const $15=, __stack_pointer
- i32.load $15=, 0($15)
- i32.const $16=, 4
- i32.add $32=, $15, $16
- i32.const $16=, __stack_pointer
- i32.store $32=, 0($16), $32
- i32.const $17=, __stack_pointer
- i32.load $17=, 0($17)
- i32.const $18=, 4
- i32.sub $32=, $17, $18
- i32.const $18=, __stack_pointer
- i32.store $32=, 0($18), $32
+ i32.const $7=, 48
+ i32.add $7=, $10, $7
+ call inner@FUNCTION, $pop11, $7
i32.const $push12=, 120
- i32.store $discard=, 0($32), $pop12
+ i32.store $discard=, 32($10):p2align=4, $pop12
i32.const $push13=, 8
- call inner@FUNCTION, $pop13
- i32.const $19=, __stack_pointer
- i32.load $19=, 0($19)
- i32.const $20=, 4
- i32.add $32=, $19, $20
- i32.const $20=, __stack_pointer
- i32.store $32=, 0($20), $32
- i32.const $21=, __stack_pointer
- i32.load $21=, 0($21)
- i32.const $22=, 4
- i32.sub $32=, $21, $22
- i32.const $22=, __stack_pointer
- i32.store $32=, 0($22), $32
- i32.store $discard=, 0($32), $0
+ i32.const $8=, 32
+ i32.add $8=, $10, $8
+ call inner@FUNCTION, $pop13, $8
+ i32.store $discard=, 16($10):p2align=4, $0
i32.const $push14=, 9
- call inner@FUNCTION, $pop14
- i32.const $23=, __stack_pointer
- i32.load $23=, 0($23)
- i32.const $24=, 4
- i32.add $32=, $23, $24
- i32.const $24=, __stack_pointer
- i32.store $32=, 0($24), $32
- i32.const $25=, __stack_pointer
- i32.load $25=, 0($25)
- i32.const $26=, 4
- i32.sub $32=, $25, $26
- i32.const $26=, __stack_pointer
- i32.store $32=, 0($26), $32
+ i32.const $9=, 16
+ i32.add $9=, $10, $9
+ call inner@FUNCTION, $pop14, $9
i32.const $push16=, 0
- i32.store $0=, 0($32), $pop16
+ i32.store $0=, 0($10):p2align=4, $pop16
i32.const $push15=, 10
- call inner@FUNCTION, $pop15
- i32.const $27=, __stack_pointer
- i32.load $27=, 0($27)
- i32.const $28=, 4
- i32.add $32=, $27, $28
- i32.const $28=, __stack_pointer
- i32.store $32=, 0($28), $32
- i32.const $31=, 16
- i32.add $32=, $32, $31
- i32.const $31=, __stack_pointer
- i32.store $32=, 0($31), $32
+ call inner@FUNCTION, $pop15, $10
+ i32.const $3=, 112
+ i32.add $10=, $10, $3
+ i32.const $3=, __stack_pointer
+ i32.store $10=, 0($3), $10
return $0
.endfunc
.Lfunc_end2: