summaryrefslogtreecommitdiff
path: root/test/passes
diff options
context:
space:
mode:
authorThomas Lively <tlively@google.com>2024-11-26 21:57:29 -0800
committerGitHub <noreply@github.com>2024-11-26 21:57:29 -0800
commitf8e1622bf0835dec2bb97bcb73281d34dbde4e2d (patch)
tree76bfc786e8dc113005be6167721b94ae4639e137 /test/passes
parent6f0f2e00521843118b63f41732dc2eb86d39fa09 (diff)
downloadbinaryen-f8e1622bf0835dec2bb97bcb73281d34dbde4e2d.tar.gz
binaryen-f8e1622bf0835dec2bb97bcb73281d34dbde4e2d.tar.bz2
binaryen-f8e1622bf0835dec2bb97bcb73281d34dbde4e2d.zip
Use IRBuilder in the binary parser (#6963)
IRBuilder is a utility for turning arbitrary valid streams of Wasm instructions into valid Binaryen IR. It is already used in the text parser, so now use it in the binary parser as well. Since the IRBuilder API for building each intruction requires only the information that the binary and text formats include as immediates to that instruction, the parser is now much simpler than before. In particular, it does not need to manage a stack of instructions to figure out what the children of each expression should be; IRBuilder handles this instead. There are some differences between the IR constructed by IRBuilder and the IR the binary parser constructed before this change. Most importantly, IRBuilder generates better multivalue code because it avoids eagerly breaking up multivalue results into individual components that might need to be immediately reassembled into a tuple. It also parses try-delegate more correctly, allowing the delegate to target arbitrary labels, not just other `try`s. There are also a couple superficial differences in the generated label and scratch local names. As part of this change, add support for recording binary source locations in IRBuilder.
Diffstat (limited to 'test/passes')
-rw-r--r--test/passes/O.bin.txt8
-rw-r--r--test/passes/converge_O3_metrics.bin.txt36
-rw-r--r--test/passes/dce_vacuum_remove-unused-names.bin.txt12
-rw-r--r--test/passes/dwarf-local-order.bin.txt32
-rw-r--r--test/passes/dwarf_with_exceptions.bin.txt85
-rw-r--r--test/passes/fannkuch0_dwarf.bin.txt200
-rw-r--r--test/passes/fannkuch3_dwarf.bin.txt232
-rw-r--r--test/passes/fannkuch3_manyopts_dwarf.bin.txt194
-rw-r--r--test/passes/fib2_dwarf.bin.txt8
-rw-r--r--test/passes/fib2_emptylocspan_dwarf.bin.txt8
-rw-r--r--test/passes/fib_nonzero-low-pc_dwarf.bin.txt8
-rw-r--r--test/passes/flatten.bin.txt114
-rw-r--r--test/passes/print.bin.txt8
-rw-r--r--test/passes/print_g.bin.txt8
-rw-r--r--test/passes/print_g_metrics.bin.txt8
-rw-r--r--test/passes/print_g_strip-dwarf.bin.txt8
-rw-r--r--test/passes/reverse_dwarf_abbrevs.bin.txt921
17 files changed, 1012 insertions, 878 deletions
diff --git a/test/passes/O.bin.txt b/test/passes/O.bin.txt
index 3302ebcc7..fc4724490 100644
--- a/test/passes/O.bin.txt
+++ b/test/passes/O.bin.txt
@@ -55,7 +55,7 @@
(local.set $1
(i64.const 1)
)
- (loop $label$3
+ (loop $label
(if
(i32.eqz
(i64.eqz
@@ -75,7 +75,7 @@
(i64.const 1)
)
)
- (br $label$3)
+ (br $label)
)
)
)
@@ -92,14 +92,14 @@
(i64.const 2)
)
(then
- (loop $label$3
+ (loop $label
(local.set $1
(i64.mul
(local.get $0)
(local.get $1)
)
)
- (br_if $label$3
+ (br_if $label
(i64.gt_s
(local.tee $0
(i64.sub
diff --git a/test/passes/converge_O3_metrics.bin.txt b/test/passes/converge_O3_metrics.bin.txt
index 712172cc7..2d9ef8f57 100644
--- a/test/passes/converge_O3_metrics.bin.txt
+++ b/test/passes/converge_O3_metrics.bin.txt
@@ -59,8 +59,8 @@ total
(local.set $0
(i32.const 10888)
)
- (loop $label$3
- (br_if $label$3
+ (loop $label
+ (br_if $label
(i32.load8_s
(local.tee $0
(i32.add
@@ -94,8 +94,8 @@ total
)
)
(then
- (block $label$2
- (br_if $label$2
+ (block $block
+ (br_if $block
(call_indirect (type $0)
(local.get $1)
(i32.const 10888)
@@ -113,8 +113,8 @@ total
)
)
)
- (block $label$1
- (br_if $label$1
+ (block $block0
+ (br_if $block0
(if (result i32)
(i32.load
(i32.add
@@ -291,8 +291,8 @@ total
(local.set $0
(i32.const 10888)
)
- (loop $label$3
- (br_if $label$3
+ (loop $label
+ (br_if $label
(i32.load8_s
(local.tee $0
(i32.add
@@ -326,8 +326,8 @@ total
)
)
(then
- (block $label$2
- (br_if $label$2
+ (block $block
+ (br_if $block
(call_indirect (type $0)
(local.get $1)
(i32.const 10888)
@@ -345,8 +345,8 @@ total
)
)
)
- (block $label$1
- (br_if $label$1
+ (block $block0
+ (br_if $block0
(if (result i32)
(i32.load
(i32.add
@@ -518,8 +518,8 @@ total
(local.set $0
(i32.const 10888)
)
- (loop $label$3
- (br_if $label$3
+ (loop $label
+ (br_if $label
(i32.load8_s
(local.tee $0
(i32.add
@@ -553,8 +553,8 @@ total
)
)
(then
- (block $label$2
- (br_if $label$2
+ (block $block
+ (br_if $block
(call_indirect (type $0)
(local.get $1)
(i32.const 10888)
@@ -572,8 +572,8 @@ total
)
)
)
- (block $label$1
- (br_if $label$1
+ (block $block0
+ (br_if $block0
(if (result i32)
(i32.load
(i32.add
diff --git a/test/passes/dce_vacuum_remove-unused-names.bin.txt b/test/passes/dce_vacuum_remove-unused-names.bin.txt
index 8a01d2ee5..72bdb2a9c 100644
--- a/test/passes/dce_vacuum_remove-unused-names.bin.txt
+++ b/test/passes/dce_vacuum_remove-unused-names.bin.txt
@@ -4,8 +4,8 @@
(export "f32.compute_radix" (func $0))
(export "f64.compute_radix" (func $1))
(func $0 (param $0 f32) (param $1 f32) (result f32)
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(f32.eq
(f32.add
(f32.sub
@@ -45,8 +45,8 @@
)
)
(func $1 (param $0 f64) (param $1 f64) (result f64)
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(f64.eq
(f64.add
(f64.sub
@@ -67,8 +67,8 @@
)
)
)
- (loop $label$3
- (br_if $label$3
+ (loop $label1
+ (br_if $label1
(f64.ne
(f64.sub
(f64.sub
diff --git a/test/passes/dwarf-local-order.bin.txt b/test/passes/dwarf-local-order.bin.txt
index 509db04b1..8fc6cfbbe 100644
--- a/test/passes/dwarf-local-order.bin.txt
+++ b/test/passes/dwarf-local-order.bin.txt
@@ -122,9 +122,9 @@
(local.get $15)
)
)
- (block $label$1
- (block $label$2
- (br_if $label$2
+ (block $block1
+ (block $block
+ (br_if $block
(local.get $16)
)
(local.set $17
@@ -135,7 +135,7 @@
(local.set $18
(local.get $17)
)
- (br $label$1)
+ (br $block1)
)
(local.set $19
(i32.const -2147483648)
@@ -340,11 +340,11 @@
)
)
;; code offset: 0xa9
- (block $label$1
+ (block $block1
;; code offset: 0xab
- (block $label$2
+ (block $block
;; code offset: 0xaf
- (br_if $label$2
+ (br_if $block
;; code offset: 0xad
(local.get $16)
)
@@ -362,7 +362,7 @@
(local.get $17)
)
;; code offset: 0xba
- (br $label$1)
+ (br $block1)
)
;; code offset: 0xc3
(local.set $19
@@ -516,9 +516,9 @@
(local.get $7)
)
)
- (block $label$1
- (block $label$2
- (br_if $label$2
+ (block $block1
+ (block $block
+ (br_if $block
(local.get $8)
)
(local.set $9
@@ -529,7 +529,7 @@
(local.set $10
(local.get $9)
)
- (br $label$1)
+ (br $block1)
)
(local.set $11
(i32.const -2147483648)
@@ -671,9 +671,9 @@
(local.get $7)
)
)
- (block $label$1
- (block $label$2
- (br_if $label$2
+ (block $block1
+ (block $block
+ (br_if $block
(local.get $8)
)
(local.set $9
@@ -684,7 +684,7 @@
(local.set $10
(local.get $9)
)
- (br $label$1)
+ (br $block1)
)
(local.set $11
(i32.const -2147483648)
diff --git a/test/passes/dwarf_with_exceptions.bin.txt b/test/passes/dwarf_with_exceptions.bin.txt
index 8a70d511a..a4e3b5e61 100644
--- a/test/passes/dwarf_with_exceptions.bin.txt
+++ b/test/passes/dwarf_with_exceptions.bin.txt
@@ -20,8 +20,8 @@
;; code offset: 0x8
(global.get $__stack_pointer)
)
- ;; code offset: 0x10
- (try $label$9
+ ;; code offset: 0x18
+ (try
(do
;; code offset: 0x12
(call $foo\28\29)
@@ -45,8 +45,8 @@
(local.get $1)
)
)
- ;; code offset: 0x31
- (try $label$8
+ ;; code offset: 0x41
+ (try $label
(do
;; code offset: 0x33
(call $foo\28\29)
@@ -58,8 +58,8 @@
)
;; code offset: 0x41
(catch_all
- ;; code offset: 0x42
- (try $label$7
+ ;; code offset: 0x63
+ (try
(do
;; code offset: 0x44
(call $__cxa_end_catch)
@@ -92,7 +92,7 @@
)
)
;; code offset: 0x6c
- (rethrow $label$8)
+ (rethrow $label)
)
)
;; code offset: 0x6f
@@ -274,7 +274,7 @@ DWARF debug info
Contains section .debug_info (63 bytes)
Contains section .debug_abbrev (41 bytes)
-Contains section .debug_line (162 bytes)
+Contains section .debug_line (136 bytes)
Contains section .debug_str (178 bytes)
.debug_abbrev contents:
@@ -326,7 +326,7 @@ Abbrev table for offset: 0x00000000
.debug_line contents:
debug_line[0x00000000]
Line table prologue:
- total_length: 0x0000009e
+ total_length: 0x00000084
version: 4
prologue_length: 0x00000031
min_inst_length: 1
@@ -366,51 +366,36 @@ file_names[ 1]:
0x000000000000000e 4 5 1 0 0 is_stmt prologue_end
-0x00000052: 00 DW_LNE_set_address (0x0000000000000012)
-0x00000059: 03 DW_LNS_advance_line (5)
-0x0000005b: 05 DW_LNS_set_column (3)
-0x0000005d: 01 DW_LNS_copy
- 0x0000000000000012 5 3 1 0 0 is_stmt
-
-
-0x0000005e: 00 DW_LNE_set_address (0x000000000000001f)
-0x00000065: 03 DW_LNS_advance_line (6)
-0x00000067: 05 DW_LNS_set_column (5)
-0x00000069: 01 DW_LNS_copy
+0x00000052: 00 DW_LNE_set_address (0x000000000000001f)
+0x00000059: 03 DW_LNS_advance_line (6)
+0x0000005b: 01 DW_LNS_copy
0x000000000000001f 6 5 1 0 0 is_stmt
-0x0000006a: 00 DW_LNE_set_address (0x000000000000003e)
-0x00000071: 03 DW_LNS_advance_line (7)
-0x00000073: 05 DW_LNS_set_column (3)
-0x00000075: 06 DW_LNS_negate_stmt
-0x00000076: 01 DW_LNS_copy
+0x0000005c: 00 DW_LNE_set_address (0x000000000000003e)
+0x00000063: 03 DW_LNS_advance_line (7)
+0x00000065: 05 DW_LNS_set_column (3)
+0x00000067: 06 DW_LNS_negate_stmt
+0x00000068: 01 DW_LNS_copy
0x000000000000003e 7 3 1 0 0
-0x00000077: 00 DW_LNE_set_address (0x0000000000000041)
-0x0000007e: 01 DW_LNS_copy
+0x00000069: 00 DW_LNE_set_address (0x0000000000000041)
+0x00000070: 01 DW_LNS_copy
0x0000000000000041 7 3 1 0 0
-0x0000007f: 00 DW_LNE_set_address (0x0000000000000044)
-0x00000086: 03 DW_LNS_advance_line (8)
-0x00000088: 05 DW_LNS_set_column (1)
-0x0000008a: 06 DW_LNS_negate_stmt
-0x0000008b: 01 DW_LNS_copy
+0x00000071: 00 DW_LNE_set_address (0x0000000000000044)
+0x00000078: 03 DW_LNS_advance_line (8)
+0x0000007a: 05 DW_LNS_set_column (1)
+0x0000007c: 06 DW_LNS_negate_stmt
+0x0000007d: 01 DW_LNS_copy
0x0000000000000044 8 1 1 0 0 is_stmt
-0x0000008c: 00 DW_LNE_set_address (0x0000000000000045)
-0x00000093: 01 DW_LNS_copy
- 0x0000000000000045 8 1 1 0 0 is_stmt
-
-
-0x00000094: 00 DW_LNE_set_address (0x00000000ffffff64)
-0x0000009b: 03 DW_LNS_advance_line (7)
-0x0000009d: 05 DW_LNS_set_column (3)
-0x0000009f: 00 DW_LNE_end_sequence
- 0x00000000ffffff64 7 3 1 0 0 is_stmt end_sequence
+0x0000007e: 00 DW_LNE_set_address (0x0000000000000045)
+0x00000085: 00 DW_LNE_end_sequence
+ 0x0000000000000045 8 1 1 0 0 is_stmt end_sequence
.debug_str contents:
@@ -441,8 +426,8 @@ file_names[ 1]:
;; code offset: 0xa
(global.get $__stack_pointer)
)
- ;; code offset: 0xe
- (try $label$9
+ ;; code offset: 0x12
+ (try
(do
;; code offset: 0x10
(call $foo\28\29)
@@ -466,8 +451,8 @@ file_names[ 1]:
(local.get $1)
)
)
- ;; code offset: 0x1f
- (try $label$8
+ ;; code offset: 0x27
+ (try $label
(do
;; code offset: 0x21
(call $foo\28\29)
@@ -479,8 +464,8 @@ file_names[ 1]:
)
;; code offset: 0x27
(catch_all
- ;; code offset: 0x28
- (try $label$7
+ ;; code offset: 0x39
+ (try
(do
;; code offset: 0x2a
(call $__cxa_end_catch)
@@ -513,7 +498,7 @@ file_names[ 1]:
)
)
;; code offset: 0x3e
- (rethrow $label$8)
+ (rethrow $label)
)
)
;; code offset: 0x41
@@ -537,7 +522,7 @@ file_names[ 1]:
)
;; custom section ".debug_info", size 63
;; custom section ".debug_abbrev", size 41
- ;; custom section ".debug_line", size 162
+ ;; custom section ".debug_line", size 136
;; custom section ".debug_str", size 178
;; custom section "producers", size 134
;; features section: mutable-globals, sign-ext, exception-handling
diff --git a/test/passes/fannkuch0_dwarf.bin.txt b/test/passes/fannkuch0_dwarf.bin.txt
index bee23dc18..9e9bb8537 100644
--- a/test/passes/fannkuch0_dwarf.bin.txt
+++ b/test/passes/fannkuch0_dwarf.bin.txt
@@ -5658,9 +5658,9 @@ file_names[ 3]:
(local.get $4)
)
;; code offset: 0x29d
- (block $label$1
+ (block $block
;; code offset: 0x29f
- (loop $label$2
+ (loop $label
;; code offset: 0x2a6
(local.set $20
;; code offset: 0x2a3
@@ -5713,7 +5713,7 @@ file_names[ 3]:
)
)
;; code offset: 0x2cc
- (br_if $label$1
+ (br_if $block
;; code offset: 0x2cb
(i32.eqz
;; code offset: 0x2c9
@@ -5807,8 +5807,10 @@ file_names[ 3]:
(local.get $35)
)
;; code offset: 0x315
- (br $label$2)
+ (br $label)
)
+ ;; code offset: 0x318
+ (unreachable)
)
;; code offset: 0x31f
(local.set $36
@@ -5984,11 +5986,11 @@ file_names[ 3]:
(local.get $54)
)
;; code offset: 0x3a8
- (loop $label$3 (result i32)
+ (loop $label7 (result i32)
;; code offset: 0x3aa
- (block $label$4
+ (block $block1
;; code offset: 0x3ac
- (loop $label$5
+ (loop $label1
;; code offset: 0x3b0
(local.set $55
;; code offset: 0x3ae
@@ -6038,7 +6040,7 @@ file_names[ 3]:
)
)
;; code offset: 0x3d6
- (br_if $label$4
+ (br_if $block1
;; code offset: 0x3d5
(i32.eqz
;; code offset: 0x3d3
@@ -6147,8 +6149,10 @@ file_names[ 3]:
(local.get $72)
)
;; code offset: 0x42a
- (br $label$5)
+ (br $label1)
)
+ ;; code offset: 0x42d
+ (unreachable)
)
;; code offset: 0x434
(local.set $73
@@ -6167,9 +6171,9 @@ file_names[ 3]:
)
)
;; code offset: 0x43d
- (block $label$6
+ (block $block2
;; code offset: 0x442
- (br_if $label$6
+ (br_if $block2
;; code offset: 0x441
(i32.eqz
;; code offset: 0x43f
@@ -6299,7 +6303,7 @@ file_names[ 3]:
)
)
;; code offset: 0x4a5
- (br_if $label$6
+ (br_if $block2
;; code offset: 0x4a4
(i32.eqz
;; code offset: 0x4a2
@@ -6319,9 +6323,9 @@ file_names[ 3]:
(local.get $91)
)
;; code offset: 0x4b2
- (block $label$7
+ (block $block3
;; code offset: 0x4b4
- (loop $label$8
+ (loop $label2
;; code offset: 0x4bb
(local.set $92
;; code offset: 0x4b8
@@ -6374,7 +6378,7 @@ file_names[ 3]:
)
)
;; code offset: 0x4e1
- (br_if $label$7
+ (br_if $block3
;; code offset: 0x4e0
(i32.eqz
;; code offset: 0x4de
@@ -6509,8 +6513,10 @@ file_names[ 3]:
(local.get $112)
)
;; code offset: 0x54a
- (br $label$8)
+ (br $label2)
)
+ ;; code offset: 0x54d
+ (unreachable)
)
;; code offset: 0x551
(local.set $113
@@ -6548,7 +6554,7 @@ file_names[ 3]:
(local.get $115)
)
;; code offset: 0x56f
- (loop $label$9
+ (loop $label4
;; code offset: 0x573
(local.set $116
;; code offset: 0x571
@@ -6592,9 +6598,9 @@ file_names[ 3]:
(local.get $119)
)
;; code offset: 0x595
- (block $label$10
+ (block $block4
;; code offset: 0x597
- (loop $label$11
+ (loop $label3
;; code offset: 0x59e
(local.set $120
;; code offset: 0x59b
@@ -6647,7 +6653,7 @@ file_names[ 3]:
)
)
;; code offset: 0x5c4
- (br_if $label$10
+ (br_if $block4
;; code offset: 0x5c3
(i32.eqz
;; code offset: 0x5c1
@@ -6924,8 +6930,10 @@ file_names[ 3]:
(local.get $155)
)
;; code offset: 0x6da
- (br $label$11)
+ (br $label3)
)
+ ;; code offset: 0x6dd
+ (unreachable)
)
;; code offset: 0x6e4
(local.set $156
@@ -7093,7 +7101,7 @@ file_names[ 3]:
)
)
;; code offset: 0x78d
- (br_if $label$9
+ (br_if $label4
;; code offset: 0x78a
(local.get $172)
)
@@ -7150,9 +7158,9 @@ file_names[ 3]:
)
)
;; code offset: 0x7c5
- (block $label$12
+ (block $block5
;; code offset: 0x7cb
- (br_if $label$12
+ (br_if $block5
;; code offset: 0x7ca
(i32.eqz
;; code offset: 0x7c7
@@ -7177,7 +7185,7 @@ file_names[ 3]:
)
)
;; code offset: 0x7df
- (loop $label$13
+ (loop $label6
;; code offset: 0x7e6
(local.set $181
;; code offset: 0x7e3
@@ -7245,9 +7253,9 @@ file_names[ 3]:
)
)
;; code offset: 0x825
- (block $label$14
+ (block $block6
;; code offset: 0x82b
- (br_if $label$14
+ (br_if $block6
;; code offset: 0x82a
(i32.eqz
;; code offset: 0x827
@@ -7363,9 +7371,9 @@ file_names[ 3]:
(local.get $196)
)
;; code offset: 0x89b
- (block $label$15
+ (block $block7
;; code offset: 0x89d
- (loop $label$16
+ (loop $label5
;; code offset: 0x8a4
(local.set $199
;; code offset: 0x8a1
@@ -7418,7 +7426,7 @@ file_names[ 3]:
)
)
;; code offset: 0x8d8
- (br_if $label$15
+ (br_if $block7
;; code offset: 0x8d7
(i32.eqz
;; code offset: 0x8d4
@@ -7568,8 +7576,10 @@ file_names[ 3]:
(local.get $221)
)
;; code offset: 0x96c
- (br $label$16)
+ (br $label5)
)
+ ;; code offset: 0x96f
+ (unreachable)
)
;; code offset: 0x973
(local.set $222
@@ -7739,11 +7749,11 @@ file_names[ 3]:
)
)
;; code offset: 0xa1f
- (block $label$17
+ (block $block9
;; code offset: 0xa21
- (block $label$18
+ (block $block8
;; code offset: 0xa27
- (br_if $label$18
+ (br_if $block8
;; code offset: 0xa26
(i32.eqz
;; code offset: 0xa23
@@ -7751,7 +7761,7 @@ file_names[ 3]:
)
)
;; code offset: 0xa29
- (br $label$17)
+ (br $block9)
)
;; code offset: 0xa31
(local.set $242
@@ -7784,11 +7794,11 @@ file_names[ 3]:
(local.get $244)
)
;; code offset: 0xa4b
- (br $label$13)
+ (br $label6)
)
)
;; code offset: 0xa4f
- (br $label$3)
+ (br $label7)
)
)
(func $main (param $0 i32) (param $1 i32) (result i32)
@@ -7927,11 +7937,11 @@ file_names[ 3]:
)
)
;; code offset: 0xaed
- (block $label$1
+ (block $block1
;; code offset: 0xaef
- (block $label$2
+ (block $block
;; code offset: 0xaf4
- (br_if $label$2
+ (br_if $block
;; code offset: 0xaf3
(i32.eqz
;; code offset: 0xaf1
@@ -7968,7 +7978,7 @@ file_names[ 3]:
(local.get $15)
)
;; code offset: 0xb0e
- (br $label$1)
+ (br $block1)
)
;; code offset: 0xb13
(local.set $17
@@ -8042,11 +8052,11 @@ file_names[ 3]:
)
)
;; code offset: 0xb4a
- (block $label$3
+ (block $block3
;; code offset: 0xb4c
- (block $label$4
+ (block $block2
;; code offset: 0xb51
- (br_if $label$4
+ (br_if $block2
;; code offset: 0xb50
(i32.eqz
;; code offset: 0xb4e
@@ -8086,7 +8096,7 @@ file_names[ 3]:
(local.get $28)
)
;; code offset: 0xb6e
- (br $label$3)
+ (br $block3)
)
;; code offset: 0xb76
(local.set $29
@@ -8432,9 +8442,9 @@ file_names[ 3]:
(local.get $4)
)
;; code offset: 0xd66
- (block $label$1
+ (block $block
;; code offset: 0xd68
- (loop $label$2
+ (loop $label
;; code offset: 0xd6f
(local.set $6
;; code offset: 0xd6c
@@ -8502,7 +8512,7 @@ file_names[ 3]:
)
)
;; code offset: 0xda0
- (br_if $label$1
+ (br_if $block
;; code offset: 0xd9f
(i32.eqz
;; code offset: 0xd9d
@@ -8644,8 +8654,10 @@ file_names[ 3]:
(local.get $26)
)
;; code offset: 0xe19
- (br $label$2)
+ (br $label)
)
+ ;; code offset: 0xe1c
+ (unreachable)
)
;; code offset: 0xe20
(local.set $27
@@ -8736,9 +8748,9 @@ file_names[ 3]:
(local.get $27)
)
;; code offset: 0xe67
- (block $label$3
+ (block $block1
;; code offset: 0xe69
- (loop $label$4
+ (loop $label1
;; code offset: 0xe70
(local.set $36
;; code offset: 0xe6d
@@ -8791,7 +8803,7 @@ file_names[ 3]:
)
)
;; code offset: 0xe96
- (br_if $label$3
+ (br_if $block1
;; code offset: 0xe95
(i32.eqz
;; code offset: 0xe93
@@ -8885,8 +8897,10 @@ file_names[ 3]:
(local.get $51)
)
;; code offset: 0xedf
- (br $label$4)
+ (br $label1)
)
+ ;; code offset: 0xee2
+ (unreachable)
)
;; code offset: 0xee9
(local.set $52
@@ -8904,9 +8918,9 @@ file_names[ 3]:
(local.get $52)
)
;; code offset: 0xef2
- (block $label$5
+ (block $block5
;; code offset: 0xef4
- (loop $label$6
+ (loop $label6
;; code offset: 0xefb
(local.set $53
;; code offset: 0xef8
@@ -8916,11 +8930,11 @@ file_names[ 3]:
)
)
;; code offset: 0xefd
- (block $label$7
+ (block $block4
;; code offset: 0xeff
- (block $label$8
+ (block $block2
;; code offset: 0xf04
- (br_if $label$8
+ (br_if $block2
;; code offset: 0xf03
(i32.eqz
;; code offset: 0xf01
@@ -8940,9 +8954,9 @@ file_names[ 3]:
(local.get $54)
)
;; code offset: 0xf11
- (block $label$9
+ (block $block3
;; code offset: 0xf13
- (loop $label$10
+ (loop $label2
;; code offset: 0xf1a
(local.set $55
;; code offset: 0xf17
@@ -8995,7 +9009,7 @@ file_names[ 3]:
)
)
;; code offset: 0xf40
- (br_if $label$9
+ (br_if $block3
;; code offset: 0xf3f
(i32.eqz
;; code offset: 0xf3d
@@ -9119,8 +9133,10 @@ file_names[ 3]:
(local.get $73)
)
;; code offset: 0xfa0
- (br $label$10)
+ (br $label2)
)
+ ;; code offset: 0xfa3
+ (unreachable)
)
;; code offset: 0xfa8
(local.set $74
@@ -9173,15 +9189,15 @@ file_names[ 3]:
(local.get $78)
)
;; code offset: 0xfce
- (br $label$7)
+ (br $block4)
)
;; code offset: 0xfd1
- (br $label$5)
+ (br $block5)
)
;; code offset: 0xfd4
- (block $label$11
+ (block $block6
;; code offset: 0xfd6
- (loop $label$12
+ (loop $label3
;; code offset: 0xfda
(local.set $79
;; code offset: 0xfd8
@@ -9231,7 +9247,7 @@ file_names[ 3]:
)
)
;; code offset: 0x1000
- (br_if $label$11
+ (br_if $block6
;; code offset: 0xfff
(i32.eqz
;; code offset: 0xffd
@@ -9340,11 +9356,13 @@ file_names[ 3]:
(local.get $96)
)
;; code offset: 0x1054
- (br $label$12)
+ (br $label3)
)
+ ;; code offset: 0x1057
+ (unreachable)
)
;; code offset: 0x1059
- (loop $label$13
+ (loop $label5
;; code offset: 0x1060
(local.set $97
;; code offset: 0x105d
@@ -9397,9 +9415,9 @@ file_names[ 3]:
)
)
;; code offset: 0x1083
- (block $label$14
+ (block $block7
;; code offset: 0x1088
- (br_if $label$14
+ (br_if $block7
;; code offset: 0x1087
(i32.eqz
;; code offset: 0x1085
@@ -9407,7 +9425,7 @@ file_names[ 3]:
)
)
;; code offset: 0x108a
- (br $label$5)
+ (br $block5)
)
;; code offset: 0x108f
(local.set $104
@@ -9445,9 +9463,9 @@ file_names[ 3]:
(local.get $104)
)
;; code offset: 0x10ad
- (block $label$15
+ (block $block8
;; code offset: 0x10af
- (loop $label$16
+ (loop $label4
;; code offset: 0x10b6
(local.set $107
;; code offset: 0x10b3
@@ -9500,7 +9518,7 @@ file_names[ 3]:
)
)
;; code offset: 0x10dc
- (br_if $label$15
+ (br_if $block8
;; code offset: 0x10db
(i32.eqz
;; code offset: 0x10d9
@@ -9650,8 +9668,10 @@ file_names[ 3]:
(local.get $129)
)
;; code offset: 0x1154
- (br $label$16)
+ (br $label4)
)
+ ;; code offset: 0x1157
+ (unreachable)
)
;; code offset: 0x115b
(local.set $130
@@ -9821,11 +9841,11 @@ file_names[ 3]:
)
)
;; code offset: 0x1207
- (block $label$17
+ (block $block10
;; code offset: 0x1209
- (block $label$18
+ (block $block9
;; code offset: 0x120f
- (br_if $label$18
+ (br_if $block9
;; code offset: 0x120e
(i32.eqz
;; code offset: 0x120b
@@ -9833,7 +9853,7 @@ file_names[ 3]:
)
)
;; code offset: 0x1211
- (br $label$17)
+ (br $block10)
)
;; code offset: 0x1219
(local.set $150
@@ -9866,12 +9886,14 @@ file_names[ 3]:
(local.get $152)
)
;; code offset: 0x1233
- (br $label$13)
+ (br $label5)
)
)
;; code offset: 0x1237
- (br $label$6)
+ (br $label6)
)
+ ;; code offset: 0x123a
+ (unreachable)
)
;; code offset: 0x123e
(local.set $153
@@ -9912,9 +9934,9 @@ file_names[ 3]:
(local.get $153)
)
;; code offset: 0x1263
- (block $label$19
+ (block $block11
;; code offset: 0x1265
- (loop $label$20
+ (loop $label7
;; code offset: 0x1269
(local.set $156
;; code offset: 0x1267
@@ -9964,7 +9986,7 @@ file_names[ 3]:
)
)
;; code offset: 0x129d
- (br_if $label$19
+ (br_if $block11
;; code offset: 0x129c
(i32.eqz
;; code offset: 0x1299
@@ -10046,9 +10068,9 @@ file_names[ 3]:
)
)
;; code offset: 0x12ec
- (block $label$21
+ (block $block12
;; code offset: 0x12f2
- (br_if $label$21
+ (br_if $block12
;; code offset: 0x12f1
(i32.eqz
;; code offset: 0x12ee
@@ -10123,8 +10145,10 @@ file_names[ 3]:
(local.get $176)
)
;; code offset: 0x133b
- (br $label$20)
+ (br $label7)
)
+ ;; code offset: 0x133e
+ (unreachable)
)
;; code offset: 0x1345
(local.set $177
diff --git a/test/passes/fannkuch3_dwarf.bin.txt b/test/passes/fannkuch3_dwarf.bin.txt
index 74b6446a5..b2e61acfa 100644
--- a/test/passes/fannkuch3_dwarf.bin.txt
+++ b/test/passes/fannkuch3_dwarf.bin.txt
@@ -4873,13 +4873,13 @@ file_names[ 4]:
)
)
;; code offset: 0x47
- (block $label$1
+ (block $block5
;; code offset: 0x49
- (block $label$2
+ (block $block1
;; code offset: 0x4b
- (block $label$3
+ (block $block
;; code offset: 0x52
- (br_if $label$3
+ (br_if $block
;; code offset: 0x51
(i32.le_s
;; code offset: 0x4d
@@ -4889,7 +4889,7 @@ file_names[ 4]:
)
)
;; code offset: 0x54
- (loop $label$4
+ (loop $label
;; code offset: 0x60
(i32.store
;; code offset: 0x5d
@@ -4908,7 +4908,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x6d
- (br_if $label$4
+ (br_if $label
;; code offset: 0x6c
(i32.ne
;; code offset: 0x68
@@ -4983,7 +4983,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x9f
- (br_if $label$2
+ (br_if $block1
;; code offset: 0x9e
(i32.le_s
;; code offset: 0x9a
@@ -4993,11 +4993,11 @@ file_names[ 4]:
)
)
;; code offset: 0xa1
- (loop $label$5
+ (loop $label5
;; code offset: 0xa3
- (block $label$6
+ (block $block2
;; code offset: 0xaa
- (br_if $label$6
+ (br_if $block2
;; code offset: 0xa9
(i32.le_s
;; code offset: 0xa5
@@ -5007,7 +5007,7 @@ file_names[ 4]:
)
)
;; code offset: 0xac
- (loop $label$7
+ (loop $label1
;; code offset: 0xbd
(i32.store
;; code offset: 0xba
@@ -5049,16 +5049,16 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0xcd
- (br_if $label$7
+ (br_if $label1
;; code offset: 0xcb
(local.get $0)
)
)
)
;; code offset: 0xd1
- (block $label$8
+ (block $block3
;; code offset: 0xdb
- (br_if $label$8
+ (br_if $block3
;; code offset: 0xda
(i32.eqz
;; code offset: 0xd8
@@ -5072,7 +5072,7 @@ file_names[ 4]:
)
)
;; code offset: 0xe5
- (br_if $label$8
+ (br_if $block3
;; code offset: 0xe4
(i32.eq
;; code offset: 0xdf
@@ -5108,16 +5108,16 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0xfa
- (loop $label$9
+ (loop $label3
;; code offset: 0xfe
(local.set $13
;; code offset: 0xfc
(local.get $0)
)
;; code offset: 0x100
- (block $label$10
+ (block $block4
;; code offset: 0x107
- (br_if $label$10
+ (br_if $block4
;; code offset: 0x106
(i32.lt_s
;; code offset: 0x102
@@ -5142,7 +5142,7 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x114
- (loop $label$11
+ (loop $label2
;; code offset: 0x123
(local.set $15
;; code offset: 0x120
@@ -5195,7 +5195,7 @@ file_names[ 4]:
(local.get $15)
)
;; code offset: 0x14d
- (br_if $label$11
+ (br_if $label2
;; code offset: 0x14c
(i32.lt_s
;; code offset: 0x143
@@ -5266,7 +5266,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x174
- (br_if $label$9
+ (br_if $label3
;; code offset: 0x172
(local.get $1)
)
@@ -5290,7 +5290,7 @@ file_names[ 4]:
)
)
;; code offset: 0x189
- (br_if $label$1
+ (br_if $block5
;; code offset: 0x188
(i32.ge_s
;; code offset: 0x184
@@ -5300,16 +5300,16 @@ file_names[ 4]:
)
)
;; code offset: 0x18b
- (loop $label$12
+ (loop $label6
;; code offset: 0x18f
(local.set $1
;; code offset: 0x18d
(i32.const 0)
)
;; code offset: 0x191
- (block $label$13
+ (block $block6
;; code offset: 0x198
- (br_if $label$13
+ (br_if $block6
;; code offset: 0x197
(i32.le_s
;; code offset: 0x193
@@ -5319,7 +5319,7 @@ file_names[ 4]:
)
)
;; code offset: 0x19a
- (loop $label$14
+ (loop $label4
;; code offset: 0x1b4
(i32.store
;; code offset: 0x1a3
@@ -5359,7 +5359,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1bc
- (br_if $label$14
+ (br_if $label4
;; code offset: 0x1bb
(i32.ne
;; code offset: 0x1b7
@@ -5424,7 +5424,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1ed
- (br_if $label$5
+ (br_if $label5
;; code offset: 0x1ec
(i32.gt_s
;; code offset: 0x1e8
@@ -5434,7 +5434,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1f9
- (br_if $label$1
+ (br_if $block5
;; code offset: 0x1f8
(i32.eq
;; code offset: 0x1f4
@@ -5460,9 +5460,13 @@ file_names[ 4]:
)
)
;; code offset: 0x202
- (br $label$12)
+ (br $label6)
)
+ ;; code offset: 0x205
+ (unreachable)
)
+ ;; code offset: 0x207
+ (unreachable)
)
;; code offset: 0x21d
(i32.store
@@ -5522,11 +5526,11 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x234
- (loop $label$15
+ (loop $label11
;; code offset: 0x236
- (block $label$16
+ (block $block7
;; code offset: 0x23d
- (br_if $label$16
+ (br_if $block7
;; code offset: 0x23c
(i32.lt_s
;; code offset: 0x238
@@ -5536,7 +5540,7 @@ file_names[ 4]:
)
)
;; code offset: 0x23f
- (loop $label$17
+ (loop $label7
;; code offset: 0x250
(i32.store
;; code offset: 0x24d
@@ -5578,16 +5582,16 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x260
- (br_if $label$17
+ (br_if $label7
;; code offset: 0x25e
(local.get $0)
)
)
)
;; code offset: 0x264
- (block $label$18
+ (block $block8
;; code offset: 0x26e
- (br_if $label$18
+ (br_if $block8
;; code offset: 0x26d
(i32.eqz
;; code offset: 0x26b
@@ -5601,7 +5605,7 @@ file_names[ 4]:
)
)
;; code offset: 0x278
- (br_if $label$18
+ (br_if $block8
;; code offset: 0x277
(i32.eq
;; code offset: 0x272
@@ -5627,16 +5631,16 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x285
- (loop $label$19
+ (loop $label9
;; code offset: 0x289
(local.set $10
;; code offset: 0x287
(local.get $0)
)
;; code offset: 0x28b
- (block $label$20
+ (block $block9
;; code offset: 0x292
- (br_if $label$20
+ (br_if $block9
;; code offset: 0x291
(i32.lt_s
;; code offset: 0x28d
@@ -5661,7 +5665,7 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x29f
- (loop $label$21
+ (loop $label8
;; code offset: 0x2ae
(local.set $14
;; code offset: 0x2ab
@@ -5714,7 +5718,7 @@ file_names[ 4]:
(local.get $14)
)
;; code offset: 0x2d8
- (br_if $label$21
+ (br_if $label8
;; code offset: 0x2d7
(i32.lt_s
;; code offset: 0x2ce
@@ -5785,7 +5789,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x2ff
- (br_if $label$19
+ (br_if $label9
;; code offset: 0x2fd
(local.get $1)
)
@@ -5809,7 +5813,7 @@ file_names[ 4]:
)
)
;; code offset: 0x314
- (br_if $label$1
+ (br_if $block5
;; code offset: 0x313
(i32.ge_s
;; code offset: 0x30f
@@ -5819,16 +5823,16 @@ file_names[ 4]:
)
)
;; code offset: 0x316
- (loop $label$22
+ (loop $label12
;; code offset: 0x31a
(local.set $1
;; code offset: 0x318
(i32.const 0)
)
;; code offset: 0x31c
- (block $label$23
+ (block $block10
;; code offset: 0x323
- (br_if $label$23
+ (br_if $block10
;; code offset: 0x322
(i32.lt_s
;; code offset: 0x31e
@@ -5838,7 +5842,7 @@ file_names[ 4]:
)
)
;; code offset: 0x325
- (loop $label$24
+ (loop $label10
;; code offset: 0x33f
(i32.store
;; code offset: 0x32e
@@ -5878,7 +5882,7 @@ file_names[ 4]:
)
)
;; code offset: 0x347
- (br_if $label$24
+ (br_if $label10
;; code offset: 0x346
(i32.ne
;; code offset: 0x342
@@ -5943,7 +5947,7 @@ file_names[ 4]:
)
)
;; code offset: 0x378
- (br_if $label$15
+ (br_if $label11
;; code offset: 0x377
(i32.gt_s
;; code offset: 0x373
@@ -5953,7 +5957,7 @@ file_names[ 4]:
)
)
;; code offset: 0x384
- (br_if $label$1
+ (br_if $block5
;; code offset: 0x383
(i32.eq
;; code offset: 0x37f
@@ -5979,9 +5983,13 @@ file_names[ 4]:
)
)
;; code offset: 0x38d
- (br $label$22)
+ (br $label12)
)
+ ;; code offset: 0x390
+ (unreachable)
)
+ ;; code offset: 0x392
+ (unreachable)
)
;; code offset: 0x396
(call $free
@@ -6023,13 +6031,13 @@ file_names[ 4]:
)
)
;; code offset: 0x3bd
- (block $label$1
+ (block $block2
;; code offset: 0x3bf
- (block $label$2
+ (block $block1
;; code offset: 0x3c1
- (block $label$3
+ (block $block
;; code offset: 0x3c8
- (br_if $label$3
+ (br_if $block
;; code offset: 0x3c7
(i32.lt_s
;; code offset: 0x3c3
@@ -6044,7 +6052,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x3da
- (br_if $label$2
+ (br_if $block1
;; code offset: 0x3d9
(i32.gt_s
;; code offset: 0x3d5
@@ -6077,12 +6085,12 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x3e7
- (br $label$1)
+ (br $block2)
)
;; code offset: 0x3ea
- (block $label$4
+ (block $block3
;; code offset: 0x3f1
- (br_if $label$4
+ (br_if $block3
;; code offset: 0x3f0
(i32.eq
;; code offset: 0x3ec
@@ -6112,7 +6120,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x402
- (loop $label$5
+ (loop $label
;; code offset: 0x40c
(i32.store offset=8
;; code offset: 0x408
@@ -6146,7 +6154,7 @@ file_names[ 4]:
(local.get $3)
)
;; code offset: 0x42b
- (br_if $label$5
+ (br_if $label
;; code offset: 0x42a
(i32.ne
;; code offset: 0x426
@@ -6195,15 +6203,15 @@ file_names[ 4]:
)
)
;; code offset: 0x444
- (block $label$6
+ (block $block8
;; code offset: 0x446
- (block $label$7
+ (block $block6
;; code offset: 0x448
- (block $label$8
+ (block $block5
;; code offset: 0x44a
- (block $label$9
+ (block $block4
;; code offset: 0x451
- (br_if $label$9
+ (br_if $block4
;; code offset: 0x450
(i32.le_s
;; code offset: 0x44c
@@ -6213,7 +6221,7 @@ file_names[ 4]:
)
)
;; code offset: 0x453
- (loop $label$10
+ (loop $label1
;; code offset: 0x45f
(i32.store
;; code offset: 0x45c
@@ -6232,7 +6240,7 @@ file_names[ 4]:
(local.get $0)
)
;; code offset: 0x46c
- (br_if $label$10
+ (br_if $label1
;; code offset: 0x46b
(i32.ne
;; code offset: 0x467
@@ -6261,7 +6269,7 @@ file_names[ 4]:
(local.get $4)
)
;; code offset: 0x477
- (br $label$8)
+ (br $block5)
)
;; code offset: 0x47c
(local.set $7
@@ -6274,17 +6282,17 @@ file_names[ 4]:
(local.get $4)
)
;; code offset: 0x482
- (br $label$7)
+ (br $block6)
)
;; code offset: 0x485
- (loop $label$11
+ (loop $label6
;; code offset: 0x489
(local.set $0
;; code offset: 0x487
(i32.const 0)
)
;; code offset: 0x48b
- (loop $label$12
+ (loop $label2
;; code offset: 0x49d
(i32.store offset=16
;; code offset: 0x48d
@@ -6326,7 +6334,7 @@ file_names[ 4]:
)
)
;; code offset: 0x4b5
- (br_if $label$12
+ (br_if $label2
;; code offset: 0x4b4
(i32.ne
;; code offset: 0x4b0
@@ -6353,9 +6361,9 @@ file_names[ 4]:
)
)
;; code offset: 0x4bd
- (block $label$13
+ (block $block7
;; code offset: 0x4c4
- (br_if $label$13
+ (br_if $block7
;; code offset: 0x4c3
(i32.le_s
;; code offset: 0x4bf
@@ -6365,7 +6373,7 @@ file_names[ 4]:
)
)
;; code offset: 0x4c6
- (loop $label$14
+ (loop $label3
;; code offset: 0x4d7
(i32.store
;; code offset: 0x4d4
@@ -6407,14 +6415,14 @@ file_names[ 4]:
(local.get $0)
)
;; code offset: 0x4e7
- (br_if $label$14
+ (br_if $label3
;; code offset: 0x4e5
(local.get $8)
)
)
)
;; code offset: 0x4f0
- (br_if $label$6
+ (br_if $block8
;; code offset: 0x4ef
(i32.eq
;; code offset: 0x4eb
@@ -6434,7 +6442,7 @@ file_names[ 4]:
)
)
;; code offset: 0x4f9
- (loop $label$15
+ (loop $label5
;; code offset: 0x4fd
(local.set $0
;; code offset: 0x4fb
@@ -6449,9 +6457,9 @@ file_names[ 4]:
)
)
;; code offset: 0x506
- (block $label$16
+ (block $block9
;; code offset: 0x50d
- (br_if $label$16
+ (br_if $block9
;; code offset: 0x50c
(i32.le_s
;; code offset: 0x508
@@ -6461,7 +6469,7 @@ file_names[ 4]:
)
)
;; code offset: 0x50f
- (loop $label$17
+ (loop $label4
;; code offset: 0x529
(i32.store
;; code offset: 0x518
@@ -6501,7 +6509,7 @@ file_names[ 4]:
)
)
;; code offset: 0x531
- (br_if $label$17
+ (br_if $label4
;; code offset: 0x530
(i32.ne
;; code offset: 0x52c
@@ -6566,9 +6574,9 @@ file_names[ 4]:
)
)
;; code offset: 0x55d
- (block $label$18
+ (block $block10
;; code offset: 0x564
- (br_if $label$18
+ (br_if $block10
;; code offset: 0x563
(i32.gt_s
;; code offset: 0x55f
@@ -6578,7 +6586,7 @@ file_names[ 4]:
)
)
;; code offset: 0x570
- (br_if $label$15
+ (br_if $label5
;; code offset: 0x56f
(i32.ne
;; code offset: 0x56b
@@ -6596,11 +6604,11 @@ file_names[ 4]:
)
)
;; code offset: 0x572
- (br $label$6)
+ (br $block8)
)
)
;; code offset: 0x579
- (br_if $label$6
+ (br_if $block8
;; code offset: 0x578
(i32.eqz
;; code offset: 0x576
@@ -6608,11 +6616,13 @@ file_names[ 4]:
)
)
;; code offset: 0x57b
- (br $label$11)
+ (br $label6)
)
+ ;; code offset: 0x57e
+ (unreachable)
)
;; code offset: 0x580
- (loop $label$19
+ (loop $label10
;; code offset: 0x586
(drop
;; code offset: 0x584
@@ -6622,9 +6632,9 @@ file_names[ 4]:
)
)
;; code offset: 0x587
- (block $label$20
+ (block $block11
;; code offset: 0x58e
- (br_if $label$20
+ (br_if $block11
;; code offset: 0x58d
(i32.le_s
;; code offset: 0x589
@@ -6634,7 +6644,7 @@ file_names[ 4]:
)
)
;; code offset: 0x590
- (loop $label$21
+ (loop $label7
;; code offset: 0x5a1
(i32.store
;; code offset: 0x59e
@@ -6676,14 +6686,14 @@ file_names[ 4]:
(local.get $0)
)
;; code offset: 0x5b1
- (br_if $label$21
+ (br_if $label7
;; code offset: 0x5af
(local.get $8)
)
)
)
;; code offset: 0x5ba
- (br_if $label$6
+ (br_if $block8
;; code offset: 0x5b9
(i32.eq
;; code offset: 0x5b5
@@ -6703,7 +6713,7 @@ file_names[ 4]:
)
)
;; code offset: 0x5c3
- (loop $label$22
+ (loop $label9
;; code offset: 0x5ca
(local.set $8
;; code offset: 0x5c7
@@ -6718,9 +6728,9 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x5d0
- (block $label$23
+ (block $block12
;; code offset: 0x5d7
- (br_if $label$23
+ (br_if $block12
;; code offset: 0x5d6
(i32.lt_s
;; code offset: 0x5d2
@@ -6730,7 +6740,7 @@ file_names[ 4]:
)
)
;; code offset: 0x5d9
- (loop $label$24
+ (loop $label8
;; code offset: 0x5f3
(i32.store
;; code offset: 0x5e2
@@ -6770,7 +6780,7 @@ file_names[ 4]:
)
)
;; code offset: 0x5fb
- (br_if $label$24
+ (br_if $label8
;; code offset: 0x5fa
(i32.ne
;; code offset: 0x5f6
@@ -6835,9 +6845,9 @@ file_names[ 4]:
)
)
;; code offset: 0x627
- (block $label$25
+ (block $block13
;; code offset: 0x62e
- (br_if $label$25
+ (br_if $block13
;; code offset: 0x62d
(i32.gt_s
;; code offset: 0x629
@@ -6847,7 +6857,7 @@ file_names[ 4]:
)
)
;; code offset: 0x63a
- (br_if $label$22
+ (br_if $label9
;; code offset: 0x639
(i32.ne
;; code offset: 0x635
@@ -6865,11 +6875,11 @@ file_names[ 4]:
)
)
;; code offset: 0x63c
- (br $label$6)
+ (br $block8)
)
)
;; code offset: 0x642
- (br_if $label$19
+ (br_if $label10
;; code offset: 0x640
(local.get $7)
)
@@ -6896,9 +6906,9 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x656
- (block $label$26
+ (block $block14
;; code offset: 0x65b
- (br_if $label$26
+ (br_if $block14
;; code offset: 0x65a
(i32.eqz
;; code offset: 0x658
@@ -6911,7 +6921,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x661
- (loop $label$27
+ (loop $label11
;; code offset: 0x667
(local.set $1
;; code offset: 0x665
@@ -6956,7 +6966,7 @@ file_names[ 4]:
(local.get $6)
)
;; code offset: 0x686
- (br_if $label$27
+ (br_if $label11
;; code offset: 0x684
(local.get $6)
)
diff --git a/test/passes/fannkuch3_manyopts_dwarf.bin.txt b/test/passes/fannkuch3_manyopts_dwarf.bin.txt
index 3ffb81efe..6feceabff 100644
--- a/test/passes/fannkuch3_manyopts_dwarf.bin.txt
+++ b/test/passes/fannkuch3_manyopts_dwarf.bin.txt
@@ -4710,8 +4710,8 @@ file_names[ 4]:
(local $14 i32)
(local $15 i32)
(local $16 i32)
- (local $17 i32)
- (local $18 i32)
+ (local $scratch i32)
+ (local $scratch_18 i32)
;; code offset: 0x35
(local.set $3
;; code offset: 0x33
@@ -4751,9 +4751,9 @@ file_names[ 4]:
)
)
;; code offset: 0x43
- (block $label$1
+ (block $block2
;; code offset: 0x45
- (block $label$2
+ (block $block
;; code offset: 0x4c
(if
;; code offset: 0x4b
@@ -4765,7 +4765,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x4e
- (loop $label$4
+ (loop $label
;; code offset: 0x5a
(i32.store
;; code offset: 0x57
@@ -4784,7 +4784,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x67
- (br_if $label$4
+ (br_if $label
;; code offset: 0x66
(i32.ne
;; code offset: 0x62
@@ -4854,7 +4854,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x95
- (br_if $label$2
+ (br_if $block
;; code offset: 0x94
(i32.le_s
;; code offset: 0x90
@@ -4864,7 +4864,7 @@ file_names[ 4]:
)
)
;; code offset: 0x97
- (loop $label$5
+ (loop $label5
;; code offset: 0x9e
(if
;; code offset: 0x9d
@@ -4876,7 +4876,7 @@ file_names[ 4]:
)
(then
;; code offset: 0xa0
- (loop $label$7
+ (loop $label1
;; code offset: 0xb1
(i32.store
;; code offset: 0xae
@@ -4902,10 +4902,9 @@ file_names[ 4]:
;; code offset: 0xaf
(local.get $2)
)
- ;; code offset: 0xbd
- (br_if $label$7
+ (br_if $label1
(block (result i32)
- (local.set $17
+ (local.set $scratch
;; code offset: 0xb8
(i32.gt_s
;; code offset: 0xb4
@@ -4919,16 +4918,17 @@ file_names[ 4]:
;; code offset: 0xb9
(local.get $1)
)
- (local.get $17)
+ ;; code offset: 0xbd
+ (local.get $scratch)
)
)
)
)
)
;; code offset: 0xc1
- (block $label$8
+ (block $block1
;; code offset: 0xcb
- (br_if $label$8
+ (br_if $block1
;; code offset: 0xca
(i32.eqz
;; code offset: 0xc8
@@ -4942,7 +4942,7 @@ file_names[ 4]:
)
)
;; code offset: 0xd5
- (br_if $label$8
+ (br_if $block1
;; code offset: 0xd4
(i32.eq
;; code offset: 0xcf
@@ -4978,7 +4978,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0xea
- (loop $label$9
+ (loop $label3
;; code offset: 0xee
(local.set $16
;; code offset: 0xec
@@ -5010,7 +5010,7 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x102
- (loop $label$11
+ (loop $label2
;; code offset: 0x111
(local.set $15
;; code offset: 0x10e
@@ -5063,7 +5063,7 @@ file_names[ 4]:
(local.get $15)
)
;; code offset: 0x13b
- (br_if $label$11
+ (br_if $label2
;; code offset: 0x13a
(i32.lt_s
;; code offset: 0x131
@@ -5135,7 +5135,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x162
- (br_if $label$9
+ (br_if $label3
;; code offset: 0x160
(local.get $1)
)
@@ -5159,7 +5159,7 @@ file_names[ 4]:
)
)
;; code offset: 0x177
- (br_if $label$1
+ (br_if $block2
;; code offset: 0x176
(i32.ge_s
;; code offset: 0x172
@@ -5169,7 +5169,7 @@ file_names[ 4]:
)
)
;; code offset: 0x179
- (loop $label$12
+ (loop $label6
;; code offset: 0x17d
(local.set $1
;; code offset: 0x17b
@@ -5186,7 +5186,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x186
- (loop $label$14
+ (loop $label4
;; code offset: 0x1a0
(i32.store
;; code offset: 0x18f
@@ -5226,7 +5226,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1a8
- (br_if $label$14
+ (br_if $label4
;; code offset: 0x1a7
(i32.ne
;; code offset: 0x1a3
@@ -5292,7 +5292,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1d9
- (br_if $label$5
+ (br_if $label5
;; code offset: 0x1d8
(i32.gt_s
;; code offset: 0x1d4
@@ -5302,7 +5302,7 @@ file_names[ 4]:
)
)
;; code offset: 0x1e5
- (br_if $label$1
+ (br_if $block2
;; code offset: 0x1e4
(i32.eq
;; code offset: 0x1e0
@@ -5328,9 +5328,13 @@ file_names[ 4]:
)
)
;; code offset: 0x1ee
- (br $label$12)
+ (br $label6)
)
+ ;; code offset: 0x1f1
+ (unreachable)
)
+ ;; code offset: 0x1f3
+ (unreachable)
)
)
;; code offset: 0x209
@@ -5386,7 +5390,7 @@ file_names[ 4]:
)
)
;; code offset: 0x21c
- (loop $label$15
+ (loop $label11
;; code offset: 0x223
(if
;; code offset: 0x222
@@ -5398,7 +5402,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x225
- (loop $label$17
+ (loop $label7
;; code offset: 0x236
(i32.store
;; code offset: 0x233
@@ -5424,10 +5428,9 @@ file_names[ 4]:
;; code offset: 0x234
(local.get $2)
)
- ;; code offset: 0x242
- (br_if $label$17
+ (br_if $label7
(block (result i32)
- (local.set $18
+ (local.set $scratch_18
;; code offset: 0x23d
(i32.gt_s
;; code offset: 0x239
@@ -5441,16 +5444,17 @@ file_names[ 4]:
;; code offset: 0x23e
(local.get $1)
)
- (local.get $18)
+ ;; code offset: 0x242
+ (local.get $scratch_18)
)
)
)
)
)
;; code offset: 0x246
- (block $label$18
+ (block $block3
;; code offset: 0x250
- (br_if $label$18
+ (br_if $block3
;; code offset: 0x24f
(i32.eqz
;; code offset: 0x24d
@@ -5464,7 +5468,7 @@ file_names[ 4]:
)
)
;; code offset: 0x25a
- (br_if $label$18
+ (br_if $block3
;; code offset: 0x259
(i32.eq
;; code offset: 0x254
@@ -5490,7 +5494,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x267
- (loop $label$19
+ (loop $label9
;; code offset: 0x26b
(local.set $10
;; code offset: 0x269
@@ -5522,7 +5526,7 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x27f
- (loop $label$21
+ (loop $label8
;; code offset: 0x28e
(local.set $14
;; code offset: 0x28b
@@ -5575,7 +5579,7 @@ file_names[ 4]:
(local.get $14)
)
;; code offset: 0x2b8
- (br_if $label$21
+ (br_if $label8
;; code offset: 0x2b7
(i32.lt_s
;; code offset: 0x2ae
@@ -5647,7 +5651,7 @@ file_names[ 4]:
(local.get $1)
)
;; code offset: 0x2df
- (br_if $label$19
+ (br_if $label9
;; code offset: 0x2dd
(local.get $1)
)
@@ -5671,7 +5675,7 @@ file_names[ 4]:
)
)
;; code offset: 0x2f4
- (br_if $label$1
+ (br_if $block2
;; code offset: 0x2f3
(i32.ge_s
;; code offset: 0x2ef
@@ -5681,7 +5685,7 @@ file_names[ 4]:
)
)
;; code offset: 0x2f6
- (loop $label$22
+ (loop $label12
;; code offset: 0x2fa
(local.set $1
;; code offset: 0x2f8
@@ -5698,7 +5702,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x303
- (loop $label$24
+ (loop $label10
;; code offset: 0x31d
(i32.store
;; code offset: 0x30c
@@ -5738,7 +5742,7 @@ file_names[ 4]:
)
)
;; code offset: 0x325
- (br_if $label$24
+ (br_if $label10
;; code offset: 0x324
(i32.ne
;; code offset: 0x320
@@ -5804,7 +5808,7 @@ file_names[ 4]:
)
)
;; code offset: 0x356
- (br_if $label$15
+ (br_if $label11
;; code offset: 0x355
(i32.gt_s
;; code offset: 0x351
@@ -5814,7 +5818,7 @@ file_names[ 4]:
)
)
;; code offset: 0x362
- (br_if $label$1
+ (br_if $block2
;; code offset: 0x361
(i32.eq
;; code offset: 0x35d
@@ -5840,9 +5844,13 @@ file_names[ 4]:
)
)
;; code offset: 0x36b
- (br $label$22)
+ (br $label12)
)
+ ;; code offset: 0x36e
+ (unreachable)
)
+ ;; code offset: 0x370
+ (unreachable)
)
;; code offset: 0x374
(call $free
@@ -5870,8 +5878,8 @@ file_names[ 4]:
(local $6 i32)
(local $7 i32)
(local $8 i32)
- (local $9 i32)
- (local $10 i32)
+ (local $scratch i32)
+ (local $scratch_10 i32)
;; code offset: 0x399
(global.set $global$0
;; code offset: 0x397
@@ -5886,9 +5894,9 @@ file_names[ 4]:
)
)
;; code offset: 0x39b
- (block $label$1
+ (block $block1
;; code offset: 0x39d
- (block $label$2
+ (block $block
;; code offset: 0x3a4
(if
;; code offset: 0x3a3
@@ -5900,7 +5908,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x3b2
- (br_if $label$2
+ (br_if $block
;; code offset: 0x3b1
(i32.gt_s
;; code offset: 0x3ad
@@ -5934,7 +5942,7 @@ file_names[ 4]:
(i32.const 1)
)
;; code offset: 0x3bf
- (br $label$1)
+ (br $block1)
)
;; code offset: 0x3c7
(if
@@ -5967,7 +5975,7 @@ file_names[ 4]:
(i32.const 0)
)
;; code offset: 0x3d8
- (loop $label$5
+ (loop $label
;; code offset: 0x3e2
(i32.store offset=8
;; code offset: 0x3de
@@ -6001,7 +6009,7 @@ file_names[ 4]:
(local.get $4)
)
;; code offset: 0x401
- (br_if $label$5
+ (br_if $label
;; code offset: 0x400
(i32.ne
;; code offset: 0x3fc
@@ -6051,11 +6059,11 @@ file_names[ 4]:
)
)
;; code offset: 0x41a
- (block $label$6
+ (block $block4
;; code offset: 0x41c
- (block $label$7
+ (block $block3
;; code offset: 0x41e
- (block $label$8
+ (block $block2
;; code offset: 0x425
(if
;; code offset: 0x424
@@ -6067,7 +6075,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x427
- (loop $label$10
+ (loop $label1
;; code offset: 0x433
(i32.store
;; code offset: 0x430
@@ -6086,7 +6094,7 @@ file_names[ 4]:
(local.get $0)
)
;; code offset: 0x440
- (br_if $label$10
+ (br_if $label1
;; code offset: 0x43f
(i32.ne
;; code offset: 0x43b
@@ -6115,7 +6123,7 @@ file_names[ 4]:
(local.get $3)
)
;; code offset: 0x44b
- (br $label$8)
+ (br $block2)
)
)
;; code offset: 0x450
@@ -6129,17 +6137,17 @@ file_names[ 4]:
(local.get $3)
)
;; code offset: 0x456
- (br $label$7)
+ (br $block3)
)
;; code offset: 0x459
- (loop $label$11
+ (loop $label6
;; code offset: 0x45d
(local.set $0
;; code offset: 0x45b
(i32.const 0)
)
;; code offset: 0x45f
- (loop $label$12
+ (loop $label2
;; code offset: 0x471
(i32.store offset=16
;; code offset: 0x461
@@ -6181,7 +6189,7 @@ file_names[ 4]:
)
)
;; code offset: 0x489
- (br_if $label$12
+ (br_if $label2
;; code offset: 0x488
(i32.ne
;; code offset: 0x484
@@ -6218,7 +6226,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x498
- (loop $label$14
+ (loop $label3
;; code offset: 0x4a9
(i32.store
;; code offset: 0x4a6
@@ -6244,10 +6252,9 @@ file_names[ 4]:
;; code offset: 0x4a7
(local.get $2)
)
- ;; code offset: 0x4b5
- (br_if $label$14
+ (br_if $label3
(block (result i32)
- (local.set $9
+ (local.set $scratch
;; code offset: 0x4b0
(i32.gt_s
;; code offset: 0x4ac
@@ -6261,14 +6268,15 @@ file_names[ 4]:
;; code offset: 0x4b1
(local.get $0)
)
- (local.get $9)
+ ;; code offset: 0x4b5
+ (local.get $scratch)
)
)
)
)
)
;; code offset: 0x4be
- (br_if $label$6
+ (br_if $block4
;; code offset: 0x4bd
(i32.eq
;; code offset: 0x4b9
@@ -6288,7 +6296,7 @@ file_names[ 4]:
)
)
;; code offset: 0x4c7
- (loop $label$15
+ (loop $label5
;; code offset: 0x4cb
(local.set $0
;; code offset: 0x4c9
@@ -6313,7 +6321,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x4db
- (loop $label$17
+ (loop $label4
;; code offset: 0x4f5
(i32.store
;; code offset: 0x4e4
@@ -6353,7 +6361,7 @@ file_names[ 4]:
)
)
;; code offset: 0x4fd
- (br_if $label$17
+ (br_if $label4
;; code offset: 0x4fc
(i32.ne
;; code offset: 0x4f8
@@ -6429,7 +6437,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x53a
- (br_if $label$15
+ (br_if $label5
;; code offset: 0x539
(i32.ne
;; code offset: 0x535
@@ -6447,21 +6455,21 @@ file_names[ 4]:
)
)
;; code offset: 0x53c
- (br $label$6)
+ (br $block4)
)
)
)
;; code offset: 0x542
- (br_if $label$11
+ (br_if $label6
;; code offset: 0x540
(local.get $6)
)
)
;; code offset: 0x545
- (br $label$6)
+ (br $block4)
)
;; code offset: 0x548
- (loop $label$19
+ (loop $label10
;; code offset: 0x54e
(drop
;; code offset: 0x54c
@@ -6481,7 +6489,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x556
- (loop $label$21
+ (loop $label7
;; code offset: 0x567
(i32.store
;; code offset: 0x564
@@ -6507,10 +6515,9 @@ file_names[ 4]:
;; code offset: 0x565
(local.get $2)
)
- ;; code offset: 0x573
- (br_if $label$21
+ (br_if $label7
(block (result i32)
- (local.set $10
+ (local.set $scratch_10
;; code offset: 0x56e
(i32.gt_s
;; code offset: 0x56a
@@ -6524,14 +6531,15 @@ file_names[ 4]:
;; code offset: 0x56f
(local.get $0)
)
- (local.get $10)
+ ;; code offset: 0x573
+ (local.get $scratch_10)
)
)
)
)
)
;; code offset: 0x57c
- (br_if $label$6
+ (br_if $block4
;; code offset: 0x57b
(i32.eq
;; code offset: 0x577
@@ -6551,7 +6559,7 @@ file_names[ 4]:
)
)
;; code offset: 0x585
- (loop $label$22
+ (loop $label9
;; code offset: 0x58c
(local.set $7
;; code offset: 0x589
@@ -6576,7 +6584,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x599
- (loop $label$24
+ (loop $label8
;; code offset: 0x5b3
(i32.store
;; code offset: 0x5a2
@@ -6616,7 +6624,7 @@ file_names[ 4]:
)
)
;; code offset: 0x5bb
- (br_if $label$24
+ (br_if $label8
;; code offset: 0x5ba
(i32.ne
;; code offset: 0x5b6
@@ -6692,7 +6700,7 @@ file_names[ 4]:
)
(then
;; code offset: 0x5f8
- (br_if $label$22
+ (br_if $label9
;; code offset: 0x5f7
(i32.ne
;; code offset: 0x5f3
@@ -6710,12 +6718,12 @@ file_names[ 4]:
)
)
;; code offset: 0x5fa
- (br $label$6)
+ (br $block4)
)
)
)
;; code offset: 0x600
- (br_if $label$19
+ (br_if $label10
;; code offset: 0x5fe
(local.get $6)
)
@@ -6747,7 +6755,7 @@ file_names[ 4]:
(local.get $4)
(then
;; code offset: 0x618
- (loop $label$27
+ (loop $label11
;; code offset: 0x61e
(local.set $1
;; code offset: 0x61c
@@ -6792,7 +6800,7 @@ file_names[ 4]:
(local.get $2)
)
;; code offset: 0x63d
- (br_if $label$27
+ (br_if $label11
;; code offset: 0x63b
(local.get $2)
)
diff --git a/test/passes/fib2_dwarf.bin.txt b/test/passes/fib2_dwarf.bin.txt
index 9d633f78b..37c49c336 100644
--- a/test/passes/fib2_dwarf.bin.txt
+++ b/test/passes/fib2_dwarf.bin.txt
@@ -637,9 +637,9 @@ file_names[ 1]:
(i32.const 1)
)
;; code offset: 0x12
- (block $label$1
+ (block $block
;; code offset: 0x19
- (br_if $label$1
+ (br_if $block
;; code offset: 0x18
(i32.lt_s
;; code offset: 0x14
@@ -659,7 +659,7 @@ file_names[ 1]:
(i32.const 0)
)
;; code offset: 0x23
- (loop $label$2
+ (loop $label
;; code offset: 0x2c
(local.set $1
;; code offset: 0x2b
@@ -679,7 +679,7 @@ file_names[ 1]:
(local.get $4)
)
;; code offset: 0x3c
- (br_if $label$2
+ (br_if $label
;; code offset: 0x3b
(i32.ne
;; code offset: 0x37
diff --git a/test/passes/fib2_emptylocspan_dwarf.bin.txt b/test/passes/fib2_emptylocspan_dwarf.bin.txt
index 6d9078ccc..e59fe19bb 100644
--- a/test/passes/fib2_emptylocspan_dwarf.bin.txt
+++ b/test/passes/fib2_emptylocspan_dwarf.bin.txt
@@ -637,9 +637,9 @@ file_names[ 1]:
(i32.const 1)
)
;; code offset: 0x12
- (block $label$1
+ (block $block
;; code offset: 0x19
- (br_if $label$1
+ (br_if $block
;; code offset: 0x18
(i32.lt_s
;; code offset: 0x14
@@ -659,7 +659,7 @@ file_names[ 1]:
(i32.const 0)
)
;; code offset: 0x23
- (loop $label$2
+ (loop $label
;; code offset: 0x2c
(local.set $1
;; code offset: 0x2b
@@ -679,7 +679,7 @@ file_names[ 1]:
(local.get $4)
)
;; code offset: 0x3c
- (br_if $label$2
+ (br_if $label
;; code offset: 0x3b
(i32.ne
;; code offset: 0x37
diff --git a/test/passes/fib_nonzero-low-pc_dwarf.bin.txt b/test/passes/fib_nonzero-low-pc_dwarf.bin.txt
index 8d1c7faa8..a9294f7e1 100644
--- a/test/passes/fib_nonzero-low-pc_dwarf.bin.txt
+++ b/test/passes/fib_nonzero-low-pc_dwarf.bin.txt
@@ -539,9 +539,9 @@ file_names[ 1]:
(i32.const 1)
)
;; code offset: 0x19
- (block $label$1
+ (block $block
;; code offset: 0x20
- (br_if $label$1
+ (br_if $block
;; code offset: 0x1f
(i32.le_s
;; code offset: 0x1b
@@ -561,7 +561,7 @@ file_names[ 1]:
(i32.const 1)
)
;; code offset: 0x2a
- (loop $label$2
+ (loop $label
;; code offset: 0x33
(local.set $1
;; code offset: 0x32
@@ -601,7 +601,7 @@ file_names[ 1]:
(local.get $4)
)
;; code offset: 0x4a
- (br_if $label$2
+ (br_if $label
;; code offset: 0x49
(i32.eqz
;; code offset: 0x47
diff --git a/test/passes/flatten.bin.txt b/test/passes/flatten.bin.txt
index 53fbcc397..680f2c393 100644
--- a/test/passes/flatten.bin.txt
+++ b/test/passes/flatten.bin.txt
@@ -100,10 +100,120 @@
(local $6 i64)
(local $7 f32)
(local $8 f64)
- (block $label$1
+ (local $9 f32)
+ (local $10 f32)
+ (local $11 f64)
+ (local $12 f64)
+ (local $13 i32)
+ (local $14 i32)
+ (local $15 i32)
+ (local $16 i32)
+ (local $17 f32)
+ (local $18 f32)
+ (local $19 i64)
+ (local $20 i32)
+ (local $21 i64)
+ (local $22 i32)
+ (local $23 f64)
+ (local $24 f64)
+ (block
(nop)
(unreachable)
+ (i64.eqz
+ (unreachable)
+ )
+ (drop
+ (unreachable)
+ )
(unreachable)
+ (local.set $9
+ (local.get $1)
+ )
+ (local.set $10
+ (f32.neg
+ (local.get $9)
+ )
+ )
+ (drop
+ (local.get $10)
+ )
+ (local.set $11
+ (local.get $2)
+ )
+ (local.set $12
+ (f64.neg
+ (local.get $11)
+ )
+ )
+ (drop
+ (local.get $12)
+ )
+ (local.set $13
+ (local.get $3)
+ )
+ (local.set $14
+ (i32.eqz
+ (local.get $13)
+ )
+ )
+ (drop
+ (local.get $14)
+ )
+ (local.set $15
+ (local.get $4)
+ )
+ (local.set $16
+ (i32.eqz
+ (local.get $15)
+ )
+ )
+ (drop
+ (local.get $16)
+ )
+ (local.set $17
+ (local.get $7)
+ )
+ (local.set $18
+ (f32.neg
+ (local.get $17)
+ )
+ )
+ (drop
+ (local.get $18)
+ )
+ (local.set $19
+ (local.get $5)
+ )
+ (local.set $20
+ (i64.eqz
+ (local.get $19)
+ )
+ )
+ (drop
+ (local.get $20)
+ )
+ (local.set $21
+ (local.get $6)
+ )
+ (local.set $22
+ (i64.eqz
+ (local.get $21)
+ )
+ )
+ (drop
+ (local.get $22)
+ )
+ (local.set $23
+ (local.get $8)
+ )
+ (local.set $24
+ (f64.neg
+ (local.get $23)
+ )
+ )
+ (drop
+ (local.get $24)
+ )
)
(unreachable)
)
@@ -138,7 +248,7 @@
(local $32 f64)
(local $33 f64)
(local $34 f64)
- (block $label$1
+ (block
(local.set $7
(f32.const 5.5)
)
diff --git a/test/passes/print.bin.txt b/test/passes/print.bin.txt
index 25b2cc387..f54f883d1 100644
--- a/test/passes/print.bin.txt
+++ b/test/passes/print.bin.txt
@@ -27,8 +27,8 @@
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
@@ -120,8 +120,8 @@
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
diff --git a/test/passes/print_g.bin.txt b/test/passes/print_g.bin.txt
index 174230388..f9a2ac67b 100644
--- a/test/passes/print_g.bin.txt
+++ b/test/passes/print_g.bin.txt
@@ -35,9 +35,9 @@
)
(then
;; code offset: 0x12
- (loop $label$2
+ (loop $label
;; code offset: 0x2e
- (br_if $label$2
+ (br_if $label
;; code offset: 0x2d
(i32.ne
;; code offset: 0x2a
@@ -167,9 +167,9 @@
)
(then
;; code offset: 0x12
- (loop $label$2
+ (loop $label
;; code offset: 0x2e
- (br_if $label$2
+ (br_if $label
;; code offset: 0x2d
(i32.ne
;; code offset: 0x2a
diff --git a/test/passes/print_g_metrics.bin.txt b/test/passes/print_g_metrics.bin.txt
index 2acec546f..084dd6256 100644
--- a/test/passes/print_g_metrics.bin.txt
+++ b/test/passes/print_g_metrics.bin.txt
@@ -30,8 +30,8 @@
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
@@ -120,8 +120,8 @@ total
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
diff --git a/test/passes/print_g_strip-dwarf.bin.txt b/test/passes/print_g_strip-dwarf.bin.txt
index 967e03f3d..e9b36b975 100644
--- a/test/passes/print_g_strip-dwarf.bin.txt
+++ b/test/passes/print_g_strip-dwarf.bin.txt
@@ -27,8 +27,8 @@
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
@@ -120,8 +120,8 @@
(i32.const 55)
)
(then
- (loop $label$2
- (br_if $label$2
+ (loop $label
+ (br_if $label
(i32.ne
(i32.rem_s
(local.tee $0
diff --git a/test/passes/reverse_dwarf_abbrevs.bin.txt b/test/passes/reverse_dwarf_abbrevs.bin.txt
index 5427acc6c..7b3a5aaad 100644
--- a/test/passes/reverse_dwarf_abbrevs.bin.txt
+++ b/test/passes/reverse_dwarf_abbrevs.bin.txt
@@ -292,11 +292,11 @@ file_names[ 1]:
;; code offset: 0x18d
(local.set $4
;; code offset: 0x89
- (block $label$1 (result i32)
+ (block $block2 (result i32)
;; code offset: 0x8b
- (block $label$2
+ (block $block1
;; code offset: 0x8d
- (block $label$3
+ (block $block
;; code offset: 0xa5
(if
;; code offset: 0xa4
@@ -331,9 +331,9 @@ file_names[ 1]:
)
(then
;; code offset: 0xa7
- (loop $label$5
+ (loop $label
;; code offset: 0xb3
- (br_if $label$3
+ (br_if $block
;; code offset: 0xb2
(i32.eq
;; code offset: 0xa9
@@ -349,7 +349,7 @@ file_names[ 1]:
)
)
;; code offset: 0xba
- (br_if $label$2
+ (br_if $block1
;; code offset: 0xb9
(i32.le_s
;; code offset: 0xb5
@@ -456,7 +456,7 @@ file_names[ 1]:
)
)
;; code offset: 0x125
- (br_if $label$5
+ (br_if $label
;; code offset: 0x124
(i32.eqz
;; code offset: 0x122
@@ -517,7 +517,7 @@ file_names[ 1]:
(i32.const -1)
)
;; code offset: 0x135
- (br_if $label$2
+ (br_if $block1
;; code offset: 0x134
(i32.ne
;; code offset: 0x130
@@ -563,7 +563,7 @@ file_names[ 1]:
)
)
;; code offset: 0x15a
- (br $label$1
+ (br $block2
;; code offset: 0x158
(local.get $2)
)
@@ -600,7 +600,7 @@ file_names[ 1]:
;; code offset: 0x183
(drop
;; code offset: 0x181
- (br_if $label$1
+ (br_if $block2
;; code offset: 0x17a
(local.tee $4
;; code offset: 0x178
@@ -797,7 +797,7 @@ file_names[ 1]:
)
)
;; code offset: 0x222
- (block $label$2
+ (block $block2
;; code offset: 0x22d
(if
;; code offset: 0x22c
@@ -817,7 +817,7 @@ file_names[ 1]:
)
(then
;; code offset: 0x22f
- (block $label$4
+ (block $block
;; code offset: 0x236
(if
;; code offset: 0x235
@@ -834,7 +834,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x23c
- (br $label$4)
+ (br $block)
)
)
;; code offset: 0x245
@@ -856,7 +856,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x24b
- (br $label$4)
+ (br $block)
)
)
;; code offset: 0x250
@@ -865,7 +865,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x252
- (loop $label$7
+ (loop $label
;; code offset: 0x25b
(i32.store8
;; code offset: 0x254
@@ -887,7 +887,7 @@ file_names[ 1]:
)
)
;; code offset: 0x26f
- (br_if $label$4
+ (br_if $block
;; code offset: 0x26e
(i32.ge_u
;; code offset: 0x26a
@@ -905,7 +905,7 @@ file_names[ 1]:
)
)
;; code offset: 0x276
- (br_if $label$7
+ (br_if $label
;; code offset: 0x275
(i32.and
;; code offset: 0x271
@@ -917,9 +917,9 @@ file_names[ 1]:
)
)
;; code offset: 0x27a
- (block $label$8
+ (block $block1
;; code offset: 0x287
- (br_if $label$8
+ (br_if $block1
;; code offset: 0x286
(i32.lt_u
;; code offset: 0x281
@@ -937,7 +937,7 @@ file_names[ 1]:
)
)
;; code offset: 0x293
- (br_if $label$8
+ (br_if $block1
;; code offset: 0x292
(i32.gt_u
;; code offset: 0x289
@@ -955,7 +955,7 @@ file_names[ 1]:
)
)
;; code offset: 0x295
- (loop $label$9
+ (loop $label1
;; code offset: 0x29e
(i32.store
;; code offset: 0x297
@@ -1127,7 +1127,7 @@ file_names[ 1]:
)
)
;; code offset: 0x348
- (br_if $label$9
+ (br_if $label1
;; code offset: 0x347
(i32.le_u
;; code offset: 0x343
@@ -1147,7 +1147,7 @@ file_names[ 1]:
)
)
;; code offset: 0x351
- (br_if $label$2
+ (br_if $block2
;; code offset: 0x350
(i32.ge_u
;; code offset: 0x34c
@@ -1157,7 +1157,7 @@ file_names[ 1]:
)
)
;; code offset: 0x353
- (loop $label$10
+ (loop $label2
;; code offset: 0x35c
(i32.store
;; code offset: 0x355
@@ -1179,7 +1179,7 @@ file_names[ 1]:
)
)
;; code offset: 0x370
- (br_if $label$10
+ (br_if $label2
;; code offset: 0x36f
(i32.lt_u
;; code offset: 0x36b
@@ -1198,7 +1198,7 @@ file_names[ 1]:
)
)
;; code offset: 0x373
- (br $label$2)
+ (br $block2)
)
)
;; code offset: 0x37b
@@ -1217,7 +1217,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x381
- (br $label$2)
+ (br $block2)
)
)
;; code offset: 0x38e
@@ -1244,7 +1244,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x394
- (br $label$2)
+ (br $block2)
)
)
;; code offset: 0x399
@@ -1253,7 +1253,7 @@ file_names[ 1]:
(local.get $0)
)
;; code offset: 0x39b
- (loop $label$13
+ (loop $label3
;; code offset: 0x3a4
(i32.store8
;; code offset: 0x39d
@@ -1305,7 +1305,7 @@ file_names[ 1]:
)
)
;; code offset: 0x3d6
- (br_if $label$13
+ (br_if $label3
;; code offset: 0x3d5
(i32.le_u
;; code offset: 0x3d1
@@ -1335,7 +1335,7 @@ file_names[ 1]:
)
(then
;; code offset: 0x3e1
- (loop $label$15
+ (loop $label4
;; code offset: 0x3ea
(i32.store8
;; code offset: 0x3e3
@@ -1357,7 +1357,7 @@ file_names[ 1]:
)
)
;; code offset: 0x3fe
- (br_if $label$15
+ (br_if $label4
;; code offset: 0x3fd
(i32.ne
;; code offset: 0x3f9
@@ -1386,380 +1386,377 @@ file_names[ 1]:
(local $5 i32)
(local $6 i32)
;; code offset: 0x410
- (block $label$1
- ;; code offset: 0x43a
+ (block $block
+ ;; code offset: 0x41a
(if
- ;; code offset: 0x412
- (block $label$2 (result i32)
- ;; code offset: 0x41c
- (if
- ;; code offset: 0x41b
- (i32.eqz
- ;; code offset: 0x419
- (local.tee $3
- ;; code offset: 0x416
- (i32.load offset=16
- ;; code offset: 0x414
- (local.get $2)
- )
- )
+ ;; code offset: 0x419
+ (i32.eqz
+ ;; code offset: 0x417
+ (local.tee $3
+ ;; code offset: 0x414
+ (i32.load offset=16
+ ;; code offset: 0x412
+ (local.get $2)
+ )
+ )
+ )
+ (then
+ ;; code offset: 0x420
+ (br_if $block
+ ;; code offset: 0x41e
+ (call $8
+ ;; code offset: 0x41c
+ (local.get $2)
)
- (then
+ )
+ ;; code offset: 0x427
+ (local.set $3
+ ;; code offset: 0x424
+ (i32.load offset=16
;; code offset: 0x422
- (br_if $label$1
- ;; code offset: 0x420
- (call $8
- ;; code offset: 0x41e
- (local.get $2)
- )
- )
- ;; code offset: 0x429
- (local.set $3
- ;; code offset: 0x426
- (i32.load offset=16
- ;; code offset: 0x424
- (local.get $2)
- )
- )
+ (local.get $2)
)
)
- ;; code offset: 0x438
- (i32.lt_u
- ;; code offset: 0x435
- (i32.sub
- ;; code offset: 0x42c
- (local.get $3)
- ;; code offset: 0x433
- (local.tee $5
- ;; code offset: 0x430
- (i32.load offset=20
- ;; code offset: 0x42e
- (local.get $2)
- )
+ )
+ )
+ ;; code offset: 0x437
+ (if
+ ;; code offset: 0x436
+ (i32.lt_u
+ ;; code offset: 0x433
+ (i32.sub
+ ;; code offset: 0x42a
+ (local.get $3)
+ ;; code offset: 0x431
+ (local.tee $5
+ ;; code offset: 0x42e
+ (i32.load offset=20
+ ;; code offset: 0x42c
+ (local.get $2)
)
)
- ;; code offset: 0x436
- (local.get $1)
)
+ ;; code offset: 0x434
+ (local.get $1)
)
(then
- ;; code offset: 0x44a
+ ;; code offset: 0x447
(return
- ;; code offset: 0x447
+ ;; code offset: 0x444
(call_indirect (type $1)
- ;; code offset: 0x43c
+ ;; code offset: 0x439
(local.get $2)
- ;; code offset: 0x43e
+ ;; code offset: 0x43b
(local.get $0)
- ;; code offset: 0x440
+ ;; code offset: 0x43d
(local.get $1)
- ;; code offset: 0x444
+ ;; code offset: 0x441
(i32.load offset=36
- ;; code offset: 0x442
+ ;; code offset: 0x43f
(local.get $2)
)
)
)
)
)
- ;; code offset: 0x44c
- (block $label$5
- ;; code offset: 0x456
- (br_if $label$5
- ;; code offset: 0x455
+ ;; code offset: 0x449
+ (block $block1
+ ;; code offset: 0x453
+ (br_if $block1
+ ;; code offset: 0x452
(i32.lt_s
- ;; code offset: 0x450
+ ;; code offset: 0x44d
(i32.load8_s offset=75
- ;; code offset: 0x44e
+ ;; code offset: 0x44b
(local.get $2)
)
- ;; code offset: 0x453
+ ;; code offset: 0x450
(i32.const 0)
)
)
- ;; code offset: 0x45a
+ ;; code offset: 0x457
(local.set $4
- ;; code offset: 0x458
+ ;; code offset: 0x455
(local.get $1)
)
- ;; code offset: 0x45c
- (loop $label$6
- ;; code offset: 0x463
- (br_if $label$5
- ;; code offset: 0x462
+ ;; code offset: 0x459
+ (loop $label
+ ;; code offset: 0x460
+ (br_if $block1
+ ;; code offset: 0x45f
(i32.eqz
- ;; code offset: 0x460
+ ;; code offset: 0x45d
(local.tee $3
- ;; code offset: 0x45e
+ ;; code offset: 0x45b
(local.get $4)
)
)
)
- ;; code offset: 0x475
- (br_if $label$6
- ;; code offset: 0x474
+ ;; code offset: 0x472
+ (br_if $label
+ ;; code offset: 0x471
(i32.ne
- ;; code offset: 0x46f
+ ;; code offset: 0x46c
(i32.load8_u
- ;; code offset: 0x46e
+ ;; code offset: 0x46b
(i32.add
- ;; code offset: 0x465
+ ;; code offset: 0x462
(local.get $0)
- ;; code offset: 0x46c
+ ;; code offset: 0x469
(local.tee $4
- ;; code offset: 0x46b
+ ;; code offset: 0x468
(i32.add
- ;; code offset: 0x467
+ ;; code offset: 0x464
(local.get $3)
- ;; code offset: 0x469
+ ;; code offset: 0x466
(i32.const -1)
)
)
)
)
- ;; code offset: 0x472
+ ;; code offset: 0x46f
(i32.const 10)
)
)
)
- ;; code offset: 0x48b
- (br_if $label$1
- ;; code offset: 0x48a
+ ;; code offset: 0x488
+ (br_if $block
+ ;; code offset: 0x487
(i32.lt_u
- ;; code offset: 0x486
+ ;; code offset: 0x483
(local.tee $4
- ;; code offset: 0x483
+ ;; code offset: 0x480
(call_indirect (type $1)
- ;; code offset: 0x478
+ ;; code offset: 0x475
(local.get $2)
- ;; code offset: 0x47a
+ ;; code offset: 0x477
(local.get $0)
- ;; code offset: 0x47c
+ ;; code offset: 0x479
(local.get $3)
- ;; code offset: 0x480
+ ;; code offset: 0x47d
(i32.load offset=36
- ;; code offset: 0x47e
+ ;; code offset: 0x47b
(local.get $2)
)
)
)
- ;; code offset: 0x488
+ ;; code offset: 0x485
(local.get $3)
)
)
- ;; code offset: 0x492
+ ;; code offset: 0x48f
(local.set $0
- ;; code offset: 0x491
+ ;; code offset: 0x48e
(i32.add
- ;; code offset: 0x48d
+ ;; code offset: 0x48a
(local.get $0)
- ;; code offset: 0x48f
+ ;; code offset: 0x48c
(local.get $3)
)
)
- ;; code offset: 0x499
+ ;; code offset: 0x496
(local.set $1
- ;; code offset: 0x498
+ ;; code offset: 0x495
(i32.sub
- ;; code offset: 0x494
+ ;; code offset: 0x491
(local.get $1)
- ;; code offset: 0x496
+ ;; code offset: 0x493
(local.get $3)
)
)
- ;; code offset: 0x4a0
+ ;; code offset: 0x49d
(local.set $5
- ;; code offset: 0x49d
+ ;; code offset: 0x49a
(i32.load offset=20
- ;; code offset: 0x49b
+ ;; code offset: 0x498
(local.get $2)
)
)
- ;; code offset: 0x4a4
+ ;; code offset: 0x4a1
(local.set $6
- ;; code offset: 0x4a2
+ ;; code offset: 0x49f
(local.get $3)
)
)
- ;; code offset: 0x4af
+ ;; code offset: 0x4ac
(drop
- ;; code offset: 0x4ad
+ ;; code offset: 0x4aa
(call $9
- ;; code offset: 0x4a7
+ ;; code offset: 0x4a4
(local.get $5)
- ;; code offset: 0x4a9
+ ;; code offset: 0x4a6
(local.get $0)
- ;; code offset: 0x4ab
+ ;; code offset: 0x4a8
(local.get $1)
)
)
- ;; code offset: 0x4ba
+ ;; code offset: 0x4b7
(i32.store offset=20
- ;; code offset: 0x4b0
+ ;; code offset: 0x4ad
(local.get $2)
- ;; code offset: 0x4b9
+ ;; code offset: 0x4b6
(i32.add
- ;; code offset: 0x4b4
+ ;; code offset: 0x4b1
(i32.load offset=20
- ;; code offset: 0x4b2
+ ;; code offset: 0x4af
(local.get $2)
)
- ;; code offset: 0x4b7
+ ;; code offset: 0x4b4
(local.get $1)
)
)
- ;; code offset: 0x4c2
+ ;; code offset: 0x4bf
(local.set $4
- ;; code offset: 0x4c1
+ ;; code offset: 0x4be
(i32.add
- ;; code offset: 0x4bd
+ ;; code offset: 0x4ba
(local.get $1)
- ;; code offset: 0x4bf
+ ;; code offset: 0x4bc
(local.get $6)
)
)
)
- ;; code offset: 0x4c5
+ ;; code offset: 0x4c2
(local.get $4)
)
(func $11 (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
(local $4 i32)
(local $5 i32)
- ;; code offset: 0x4d3
+ ;; code offset: 0x4d0
(local.set $4
- ;; code offset: 0x4d2
+ ;; code offset: 0x4cf
(i32.mul
- ;; code offset: 0x4ce
+ ;; code offset: 0x4cb
(local.get $1)
- ;; code offset: 0x4d0
+ ;; code offset: 0x4cd
(local.get $2)
)
)
- ;; code offset: 0x4d5
- (block $label$1
- ;; code offset: 0x4df
+ ;; code offset: 0x4d2
+ (block $block
+ ;; code offset: 0x4dc
(if
- ;; code offset: 0x4de
+ ;; code offset: 0x4db
(i32.le_s
- ;; code offset: 0x4d9
+ ;; code offset: 0x4d6
(i32.load offset=76
- ;; code offset: 0x4d7
+ ;; code offset: 0x4d4
(local.get $3)
)
- ;; code offset: 0x4dc
+ ;; code offset: 0x4d9
(i32.const -1)
)
(then
- ;; code offset: 0x4e9
+ ;; code offset: 0x4e6
(local.set $0
- ;; code offset: 0x4e7
+ ;; code offset: 0x4e4
(call $10
- ;; code offset: 0x4e1
+ ;; code offset: 0x4de
(local.get $0)
- ;; code offset: 0x4e3
+ ;; code offset: 0x4e0
(local.get $4)
- ;; code offset: 0x4e5
+ ;; code offset: 0x4e2
(local.get $3)
)
)
- ;; code offset: 0x4eb
- (br $label$1)
+ ;; code offset: 0x4e8
+ (br $block)
)
)
- ;; code offset: 0x4f2
+ ;; code offset: 0x4ef
(local.set $5
- ;; code offset: 0x4f0
+ ;; code offset: 0x4ed
(call $15
- ;; code offset: 0x4ee
+ ;; code offset: 0x4eb
(local.get $3)
)
)
- ;; code offset: 0x4fc
+ ;; code offset: 0x4f9
(local.set $0
- ;; code offset: 0x4fa
+ ;; code offset: 0x4f7
(call $10
- ;; code offset: 0x4f4
+ ;; code offset: 0x4f1
(local.get $0)
- ;; code offset: 0x4f6
+ ;; code offset: 0x4f3
(local.get $4)
- ;; code offset: 0x4f8
+ ;; code offset: 0x4f5
(local.get $3)
)
)
- ;; code offset: 0x501
- (br_if $label$1
- ;; code offset: 0x500
+ ;; code offset: 0x4fe
+ (br_if $block
+ ;; code offset: 0x4fd
(i32.eqz
- ;; code offset: 0x4fe
+ ;; code offset: 0x4fb
(local.get $5)
)
)
- ;; code offset: 0x505
+ ;; code offset: 0x502
(call $16
- ;; code offset: 0x503
+ ;; code offset: 0x500
(local.get $3)
)
)
- ;; code offset: 0x50d
+ ;; code offset: 0x50a
(if
- ;; code offset: 0x50c
+ ;; code offset: 0x509
(i32.eq
- ;; code offset: 0x508
+ ;; code offset: 0x505
(local.get $0)
- ;; code offset: 0x50a
+ ;; code offset: 0x507
(local.get $4)
)
(then
- ;; code offset: 0x516
+ ;; code offset: 0x513
(return
- ;; code offset: 0x515
+ ;; code offset: 0x512
(select
- ;; code offset: 0x50f
+ ;; code offset: 0x50c
(local.get $2)
- ;; code offset: 0x511
+ ;; code offset: 0x50e
(i32.const 0)
- ;; code offset: 0x513
+ ;; code offset: 0x510
(local.get $1)
)
)
)
)
- ;; code offset: 0x51c
+ ;; code offset: 0x519
(i32.div_u
- ;; code offset: 0x518
+ ;; code offset: 0x515
(local.get $0)
- ;; code offset: 0x51a
+ ;; code offset: 0x517
(local.get $1)
)
)
(func $12 (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
- ;; code offset: 0x537
+ ;; code offset: 0x534
(select
- ;; code offset: 0x522
+ ;; code offset: 0x51f
(i32.const -1)
- ;; code offset: 0x524
+ ;; code offset: 0x521
(i32.const 0)
- ;; code offset: 0x536
+ ;; code offset: 0x533
(i32.ne
- ;; code offset: 0x532
+ ;; code offset: 0x52f
(call $11
- ;; code offset: 0x526
+ ;; code offset: 0x523
(local.get $0)
- ;; code offset: 0x528
+ ;; code offset: 0x525
(i32.const 1)
- ;; code offset: 0x52e
+ ;; code offset: 0x52b
(local.tee $2
- ;; code offset: 0x52c
+ ;; code offset: 0x529
(call $17
- ;; code offset: 0x52a
+ ;; code offset: 0x527
(local.get $0)
)
)
- ;; code offset: 0x530
+ ;; code offset: 0x52d
(local.get $1)
)
- ;; code offset: 0x534
+ ;; code offset: 0x531
(local.get $2)
)
)
@@ -1768,624 +1765,624 @@ file_names[ 1]:
(local $2 i32)
(local $3 i32)
(local $4 i32)
- ;; code offset: 0x549
+ ;; code offset: 0x546
(global.set $global$0
- ;; code offset: 0x547
+ ;; code offset: 0x544
(local.tee $3
- ;; code offset: 0x546
+ ;; code offset: 0x543
(i32.sub
- ;; code offset: 0x542
+ ;; code offset: 0x53f
(global.get $global$0)
- ;; code offset: 0x544
+ ;; code offset: 0x541
(i32.const 16)
)
)
)
- ;; code offset: 0x54f
+ ;; code offset: 0x54c
(i32.store8 offset=15
- ;; code offset: 0x54b
+ ;; code offset: 0x548
(local.get $3)
- ;; code offset: 0x54d
+ ;; code offset: 0x54a
(local.get $1)
)
- ;; code offset: 0x552
- (block $label$1
- ;; code offset: 0x55c
+ ;; code offset: 0x54f
+ (block $block
+ ;; code offset: 0x559
(if
- ;; code offset: 0x55b
+ ;; code offset: 0x558
(i32.eqz
- ;; code offset: 0x559
+ ;; code offset: 0x556
(local.tee $2
- ;; code offset: 0x556
+ ;; code offset: 0x553
(i32.load offset=16
- ;; code offset: 0x554
+ ;; code offset: 0x551
(local.get $0)
)
)
)
(then
- ;; code offset: 0x560
+ ;; code offset: 0x55d
(local.set $2
- ;; code offset: 0x55e
+ ;; code offset: 0x55b
(i32.const -1)
)
- ;; code offset: 0x566
- (br_if $label$1
- ;; code offset: 0x564
+ ;; code offset: 0x563
+ (br_if $block
+ ;; code offset: 0x561
(call $8
- ;; code offset: 0x562
+ ;; code offset: 0x55f
(local.get $0)
)
)
- ;; code offset: 0x56d
+ ;; code offset: 0x56a
(local.set $2
- ;; code offset: 0x56a
+ ;; code offset: 0x567
(i32.load offset=16
- ;; code offset: 0x568
+ ;; code offset: 0x565
(local.get $0)
)
)
)
)
- ;; code offset: 0x570
- (block $label$3
- ;; code offset: 0x57c
- (br_if $label$3
- ;; code offset: 0x57b
+ ;; code offset: 0x56d
+ (block $block1
+ ;; code offset: 0x579
+ (br_if $block1
+ ;; code offset: 0x578
(i32.ge_u
- ;; code offset: 0x577
+ ;; code offset: 0x574
(local.tee $4
- ;; code offset: 0x574
+ ;; code offset: 0x571
(i32.load offset=20
- ;; code offset: 0x572
+ ;; code offset: 0x56f
(local.get $0)
)
)
- ;; code offset: 0x579
+ ;; code offset: 0x576
(local.get $2)
)
)
- ;; code offset: 0x58c
- (br_if $label$3
- ;; code offset: 0x58b
+ ;; code offset: 0x589
+ (br_if $block1
+ ;; code offset: 0x588
(i32.eq
- ;; code offset: 0x584
+ ;; code offset: 0x581
(local.tee $2
- ;; code offset: 0x583
+ ;; code offset: 0x580
(i32.and
- ;; code offset: 0x57e
+ ;; code offset: 0x57b
(local.get $1)
- ;; code offset: 0x580
+ ;; code offset: 0x57d
(i32.const 255)
)
)
- ;; code offset: 0x588
+ ;; code offset: 0x585
(i32.load8_s offset=75
- ;; code offset: 0x586
+ ;; code offset: 0x583
(local.get $0)
)
)
)
- ;; code offset: 0x595
+ ;; code offset: 0x592
(i32.store offset=20
- ;; code offset: 0x58e
+ ;; code offset: 0x58b
(local.get $0)
- ;; code offset: 0x594
+ ;; code offset: 0x591
(i32.add
- ;; code offset: 0x590
+ ;; code offset: 0x58d
(local.get $4)
- ;; code offset: 0x592
+ ;; code offset: 0x58f
(i32.const 1)
)
)
- ;; code offset: 0x59c
+ ;; code offset: 0x599
(i32.store8
- ;; code offset: 0x598
+ ;; code offset: 0x595
(local.get $4)
- ;; code offset: 0x59a
+ ;; code offset: 0x597
(local.get $1)
)
- ;; code offset: 0x59f
- (br $label$1)
+ ;; code offset: 0x59c
+ (br $block)
)
- ;; code offset: 0x5a4
+ ;; code offset: 0x5a1
(local.set $2
- ;; code offset: 0x5a2
+ ;; code offset: 0x59f
(i32.const -1)
)
- ;; code offset: 0x5ba
- (br_if $label$1
- ;; code offset: 0x5b9
+ ;; code offset: 0x5b7
+ (br_if $block
+ ;; code offset: 0x5b6
(i32.ne
- ;; code offset: 0x5b4
+ ;; code offset: 0x5b1
(call_indirect (type $1)
- ;; code offset: 0x5a6
+ ;; code offset: 0x5a3
(local.get $0)
- ;; code offset: 0x5ac
+ ;; code offset: 0x5a9
(i32.add
- ;; code offset: 0x5a8
+ ;; code offset: 0x5a5
(local.get $3)
- ;; code offset: 0x5aa
+ ;; code offset: 0x5a7
(i32.const 15)
)
- ;; code offset: 0x5ad
+ ;; code offset: 0x5aa
(i32.const 1)
- ;; code offset: 0x5b1
+ ;; code offset: 0x5ae
(i32.load offset=36
- ;; code offset: 0x5af
+ ;; code offset: 0x5ac
(local.get $0)
)
)
- ;; code offset: 0x5b7
+ ;; code offset: 0x5b4
(i32.const 1)
)
)
- ;; code offset: 0x5c1
+ ;; code offset: 0x5be
(local.set $2
- ;; code offset: 0x5be
+ ;; code offset: 0x5bb
(i32.load8_u offset=15
- ;; code offset: 0x5bc
+ ;; code offset: 0x5b9
(local.get $3)
)
)
)
- ;; code offset: 0x5c9
+ ;; code offset: 0x5c6
(global.set $global$0
- ;; code offset: 0x5c8
+ ;; code offset: 0x5c5
(i32.add
- ;; code offset: 0x5c4
+ ;; code offset: 0x5c1
(local.get $3)
- ;; code offset: 0x5c6
+ ;; code offset: 0x5c3
(i32.const 16)
)
)
- ;; code offset: 0x5cb
+ ;; code offset: 0x5c8
(local.get $2)
)
(func $14 (param $0 i32) (result i32)
(local $1 i32)
(local $2 i32)
- ;; code offset: 0x5e2
+ ;; code offset: 0x5df
(if
- ;; code offset: 0x5e1
+ ;; code offset: 0x5de
(i32.ge_s
- ;; code offset: 0x5dc
+ ;; code offset: 0x5d9
(i32.load offset=76
- ;; code offset: 0x5da
+ ;; code offset: 0x5d7
(local.tee $1
- ;; code offset: 0x5d7
+ ;; code offset: 0x5d4
(i32.load
- ;; code offset: 0x5d4
+ ;; code offset: 0x5d1
(i32.const 1040)
)
)
)
- ;; code offset: 0x5df
+ ;; code offset: 0x5dc
(i32.const 0)
)
(then
- ;; code offset: 0x5e8
+ ;; code offset: 0x5e5
(local.set $2
- ;; code offset: 0x5e6
+ ;; code offset: 0x5e3
(call $15
- ;; code offset: 0x5e4
+ ;; code offset: 0x5e1
(local.get $1)
)
)
)
)
- ;; code offset: 0x636
+ ;; code offset: 0x633
(local.set $0
- ;; code offset: 0x5eb
- (block $label$2 (result i32)
- ;; code offset: 0x5fa
+ ;; code offset: 0x5e8
+ (block $block (result i32)
+ ;; code offset: 0x5f7
(drop
- ;; code offset: 0x5f8
- (br_if $label$2
- ;; code offset: 0x5ed
+ ;; code offset: 0x5f5
+ (br_if $block
+ ;; code offset: 0x5ea
(i32.const -1)
- ;; code offset: 0x5f7
+ ;; code offset: 0x5f4
(i32.lt_s
- ;; code offset: 0x5f3
+ ;; code offset: 0x5f0
(call $12
- ;; code offset: 0x5ef
+ ;; code offset: 0x5ec
(local.get $0)
- ;; code offset: 0x5f1
+ ;; code offset: 0x5ee
(local.get $1)
)
- ;; code offset: 0x5f5
+ ;; code offset: 0x5f2
(i32.const 0)
)
)
)
- ;; code offset: 0x5fb
- (block $label$3
- ;; code offset: 0x605
- (br_if $label$3
- ;; code offset: 0x604
+ ;; code offset: 0x5f8
+ (block $block1
+ ;; code offset: 0x602
+ (br_if $block1
+ ;; code offset: 0x601
(i32.eq
- ;; code offset: 0x5ff
+ ;; code offset: 0x5fc
(i32.load8_u offset=75
- ;; code offset: 0x5fd
+ ;; code offset: 0x5fa
(local.get $1)
)
- ;; code offset: 0x602
+ ;; code offset: 0x5ff
(i32.const 10)
)
)
- ;; code offset: 0x614
- (br_if $label$3
- ;; code offset: 0x613
+ ;; code offset: 0x611
+ (br_if $block1
+ ;; code offset: 0x610
(i32.ge_u
- ;; code offset: 0x60c
+ ;; code offset: 0x609
(local.tee $0
- ;; code offset: 0x609
+ ;; code offset: 0x606
(i32.load offset=20
- ;; code offset: 0x607
+ ;; code offset: 0x604
(local.get $1)
)
)
- ;; code offset: 0x610
+ ;; code offset: 0x60d
(i32.load offset=16
- ;; code offset: 0x60e
+ ;; code offset: 0x60b
(local.get $1)
)
)
)
- ;; code offset: 0x61d
+ ;; code offset: 0x61a
(i32.store offset=20
- ;; code offset: 0x616
+ ;; code offset: 0x613
(local.get $1)
- ;; code offset: 0x61c
+ ;; code offset: 0x619
(i32.add
- ;; code offset: 0x618
+ ;; code offset: 0x615
(local.get $0)
- ;; code offset: 0x61a
+ ;; code offset: 0x617
(i32.const 1)
)
)
- ;; code offset: 0x624
+ ;; code offset: 0x621
(i32.store8
- ;; code offset: 0x620
+ ;; code offset: 0x61d
(local.get $0)
- ;; code offset: 0x622
+ ;; code offset: 0x61f
(i32.const 10)
)
- ;; code offset: 0x629
- (br $label$2
- ;; code offset: 0x627
+ ;; code offset: 0x626
+ (br $block
+ ;; code offset: 0x624
(i32.const 0)
)
)
- ;; code offset: 0x634
+ ;; code offset: 0x631
(i32.shr_s
- ;; code offset: 0x630
+ ;; code offset: 0x62d
(call $13
- ;; code offset: 0x62c
+ ;; code offset: 0x629
(local.get $1)
- ;; code offset: 0x62e
+ ;; code offset: 0x62b
(i32.const 10)
)
- ;; code offset: 0x632
+ ;; code offset: 0x62f
(i32.const 31)
)
)
)
- ;; code offset: 0x63a
+ ;; code offset: 0x637
(if
- ;; code offset: 0x638
+ ;; code offset: 0x635
(local.get $2)
(then
- ;; code offset: 0x63e
+ ;; code offset: 0x63b
(call $16
- ;; code offset: 0x63c
+ ;; code offset: 0x639
(local.get $1)
)
)
)
- ;; code offset: 0x641
+ ;; code offset: 0x63e
(local.get $0)
)
(func $15 (param $0 i32) (result i32)
- ;; code offset: 0x646
+ ;; code offset: 0x643
(i32.const 1)
)
(func $16 (param $0 i32)
- ;; code offset: 0x64b
+ ;; code offset: 0x648
(nop)
)
(func $17 (param $0 i32) (result i32)
(local $1 i32)
(local $2 i32)
(local $3 i32)
- ;; code offset: 0x658
+ ;; code offset: 0x655
(local.set $1
- ;; code offset: 0x656
+ ;; code offset: 0x653
(local.get $0)
)
- ;; code offset: 0x65a
- (block $label$1
- ;; code offset: 0x65c
- (block $label$2
- ;; code offset: 0x664
- (br_if $label$2
- ;; code offset: 0x663
+ ;; code offset: 0x657
+ (block $block1
+ ;; code offset: 0x659
+ (block $block
+ ;; code offset: 0x661
+ (br_if $block
+ ;; code offset: 0x660
(i32.eqz
- ;; code offset: 0x662
+ ;; code offset: 0x65f
(i32.and
- ;; code offset: 0x65e
+ ;; code offset: 0x65b
(local.get $0)
- ;; code offset: 0x660
+ ;; code offset: 0x65d
(i32.const 3)
)
)
)
- ;; code offset: 0x66c
+ ;; code offset: 0x669
(if
- ;; code offset: 0x66b
+ ;; code offset: 0x668
(i32.eqz
- ;; code offset: 0x668
+ ;; code offset: 0x665
(i32.load8_u
- ;; code offset: 0x666
+ ;; code offset: 0x663
(local.get $0)
)
)
(then
- ;; code offset: 0x670
+ ;; code offset: 0x66d
(return
- ;; code offset: 0x66e
+ ;; code offset: 0x66b
(i32.const 0)
)
)
)
- ;; code offset: 0x672
- (loop $label$4
- ;; code offset: 0x67f
- (br_if $label$2
- ;; code offset: 0x67e
+ ;; code offset: 0x66f
+ (loop $label
+ ;; code offset: 0x67c
+ (br_if $block
+ ;; code offset: 0x67b
(i32.eqz
- ;; code offset: 0x67d
+ ;; code offset: 0x67a
(i32.and
- ;; code offset: 0x679
+ ;; code offset: 0x676
(local.tee $1
- ;; code offset: 0x678
+ ;; code offset: 0x675
(i32.add
- ;; code offset: 0x674
+ ;; code offset: 0x671
(local.get $1)
- ;; code offset: 0x676
+ ;; code offset: 0x673
(i32.const 1)
)
)
- ;; code offset: 0x67b
+ ;; code offset: 0x678
(i32.const 3)
)
)
)
- ;; code offset: 0x686
- (br_if $label$4
- ;; code offset: 0x683
+ ;; code offset: 0x683
+ (br_if $label
+ ;; code offset: 0x680
(i32.load8_u
- ;; code offset: 0x681
+ ;; code offset: 0x67e
(local.get $1)
)
)
)
- ;; code offset: 0x689
- (br $label$1)
+ ;; code offset: 0x686
+ (br $block1)
)
- ;; code offset: 0x68c
- (loop $label$5
- ;; code offset: 0x695
+ ;; code offset: 0x689
+ (loop $label1
+ ;; code offset: 0x692
(local.set $1
- ;; code offset: 0x694
+ ;; code offset: 0x691
(i32.add
- ;; code offset: 0x690
+ ;; code offset: 0x68d
(local.tee $2
- ;; code offset: 0x68e
+ ;; code offset: 0x68b
(local.get $1)
)
- ;; code offset: 0x692
+ ;; code offset: 0x68f
(i32.const 4)
)
)
- ;; code offset: 0x6b2
- (br_if $label$5
- ;; code offset: 0x6b1
+ ;; code offset: 0x6af
+ (br_if $label1
+ ;; code offset: 0x6ae
(i32.eqz
- ;; code offset: 0x6b0
+ ;; code offset: 0x6ad
(i32.and
- ;; code offset: 0x6a9
+ ;; code offset: 0x6a6
(i32.and
- ;; code offset: 0x6a0
+ ;; code offset: 0x69d
(i32.xor
- ;; code offset: 0x69c
+ ;; code offset: 0x699
(local.tee $3
- ;; code offset: 0x699
+ ;; code offset: 0x696
(i32.load
- ;; code offset: 0x697
+ ;; code offset: 0x694
(local.get $2)
)
)
- ;; code offset: 0x69e
+ ;; code offset: 0x69b
(i32.const -1)
)
- ;; code offset: 0x6a8
+ ;; code offset: 0x6a5
(i32.add
- ;; code offset: 0x6a1
+ ;; code offset: 0x69e
(local.get $3)
- ;; code offset: 0x6a3
+ ;; code offset: 0x6a0
(i32.const -16843009)
)
)
- ;; code offset: 0x6aa
+ ;; code offset: 0x6a7
(i32.const -2139062144)
)
)
)
)
- ;; code offset: 0x6bc
+ ;; code offset: 0x6b9
(if
- ;; code offset: 0x6bb
+ ;; code offset: 0x6b8
(i32.eqz
- ;; code offset: 0x6ba
+ ;; code offset: 0x6b7
(i32.and
- ;; code offset: 0x6b5
+ ;; code offset: 0x6b2
(local.get $3)
- ;; code offset: 0x6b7
+ ;; code offset: 0x6b4
(i32.const 255)
)
)
(then
- ;; code offset: 0x6c3
+ ;; code offset: 0x6c0
(return
- ;; code offset: 0x6c2
+ ;; code offset: 0x6bf
(i32.sub
- ;; code offset: 0x6be
+ ;; code offset: 0x6bb
(local.get $2)
- ;; code offset: 0x6c0
+ ;; code offset: 0x6bd
(local.get $0)
)
)
)
)
- ;; code offset: 0x6c5
- (loop $label$7
- ;; code offset: 0x6cc
+ ;; code offset: 0x6c2
+ (loop $label2
+ ;; code offset: 0x6c9
(local.set $3
- ;; code offset: 0x6c9
+ ;; code offset: 0x6c6
(i32.load8_u offset=1
- ;; code offset: 0x6c7
+ ;; code offset: 0x6c4
(local.get $2)
)
)
- ;; code offset: 0x6d5
+ ;; code offset: 0x6d2
(local.set $2
- ;; code offset: 0x6d3
+ ;; code offset: 0x6d0
(local.tee $1
- ;; code offset: 0x6d2
+ ;; code offset: 0x6cf
(i32.add
- ;; code offset: 0x6ce
+ ;; code offset: 0x6cb
(local.get $2)
- ;; code offset: 0x6d0
+ ;; code offset: 0x6cd
(i32.const 1)
)
)
)
- ;; code offset: 0x6d9
- (br_if $label$7
- ;; code offset: 0x6d7
+ ;; code offset: 0x6d6
+ (br_if $label2
+ ;; code offset: 0x6d4
(local.get $3)
)
)
)
- ;; code offset: 0x6e1
+ ;; code offset: 0x6de
(i32.sub
- ;; code offset: 0x6dd
+ ;; code offset: 0x6da
(local.get $1)
- ;; code offset: 0x6df
+ ;; code offset: 0x6dc
(local.get $0)
)
)
(func $18 (result i32)
- ;; code offset: 0x6e5
+ ;; code offset: 0x6e2
(global.get $global$0)
)
(func $19 (param $0 i32)
- ;; code offset: 0x6ec
+ ;; code offset: 0x6e9
(global.set $global$0
- ;; code offset: 0x6ea
+ ;; code offset: 0x6e7
(local.get $0)
)
)
(func $20 (param $0 i32) (result i32)
(local $1 i32)
- ;; code offset: 0x6fd
+ ;; code offset: 0x6fa
(global.set $global$0
- ;; code offset: 0x6fb
+ ;; code offset: 0x6f8
(local.tee $1
- ;; code offset: 0x6fa
+ ;; code offset: 0x6f7
(i32.and
- ;; code offset: 0x6f7
+ ;; code offset: 0x6f4
(i32.sub
- ;; code offset: 0x6f3
+ ;; code offset: 0x6f0
(global.get $global$0)
- ;; code offset: 0x6f5
+ ;; code offset: 0x6f2
(local.get $0)
)
- ;; code offset: 0x6f8
+ ;; code offset: 0x6f5
(i32.const -16)
)
)
)
- ;; code offset: 0x6ff
+ ;; code offset: 0x6fc
(local.get $1)
)
(func $21 (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) (result i64)
- ;; code offset: 0x70c
+ ;; code offset: 0x709
(call_indirect (type $6)
- ;; code offset: 0x704
+ ;; code offset: 0x701
(local.get $1)
- ;; code offset: 0x706
+ ;; code offset: 0x703
(local.get $2)
- ;; code offset: 0x708
+ ;; code offset: 0x705
(local.get $3)
- ;; code offset: 0x70a
+ ;; code offset: 0x707
(local.get $0)
)
)
(func $22 (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
(local $5 i64)
- ;; code offset: 0x72c
+ ;; code offset: 0x729
(call $fimport$2
- ;; code offset: 0x72b
+ ;; code offset: 0x728
(i32.wrap_i64
- ;; code offset: 0x72a
+ ;; code offset: 0x727
(i64.shr_u
- ;; code offset: 0x726
+ ;; code offset: 0x723
(local.tee $5
- ;; code offset: 0x724
+ ;; code offset: 0x721
(call $21
- ;; code offset: 0x714
+ ;; code offset: 0x711
(local.get $0)
- ;; code offset: 0x716
+ ;; code offset: 0x713
(local.get $1)
- ;; code offset: 0x721
+ ;; code offset: 0x71e
(i64.or
- ;; code offset: 0x71a
+ ;; code offset: 0x717
(i64.extend_i32_u
- ;; code offset: 0x718
+ ;; code offset: 0x715
(local.get $2)
)
- ;; code offset: 0x720
+ ;; code offset: 0x71d
(i64.shl
- ;; code offset: 0x71d
+ ;; code offset: 0x71a
(i64.extend_i32_u
- ;; code offset: 0x71b
+ ;; code offset: 0x718
(local.get $3)
)
- ;; code offset: 0x71e
+ ;; code offset: 0x71b
(i64.const 32)
)
)
- ;; code offset: 0x722
+ ;; code offset: 0x71f
(local.get $4)
)
)
- ;; code offset: 0x728
+ ;; code offset: 0x725
(i64.const 32)
)
)
)
- ;; code offset: 0x730
+ ;; code offset: 0x72d
(i32.wrap_i64
- ;; code offset: 0x72e
+ ;; code offset: 0x72b
(local.get $5)
)
)
(func $23 (param $0 i32) (result i32)
- ;; code offset: 0x736
+ ;; code offset: 0x733
(memory.grow
- ;; code offset: 0x734
+ ;; code offset: 0x731
(local.get $0)
)
)