diff options
73 files changed, 4858 insertions, 4856 deletions
diff --git a/src/wasm-stream.c b/src/wasm-stream.c index b809fdb3..a64638e0 100644 --- a/src/wasm-stream.c +++ b/src/wasm-stream.c @@ -142,12 +142,14 @@ void wasm_write_memory_dump(WasmStream* stream, wasm_write_char(stream, ' '); } - wasm_write_char(stream, ' '); - p = line; - int i; - for (i = 0; i < DUMP_OCTETS_PER_LINE && p < end; ++i, ++p) - if (print_chars) + if (print_chars == WASM_PRINT_CHARS) { + wasm_write_char(stream, ' '); + p = line; + int i; + for (i = 0; i < DUMP_OCTETS_PER_LINE && p < end; ++i, ++p) wasm_write_char(stream, isprint(*p) ? *p : '.'); + } + /* if there are multiple lines, only print the desc on the last one */ if (p >= end && desc) wasm_writef(stream, " ; %s", desc); diff --git a/test/dump/basic.txt b/test/dump/basic.txt index a6873cfd..f1425d54 100644 --- a/test/dump/basic.txt +++ b/test/dump/basic.txt @@ -6,74 +6,74 @@ (i32.add (get_local 0) (get_local 1))) (export "f" (func $f))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 02 ; num params -000000d: 01 ; param type -000000e: 01 ; param type -000000f: 01 ; num results -0000010: 01 ; result type -0000009: 07 ; FIXUP section size +000000b: 40 ; function form +000000c: 02 ; num params +000000d: 01 ; param type +000000e: 01 ; param type +000000f: 01 ; num results +0000010: 01 ; result type +0000009: 07 ; FIXUP section size ; section "FUNCTION" (3) -0000011: 03 ; section code -0000012: 00 ; section size (guess) -0000013: 01 ; num functions -0000014: 00 ; function 0 signature index -0000012: 02 ; FIXUP section size +0000011: 03 ; section code +0000012: 00 ; section size (guess) +0000013: 01 ; num functions +0000014: 00 ; function 0 signature index +0000012: 02 ; FIXUP section size ; section "MEMORY" (5) -0000015: 05 ; section code -0000016: 00 ; section size (guess) -0000017: 01 ; num memories +0000015: 05 ; section code +0000016: 00 ; section size (guess) +0000017: 01 ; num memories ; memory 0 -0000018: 00 ; memory flags -0000019: 01 ; memory initial pages -0000016: 03 ; FIXUP section size +0000018: 00 ; memory flags +0000019: 01 ; memory initial pages +0000016: 03 ; FIXUP section size ; section "EXPORT" (7) -000001a: 07 ; section code -000001b: 00 ; section size (guess) -000001c: 01 ; num exports -000001d: 01 ; string length +000001a: 07 ; section code +000001b: 00 ; section size (guess) +000001c: 01 ; num exports +000001d: 01 ; string length 000001e: 66 f ; export name -000001f: 00 ; export kind -0000020: 00 ; export func index -000001b: 05 ; FIXUP section size +000001f: 00 ; export kind +0000020: 00 ; export func index +000001b: 05 ; FIXUP section size ; section "CODE" (10) -0000021: 0a ; section code -0000022: 00 ; section size (guess) -0000023: 01 ; num functions +0000021: 0a ; section code +0000022: 00 ; section size (guess) +0000023: 01 ; num functions ; function body 0 -0000024: 00 ; func body size (guess) -0000025: 00 ; local decl count -0000026: 10 ; i32.const -0000027: 00 ; i32 literal -0000028: 10 ; i32.const -0000029: 00 ; i32 literal -000002a: 2a ; i32.load -000002b: 02 ; alignment -000002c: 00 ; load offset -000002d: 10 ; i32.const -000002e: 01 ; i32 literal -000002f: 40 ; i32.add -0000030: 33 ; i32.store -0000031: 02 ; alignment -0000032: 00 ; store offset -0000033: 14 ; get_local -0000034: 00 ; local index -0000035: 14 ; get_local -0000036: 01 ; local index -0000037: 40 ; i32.add -0000038: 0f ; end -0000024: 14 ; FIXUP func body size -0000022: 16 ; FIXUP section size +0000024: 00 ; func body size (guess) +0000025: 00 ; local decl count +0000026: 10 ; i32.const +0000027: 00 ; i32 literal +0000028: 10 ; i32.const +0000029: 00 ; i32 literal +000002a: 2a ; i32.load +000002b: 02 ; alignment +000002c: 00 ; load offset +000002d: 10 ; i32.const +000002e: 01 ; i32 literal +000002f: 40 ; i32.add +0000030: 33 ; i32.store +0000031: 02 ; alignment +0000032: 00 ; store offset +0000033: 14 ; get_local +0000034: 00 ; local index +0000035: 14 ; get_local +0000036: 01 ; local index +0000037: 40 ; i32.add +0000038: 0f ; end +0000024: 14 ; FIXUP func body size +0000022: 16 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0107 0140 0201 0101 -0000010: 0103 0201 0005 0301 0001 0705 0101 6600 -0000020: 000a 1601 1400 1000 1000 2a02 0010 0140 -0000030: 3302 0014 0014 0140 0f +0000000: 0061 736d 0c00 0000 0107 0140 0201 0101 +0000010: 0103 0201 0005 0301 0001 0705 0101 6600 +0000020: 000a 1601 1400 1000 1000 2a02 0010 0140 +0000030: 3302 0014 0014 0140 0f ;;; STDOUT ;;) diff --git a/test/dump/basic_dump_only.txt b/test/dump/basic_dump_only.txt index 475cf97d..0e49fb7e 100644 --- a/test/dump/basic_dump_only.txt +++ b/test/dump/basic_dump_only.txt @@ -6,8 +6,8 @@ (i32.add (get_local 0) (get_local 1))) (export "f" (func $f))) (;; STDOUT ;;; -0000000: 0061 736d 0c00 0000 0107 0140 0201 0101 -0000010: 0103 0201 0005 0301 0001 0705 0101 6600 -0000020: 000a 1601 1400 1000 1000 2a02 0010 0140 -0000030: 3302 0014 0014 0140 0f +0000000: 0061 736d 0c00 0000 0107 0140 0201 0101 +0000010: 0103 0201 0005 0301 0001 0705 0101 6600 +0000020: 000a 1601 1400 1000 1000 2a02 0010 0140 +0000030: 3302 0014 0014 0140 0f ;;; STDOUT ;;) diff --git a/test/dump/binary.txt b/test/dump/binary.txt index f9eac00c..ad1614c7 100644 --- a/test/dump/binary.txt +++ b/test/dump/binary.txt @@ -104,194 +104,194 @@ )) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: b6 ; i32.rotr -000001c: 10 ; i32.const -000001d: 00 ; i32 literal -000001e: b7 ; i32.rotl -000001f: 10 ; i32.const -0000020: 00 ; i32 literal -0000021: 4c ; i32.shr_s -0000022: 10 ; i32.const -0000023: 00 ; i32 literal -0000024: 4b ; i32.shr_u -0000025: 10 ; i32.const -0000026: 00 ; i32 literal -0000027: 4a ; i32.shl -0000028: 10 ; i32.const -0000029: 00 ; i32 literal -000002a: 49 ; i32.xor -000002b: 10 ; i32.const -000002c: 00 ; i32 literal -000002d: 48 ; i32.or -000002e: 10 ; i32.const -000002f: 00 ; i32 literal -0000030: 47 ; i32.and -0000031: 10 ; i32.const -0000032: 00 ; i32 literal -0000033: 46 ; i32.rem_u -0000034: 10 ; i32.const -0000035: 00 ; i32 literal -0000036: 45 ; i32.rem_s -0000037: 10 ; i32.const -0000038: 00 ; i32 literal -0000039: 44 ; i32.div_u -000003a: 10 ; i32.const -000003b: 00 ; i32 literal -000003c: 43 ; i32.div_s -000003d: 10 ; i32.const -000003e: 00 ; i32 literal -000003f: 42 ; i32.mul -0000040: 10 ; i32.const -0000041: 00 ; i32 literal -0000042: 41 ; i32.sub -0000043: 10 ; i32.const -0000044: 00 ; i32 literal -0000045: 40 ; i32.add -0000046: 0b ; drop -0000047: 11 ; i64.const -0000048: 00 ; i64 literal -0000049: 11 ; i64.const -000004a: 00 ; i64 literal -000004b: b8 ; i64.rotr -000004c: 11 ; i64.const -000004d: 00 ; i64 literal -000004e: b9 ; i64.rotl -000004f: 11 ; i64.const -0000050: 00 ; i64 literal -0000051: 67 ; i64.shr_s -0000052: 11 ; i64.const -0000053: 00 ; i64 literal -0000054: 66 ; i64.shr_u -0000055: 11 ; i64.const -0000056: 00 ; i64 literal -0000057: 65 ; i64.shl -0000058: 11 ; i64.const -0000059: 00 ; i64 literal -000005a: 64 ; i64.xor -000005b: 11 ; i64.const -000005c: 00 ; i64 literal -000005d: 63 ; i64.or -000005e: 11 ; i64.const -000005f: 00 ; i64 literal -0000060: 62 ; i64.and -0000061: 11 ; i64.const -0000062: 00 ; i64 literal -0000063: 61 ; i64.rem_u -0000064: 11 ; i64.const -0000065: 00 ; i64 literal -0000066: 60 ; i64.rem_s -0000067: 11 ; i64.const -0000068: 00 ; i64 literal -0000069: 5f ; i64.div_u -000006a: 11 ; i64.const -000006b: 00 ; i64 literal -000006c: 5e ; i64.div_s -000006d: 11 ; i64.const -000006e: 00 ; i64 literal -000006f: 5d ; i64.mul -0000070: 11 ; i64.const -0000071: 00 ; i64 literal -0000072: 5c ; i64.sub -0000073: 11 ; i64.const -0000074: 00 ; i64 literal -0000075: 5b ; i64.add -0000076: 0b ; drop -0000077: 13 ; f32.const -0000078: 0000 0000 ; f32 literal -000007c: 13 ; f32.const -000007d: 0000 0000 ; f32 literal -0000081: 7d ; f32.copysign -0000082: 13 ; f32.const -0000083: 0000 0000 ; f32 literal -0000087: 7a ; f32.max -0000088: 13 ; f32.const -0000089: 0000 0000 ; f32 literal -000008d: 79 ; f32.min -000008e: 13 ; f32.const -000008f: 0000 0000 ; f32 literal -0000093: 78 ; f32.div -0000094: 13 ; f32.const -0000095: 0000 0000 ; f32 literal -0000099: 77 ; f32.mul -000009a: 13 ; f32.const -000009b: 0000 0000 ; f32 literal -000009f: 76 ; f32.sub -00000a0: 13 ; f32.const -00000a1: 0000 0000 ; f32 literal -00000a5: 75 ; f32.add -00000a6: 0b ; drop -00000a7: 12 ; f64.const -00000a8: 0000 0000 0000 0000 ; f64 literal -00000b0: 12 ; f64.const -00000b1: 0000 0000 0000 0000 ; f64 literal -00000b9: 91 ; f64.copysign -00000ba: 12 ; f64.const -00000bb: 0000 0000 0000 0000 ; f64 literal -00000c3: 8e ; f64.max -00000c4: 12 ; f64.const -00000c5: 0000 0000 0000 0000 ; f64 literal -00000cd: 8d ; f64.min -00000ce: 12 ; f64.const -00000cf: 0000 0000 0000 0000 ; f64 literal -00000d7: 8c ; f64.div -00000d8: 12 ; f64.const -00000d9: 0000 0000 0000 0000 ; f64 literal -00000e1: 8b ; f64.mul -00000e2: 12 ; f64.const -00000e3: 0000 0000 0000 0000 ; f64 literal -00000eb: 8a ; f64.sub -00000ec: 12 ; f64.const -00000ed: 0000 0000 0000 0000 ; f64 literal -00000f5: 89 ; f64.add -00000f6: 0b ; drop -00000f7: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: b6 ; i32.rotr +000001c: 10 ; i32.const +000001d: 00 ; i32 literal +000001e: b7 ; i32.rotl +000001f: 10 ; i32.const +0000020: 00 ; i32 literal +0000021: 4c ; i32.shr_s +0000022: 10 ; i32.const +0000023: 00 ; i32 literal +0000024: 4b ; i32.shr_u +0000025: 10 ; i32.const +0000026: 00 ; i32 literal +0000027: 4a ; i32.shl +0000028: 10 ; i32.const +0000029: 00 ; i32 literal +000002a: 49 ; i32.xor +000002b: 10 ; i32.const +000002c: 00 ; i32 literal +000002d: 48 ; i32.or +000002e: 10 ; i32.const +000002f: 00 ; i32 literal +0000030: 47 ; i32.and +0000031: 10 ; i32.const +0000032: 00 ; i32 literal +0000033: 46 ; i32.rem_u +0000034: 10 ; i32.const +0000035: 00 ; i32 literal +0000036: 45 ; i32.rem_s +0000037: 10 ; i32.const +0000038: 00 ; i32 literal +0000039: 44 ; i32.div_u +000003a: 10 ; i32.const +000003b: 00 ; i32 literal +000003c: 43 ; i32.div_s +000003d: 10 ; i32.const +000003e: 00 ; i32 literal +000003f: 42 ; i32.mul +0000040: 10 ; i32.const +0000041: 00 ; i32 literal +0000042: 41 ; i32.sub +0000043: 10 ; i32.const +0000044: 00 ; i32 literal +0000045: 40 ; i32.add +0000046: 0b ; drop +0000047: 11 ; i64.const +0000048: 00 ; i64 literal +0000049: 11 ; i64.const +000004a: 00 ; i64 literal +000004b: b8 ; i64.rotr +000004c: 11 ; i64.const +000004d: 00 ; i64 literal +000004e: b9 ; i64.rotl +000004f: 11 ; i64.const +0000050: 00 ; i64 literal +0000051: 67 ; i64.shr_s +0000052: 11 ; i64.const +0000053: 00 ; i64 literal +0000054: 66 ; i64.shr_u +0000055: 11 ; i64.const +0000056: 00 ; i64 literal +0000057: 65 ; i64.shl +0000058: 11 ; i64.const +0000059: 00 ; i64 literal +000005a: 64 ; i64.xor +000005b: 11 ; i64.const +000005c: 00 ; i64 literal +000005d: 63 ; i64.or +000005e: 11 ; i64.const +000005f: 00 ; i64 literal +0000060: 62 ; i64.and +0000061: 11 ; i64.const +0000062: 00 ; i64 literal +0000063: 61 ; i64.rem_u +0000064: 11 ; i64.const +0000065: 00 ; i64 literal +0000066: 60 ; i64.rem_s +0000067: 11 ; i64.const +0000068: 00 ; i64 literal +0000069: 5f ; i64.div_u +000006a: 11 ; i64.const +000006b: 00 ; i64 literal +000006c: 5e ; i64.div_s +000006d: 11 ; i64.const +000006e: 00 ; i64 literal +000006f: 5d ; i64.mul +0000070: 11 ; i64.const +0000071: 00 ; i64 literal +0000072: 5c ; i64.sub +0000073: 11 ; i64.const +0000074: 00 ; i64 literal +0000075: 5b ; i64.add +0000076: 0b ; drop +0000077: 13 ; f32.const +0000078: 0000 0000 ; f32 literal +000007c: 13 ; f32.const +000007d: 0000 0000 ; f32 literal +0000081: 7d ; f32.copysign +0000082: 13 ; f32.const +0000083: 0000 0000 ; f32 literal +0000087: 7a ; f32.max +0000088: 13 ; f32.const +0000089: 0000 0000 ; f32 literal +000008d: 79 ; f32.min +000008e: 13 ; f32.const +000008f: 0000 0000 ; f32 literal +0000093: 78 ; f32.div +0000094: 13 ; f32.const +0000095: 0000 0000 ; f32 literal +0000099: 77 ; f32.mul +000009a: 13 ; f32.const +000009b: 0000 0000 ; f32 literal +000009f: 76 ; f32.sub +00000a0: 13 ; f32.const +00000a1: 0000 0000 ; f32 literal +00000a5: 75 ; f32.add +00000a6: 0b ; drop +00000a7: 12 ; f64.const +00000a8: 0000 0000 0000 0000 ; f64 literal +00000b0: 12 ; f64.const +00000b1: 0000 0000 0000 0000 ; f64 literal +00000b9: 91 ; f64.copysign +00000ba: 12 ; f64.const +00000bb: 0000 0000 0000 0000 ; f64 literal +00000c3: 8e ; f64.max +00000c4: 12 ; f64.const +00000c5: 0000 0000 0000 0000 ; f64 literal +00000cd: 8d ; f64.min +00000ce: 12 ; f64.const +00000cf: 0000 0000 0000 0000 ; f64 literal +00000d7: 8c ; f64.div +00000d8: 12 ; f64.const +00000d9: 0000 0000 0000 0000 ; f64 literal +00000e1: 8b ; f64.mul +00000e2: 12 ; f64.const +00000e3: 0000 0000 0000 0000 ; f64 literal +00000eb: 8a ; f64.sub +00000ec: 12 ; f64.const +00000ed: 0000 0000 0000 0000 ; f64 literal +00000f5: 89 ; f64.add +00000f6: 0b ; drop +00000f7: 0f ; end ; move data: [16, f8) -> [17, f9) -0000015: e201 ; FIXUP func body size +0000015: e201 ; FIXUP func body size ; move data: [14, f9) -> [15, fa) -0000013: e501 ; FIXUP section size +0000013: e501 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0ae5 0101 e201 0010 0010 00b6 1000 -0000020: b710 004c 1000 4b10 004a 1000 4910 0048 -0000030: 1000 4710 0046 1000 4510 0044 1000 4310 -0000040: 0042 1000 4110 0040 0b11 0011 00b8 1100 -0000050: b911 0067 1100 6611 0065 1100 6411 0063 -0000060: 1100 6211 0061 1100 6011 005f 1100 5e11 -0000070: 005d 1100 5c11 005b 0b13 0000 0000 1300 -0000080: 0000 007d 1300 0000 007a 1300 0000 0079 -0000090: 1300 0000 0078 1300 0000 0077 1300 0000 -00000a0: 0076 1300 0000 0075 0b12 0000 0000 0000 -00000b0: 0000 1200 0000 0000 0000 0091 1200 0000 -00000c0: 0000 0000 008e 1200 0000 0000 0000 008d -00000d0: 1200 0000 0000 0000 008c 1200 0000 0000 -00000e0: 0000 008b 1200 0000 0000 0000 008a 1200 -00000f0: 0000 0000 0000 0089 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0ae5 0101 e201 0010 0010 00b6 1000 +0000020: b710 004c 1000 4b10 004a 1000 4910 0048 +0000030: 1000 4710 0046 1000 4510 0044 1000 4310 +0000040: 0042 1000 4110 0040 0b11 0011 00b8 1100 +0000050: b911 0067 1100 6611 0065 1100 6411 0063 +0000060: 1100 6211 0061 1100 6011 005f 1100 5e11 +0000070: 005d 1100 5c11 005b 0b13 0000 0000 1300 +0000080: 0000 007d 1300 0000 007a 1300 0000 0079 +0000090: 1300 0000 0078 1300 0000 0077 1300 0000 +00000a0: 0076 1300 0000 0075 0b12 0000 0000 0000 +00000b0: 0000 1200 0000 0000 0000 0091 1200 0000 +00000c0: 0000 0000 008e 1200 0000 0000 0000 008d +00000d0: 1200 0000 0000 0000 008c 1200 0000 0000 +00000e0: 0000 008b 1200 0000 0000 0000 008a 1200 +00000f0: 0000 0000 0000 0089 0b0f ;;; STDOUT ;;) diff --git a/test/dump/block-257-exprs-br.txt b/test/dump/block-257-exprs-br.txt index b1a63771..8b1b1d79 100644 --- a/test/dump/block-257-exprs-br.txt +++ b/test/dump/block-257-exprs-br.txt @@ -47,316 +47,316 @@ (br 0) ;; also depth 1 ))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 0a ; nop -000001a: 0a ; nop -000001b: 0a ; nop -000001c: 0a ; nop -000001d: 0a ; nop -000001e: 0a ; nop -000001f: 0a ; nop -0000020: 0a ; nop -0000021: 0a ; nop -0000022: 0a ; nop -0000023: 0a ; nop -0000024: 0a ; nop -0000025: 0a ; nop -0000026: 0a ; nop -0000027: 0a ; nop -0000028: 0a ; nop -0000029: 0a ; nop -000002a: 0a ; nop -000002b: 0a ; nop -000002c: 0a ; nop -000002d: 0a ; nop -000002e: 0a ; nop -000002f: 0a ; nop -0000030: 0a ; nop -0000031: 0a ; nop -0000032: 0a ; nop -0000033: 0a ; nop -0000034: 0a ; nop -0000035: 0a ; nop -0000036: 0a ; nop -0000037: 0a ; nop -0000038: 0a ; nop -0000039: 0a ; nop -000003a: 0a ; nop -000003b: 0a ; nop -000003c: 0a ; nop -000003d: 0a ; nop -000003e: 0a ; nop -000003f: 0a ; nop -0000040: 0a ; nop -0000041: 0a ; nop -0000042: 0a ; nop -0000043: 0a ; nop -0000044: 0a ; nop -0000045: 0a ; nop -0000046: 0a ; nop -0000047: 0a ; nop -0000048: 0a ; nop -0000049: 0a ; nop -000004a: 0a ; nop -000004b: 0a ; nop -000004c: 0a ; nop -000004d: 0a ; nop -000004e: 0a ; nop -000004f: 0a ; nop -0000050: 0a ; nop -0000051: 0a ; nop -0000052: 0a ; nop -0000053: 0a ; nop -0000054: 0a ; nop -0000055: 0a ; nop -0000056: 0a ; nop -0000057: 0a ; nop -0000058: 0a ; nop -0000059: 0a ; nop -000005a: 0a ; nop -000005b: 0a ; nop -000005c: 0a ; nop -000005d: 0a ; nop -000005e: 0a ; nop -000005f: 0a ; nop -0000060: 0a ; nop -0000061: 0a ; nop -0000062: 0a ; nop -0000063: 0a ; nop -0000064: 0a ; nop -0000065: 0a ; nop -0000066: 0a ; nop -0000067: 0a ; nop -0000068: 0a ; nop -0000069: 0a ; nop -000006a: 0a ; nop -000006b: 0a ; nop -000006c: 0a ; nop -000006d: 0a ; nop -000006e: 0a ; nop -000006f: 0a ; nop -0000070: 0a ; nop -0000071: 0a ; nop -0000072: 0a ; nop -0000073: 0a ; nop -0000074: 0a ; nop -0000075: 0a ; nop -0000076: 0a ; nop -0000077: 0a ; nop -0000078: 0a ; nop -0000079: 0a ; nop -000007a: 0a ; nop -000007b: 0a ; nop -000007c: 0a ; nop -000007d: 0a ; nop -000007e: 0a ; nop -000007f: 0a ; nop -0000080: 0a ; nop -0000081: 0a ; nop -0000082: 0a ; nop -0000083: 0a ; nop -0000084: 0a ; nop -0000085: 0a ; nop -0000086: 0a ; nop -0000087: 0a ; nop -0000088: 0a ; nop -0000089: 0a ; nop -000008a: 0a ; nop -000008b: 0a ; nop -000008c: 0a ; nop -000008d: 0a ; nop -000008e: 0a ; nop -000008f: 0a ; nop -0000090: 0a ; nop -0000091: 0a ; nop -0000092: 0a ; nop -0000093: 0a ; nop -0000094: 0a ; nop -0000095: 0a ; nop -0000096: 0a ; nop -0000097: 0a ; nop -0000098: 0a ; nop -0000099: 0a ; nop -000009a: 0a ; nop -000009b: 0a ; nop -000009c: 0a ; nop -000009d: 0a ; nop -000009e: 0a ; nop -000009f: 0a ; nop -00000a0: 0a ; nop -00000a1: 0a ; nop -00000a2: 0a ; nop -00000a3: 0a ; nop -00000a4: 0a ; nop -00000a5: 0a ; nop -00000a6: 0a ; nop -00000a7: 0a ; nop -00000a8: 0a ; nop -00000a9: 0a ; nop -00000aa: 0a ; nop -00000ab: 0a ; nop -00000ac: 0a ; nop -00000ad: 0a ; nop -00000ae: 0a ; nop -00000af: 0a ; nop -00000b0: 0a ; nop -00000b1: 0a ; nop -00000b2: 0a ; nop -00000b3: 0a ; nop -00000b4: 0a ; nop -00000b5: 0a ; nop -00000b6: 0a ; nop -00000b7: 0a ; nop -00000b8: 0a ; nop -00000b9: 0a ; nop -00000ba: 0a ; nop -00000bb: 0a ; nop -00000bc: 0a ; nop -00000bd: 0a ; nop -00000be: 0a ; nop -00000bf: 0a ; nop -00000c0: 0a ; nop -00000c1: 0a ; nop -00000c2: 0a ; nop -00000c3: 0a ; nop -00000c4: 0a ; nop -00000c5: 0a ; nop -00000c6: 0a ; nop -00000c7: 0a ; nop -00000c8: 0a ; nop -00000c9: 0a ; nop -00000ca: 0a ; nop -00000cb: 0a ; nop -00000cc: 0a ; nop -00000cd: 0a ; nop -00000ce: 0a ; nop -00000cf: 0a ; nop -00000d0: 0a ; nop -00000d1: 0a ; nop -00000d2: 0a ; nop -00000d3: 0a ; nop -00000d4: 0a ; nop -00000d5: 0a ; nop -00000d6: 0a ; nop -00000d7: 0a ; nop -00000d8: 0a ; nop -00000d9: 0a ; nop -00000da: 0a ; nop -00000db: 0a ; nop -00000dc: 0a ; nop -00000dd: 0a ; nop -00000de: 0a ; nop -00000df: 0a ; nop -00000e0: 0a ; nop -00000e1: 0a ; nop -00000e2: 0a ; nop -00000e3: 0a ; nop -00000e4: 0a ; nop -00000e5: 0a ; nop -00000e6: 0a ; nop -00000e7: 0a ; nop -00000e8: 0a ; nop -00000e9: 0a ; nop -00000ea: 0a ; nop -00000eb: 0a ; nop -00000ec: 0a ; nop -00000ed: 0a ; nop -00000ee: 0a ; nop -00000ef: 0a ; nop -00000f0: 0a ; nop -00000f1: 0a ; nop -00000f2: 0a ; nop -00000f3: 0a ; nop -00000f4: 0a ; nop -00000f5: 0a ; nop -00000f6: 0a ; nop -00000f7: 0a ; nop -00000f8: 0a ; nop -00000f9: 0a ; nop -00000fa: 0a ; nop -00000fb: 0a ; nop -00000fc: 0a ; nop -00000fd: 0a ; nop -00000fe: 0a ; nop -00000ff: 0a ; nop -0000100: 0a ; nop -0000101: 0a ; nop -0000102: 0a ; nop -0000103: 0a ; nop -0000104: 0a ; nop -0000105: 0a ; nop -0000106: 0a ; nop -0000107: 0a ; nop -0000108: 0a ; nop -0000109: 0a ; nop -000010a: 0a ; nop -000010b: 0a ; nop -000010c: 0a ; nop -000010d: 0a ; nop -000010e: 0a ; nop -000010f: 0a ; nop -0000110: 0a ; nop -0000111: 0a ; nop -0000112: 0a ; nop -0000113: 0a ; nop -0000114: 0a ; nop -0000115: 0a ; nop -0000116: 0a ; nop -0000117: 0a ; nop -0000118: 0a ; nop -0000119: 06 ; br -000011a: 00 ; break depth -000011b: 06 ; br -000011c: 00 ; break depth -000011d: 0f ; end -000011e: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 0a ; nop +000001a: 0a ; nop +000001b: 0a ; nop +000001c: 0a ; nop +000001d: 0a ; nop +000001e: 0a ; nop +000001f: 0a ; nop +0000020: 0a ; nop +0000021: 0a ; nop +0000022: 0a ; nop +0000023: 0a ; nop +0000024: 0a ; nop +0000025: 0a ; nop +0000026: 0a ; nop +0000027: 0a ; nop +0000028: 0a ; nop +0000029: 0a ; nop +000002a: 0a ; nop +000002b: 0a ; nop +000002c: 0a ; nop +000002d: 0a ; nop +000002e: 0a ; nop +000002f: 0a ; nop +0000030: 0a ; nop +0000031: 0a ; nop +0000032: 0a ; nop +0000033: 0a ; nop +0000034: 0a ; nop +0000035: 0a ; nop +0000036: 0a ; nop +0000037: 0a ; nop +0000038: 0a ; nop +0000039: 0a ; nop +000003a: 0a ; nop +000003b: 0a ; nop +000003c: 0a ; nop +000003d: 0a ; nop +000003e: 0a ; nop +000003f: 0a ; nop +0000040: 0a ; nop +0000041: 0a ; nop +0000042: 0a ; nop +0000043: 0a ; nop +0000044: 0a ; nop +0000045: 0a ; nop +0000046: 0a ; nop +0000047: 0a ; nop +0000048: 0a ; nop +0000049: 0a ; nop +000004a: 0a ; nop +000004b: 0a ; nop +000004c: 0a ; nop +000004d: 0a ; nop +000004e: 0a ; nop +000004f: 0a ; nop +0000050: 0a ; nop +0000051: 0a ; nop +0000052: 0a ; nop +0000053: 0a ; nop +0000054: 0a ; nop +0000055: 0a ; nop +0000056: 0a ; nop +0000057: 0a ; nop +0000058: 0a ; nop +0000059: 0a ; nop +000005a: 0a ; nop +000005b: 0a ; nop +000005c: 0a ; nop +000005d: 0a ; nop +000005e: 0a ; nop +000005f: 0a ; nop +0000060: 0a ; nop +0000061: 0a ; nop +0000062: 0a ; nop +0000063: 0a ; nop +0000064: 0a ; nop +0000065: 0a ; nop +0000066: 0a ; nop +0000067: 0a ; nop +0000068: 0a ; nop +0000069: 0a ; nop +000006a: 0a ; nop +000006b: 0a ; nop +000006c: 0a ; nop +000006d: 0a ; nop +000006e: 0a ; nop +000006f: 0a ; nop +0000070: 0a ; nop +0000071: 0a ; nop +0000072: 0a ; nop +0000073: 0a ; nop +0000074: 0a ; nop +0000075: 0a ; nop +0000076: 0a ; nop +0000077: 0a ; nop +0000078: 0a ; nop +0000079: 0a ; nop +000007a: 0a ; nop +000007b: 0a ; nop +000007c: 0a ; nop +000007d: 0a ; nop +000007e: 0a ; nop +000007f: 0a ; nop +0000080: 0a ; nop +0000081: 0a ; nop +0000082: 0a ; nop +0000083: 0a ; nop +0000084: 0a ; nop +0000085: 0a ; nop +0000086: 0a ; nop +0000087: 0a ; nop +0000088: 0a ; nop +0000089: 0a ; nop +000008a: 0a ; nop +000008b: 0a ; nop +000008c: 0a ; nop +000008d: 0a ; nop +000008e: 0a ; nop +000008f: 0a ; nop +0000090: 0a ; nop +0000091: 0a ; nop +0000092: 0a ; nop +0000093: 0a ; nop +0000094: 0a ; nop +0000095: 0a ; nop +0000096: 0a ; nop +0000097: 0a ; nop +0000098: 0a ; nop +0000099: 0a ; nop +000009a: 0a ; nop +000009b: 0a ; nop +000009c: 0a ; nop +000009d: 0a ; nop +000009e: 0a ; nop +000009f: 0a ; nop +00000a0: 0a ; nop +00000a1: 0a ; nop +00000a2: 0a ; nop +00000a3: 0a ; nop +00000a4: 0a ; nop +00000a5: 0a ; nop +00000a6: 0a ; nop +00000a7: 0a ; nop +00000a8: 0a ; nop +00000a9: 0a ; nop +00000aa: 0a ; nop +00000ab: 0a ; nop +00000ac: 0a ; nop +00000ad: 0a ; nop +00000ae: 0a ; nop +00000af: 0a ; nop +00000b0: 0a ; nop +00000b1: 0a ; nop +00000b2: 0a ; nop +00000b3: 0a ; nop +00000b4: 0a ; nop +00000b5: 0a ; nop +00000b6: 0a ; nop +00000b7: 0a ; nop +00000b8: 0a ; nop +00000b9: 0a ; nop +00000ba: 0a ; nop +00000bb: 0a ; nop +00000bc: 0a ; nop +00000bd: 0a ; nop +00000be: 0a ; nop +00000bf: 0a ; nop +00000c0: 0a ; nop +00000c1: 0a ; nop +00000c2: 0a ; nop +00000c3: 0a ; nop +00000c4: 0a ; nop +00000c5: 0a ; nop +00000c6: 0a ; nop +00000c7: 0a ; nop +00000c8: 0a ; nop +00000c9: 0a ; nop +00000ca: 0a ; nop +00000cb: 0a ; nop +00000cc: 0a ; nop +00000cd: 0a ; nop +00000ce: 0a ; nop +00000cf: 0a ; nop +00000d0: 0a ; nop +00000d1: 0a ; nop +00000d2: 0a ; nop +00000d3: 0a ; nop +00000d4: 0a ; nop +00000d5: 0a ; nop +00000d6: 0a ; nop +00000d7: 0a ; nop +00000d8: 0a ; nop +00000d9: 0a ; nop +00000da: 0a ; nop +00000db: 0a ; nop +00000dc: 0a ; nop +00000dd: 0a ; nop +00000de: 0a ; nop +00000df: 0a ; nop +00000e0: 0a ; nop +00000e1: 0a ; nop +00000e2: 0a ; nop +00000e3: 0a ; nop +00000e4: 0a ; nop +00000e5: 0a ; nop +00000e6: 0a ; nop +00000e7: 0a ; nop +00000e8: 0a ; nop +00000e9: 0a ; nop +00000ea: 0a ; nop +00000eb: 0a ; nop +00000ec: 0a ; nop +00000ed: 0a ; nop +00000ee: 0a ; nop +00000ef: 0a ; nop +00000f0: 0a ; nop +00000f1: 0a ; nop +00000f2: 0a ; nop +00000f3: 0a ; nop +00000f4: 0a ; nop +00000f5: 0a ; nop +00000f6: 0a ; nop +00000f7: 0a ; nop +00000f8: 0a ; nop +00000f9: 0a ; nop +00000fa: 0a ; nop +00000fb: 0a ; nop +00000fc: 0a ; nop +00000fd: 0a ; nop +00000fe: 0a ; nop +00000ff: 0a ; nop +0000100: 0a ; nop +0000101: 0a ; nop +0000102: 0a ; nop +0000103: 0a ; nop +0000104: 0a ; nop +0000105: 0a ; nop +0000106: 0a ; nop +0000107: 0a ; nop +0000108: 0a ; nop +0000109: 0a ; nop +000010a: 0a ; nop +000010b: 0a ; nop +000010c: 0a ; nop +000010d: 0a ; nop +000010e: 0a ; nop +000010f: 0a ; nop +0000110: 0a ; nop +0000111: 0a ; nop +0000112: 0a ; nop +0000113: 0a ; nop +0000114: 0a ; nop +0000115: 0a ; nop +0000116: 0a ; nop +0000117: 0a ; nop +0000118: 0a ; nop +0000119: 06 ; br +000011a: 00 ; break depth +000011b: 06 ; br +000011c: 00 ; break depth +000011d: 0f ; end +000011e: 0f ; end ; move data: [16, 11f) -> [17, 120) -0000015: 8902 ; FIXUP func body size +0000015: 8902 ; FIXUP func body size ; move data: [14, 120) -> [15, 121) -0000013: 8c02 ; FIXUP section size +0000013: 8c02 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a8c 0201 8902 0001 000a 0a0a 0a0a -0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a06 0006 000f -0000120: 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a8c 0201 8902 0001 000a 0a0a 0a0a +0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a06 0006 000f +0000120: 0f ;;; STDOUT ;;) diff --git a/test/dump/block-257-exprs.txt b/test/dump/block-257-exprs.txt index ae7f0116..281b7b06 100644 --- a/test/dump/block-257-exprs.txt +++ b/test/dump/block-257-exprs.txt @@ -45,312 +45,312 @@ ;; 257 (nop)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 0a ; nop -000001a: 0a ; nop -000001b: 0a ; nop -000001c: 0a ; nop -000001d: 0a ; nop -000001e: 0a ; nop -000001f: 0a ; nop -0000020: 0a ; nop -0000021: 0a ; nop -0000022: 0a ; nop -0000023: 0a ; nop -0000024: 0a ; nop -0000025: 0a ; nop -0000026: 0a ; nop -0000027: 0a ; nop -0000028: 0a ; nop -0000029: 0a ; nop -000002a: 0a ; nop -000002b: 0a ; nop -000002c: 0a ; nop -000002d: 0a ; nop -000002e: 0a ; nop -000002f: 0a ; nop -0000030: 0a ; nop -0000031: 0a ; nop -0000032: 0a ; nop -0000033: 0a ; nop -0000034: 0a ; nop -0000035: 0a ; nop -0000036: 0a ; nop -0000037: 0a ; nop -0000038: 0a ; nop -0000039: 0a ; nop -000003a: 0a ; nop -000003b: 0a ; nop -000003c: 0a ; nop -000003d: 0a ; nop -000003e: 0a ; nop -000003f: 0a ; nop -0000040: 0a ; nop -0000041: 0a ; nop -0000042: 0a ; nop -0000043: 0a ; nop -0000044: 0a ; nop -0000045: 0a ; nop -0000046: 0a ; nop -0000047: 0a ; nop -0000048: 0a ; nop -0000049: 0a ; nop -000004a: 0a ; nop -000004b: 0a ; nop -000004c: 0a ; nop -000004d: 0a ; nop -000004e: 0a ; nop -000004f: 0a ; nop -0000050: 0a ; nop -0000051: 0a ; nop -0000052: 0a ; nop -0000053: 0a ; nop -0000054: 0a ; nop -0000055: 0a ; nop -0000056: 0a ; nop -0000057: 0a ; nop -0000058: 0a ; nop -0000059: 0a ; nop -000005a: 0a ; nop -000005b: 0a ; nop -000005c: 0a ; nop -000005d: 0a ; nop -000005e: 0a ; nop -000005f: 0a ; nop -0000060: 0a ; nop -0000061: 0a ; nop -0000062: 0a ; nop -0000063: 0a ; nop -0000064: 0a ; nop -0000065: 0a ; nop -0000066: 0a ; nop -0000067: 0a ; nop -0000068: 0a ; nop -0000069: 0a ; nop -000006a: 0a ; nop -000006b: 0a ; nop -000006c: 0a ; nop -000006d: 0a ; nop -000006e: 0a ; nop -000006f: 0a ; nop -0000070: 0a ; nop -0000071: 0a ; nop -0000072: 0a ; nop -0000073: 0a ; nop -0000074: 0a ; nop -0000075: 0a ; nop -0000076: 0a ; nop -0000077: 0a ; nop -0000078: 0a ; nop -0000079: 0a ; nop -000007a: 0a ; nop -000007b: 0a ; nop -000007c: 0a ; nop -000007d: 0a ; nop -000007e: 0a ; nop -000007f: 0a ; nop -0000080: 0a ; nop -0000081: 0a ; nop -0000082: 0a ; nop -0000083: 0a ; nop -0000084: 0a ; nop -0000085: 0a ; nop -0000086: 0a ; nop -0000087: 0a ; nop -0000088: 0a ; nop -0000089: 0a ; nop -000008a: 0a ; nop -000008b: 0a ; nop -000008c: 0a ; nop -000008d: 0a ; nop -000008e: 0a ; nop -000008f: 0a ; nop -0000090: 0a ; nop -0000091: 0a ; nop -0000092: 0a ; nop -0000093: 0a ; nop -0000094: 0a ; nop -0000095: 0a ; nop -0000096: 0a ; nop -0000097: 0a ; nop -0000098: 0a ; nop -0000099: 0a ; nop -000009a: 0a ; nop -000009b: 0a ; nop -000009c: 0a ; nop -000009d: 0a ; nop -000009e: 0a ; nop -000009f: 0a ; nop -00000a0: 0a ; nop -00000a1: 0a ; nop -00000a2: 0a ; nop -00000a3: 0a ; nop -00000a4: 0a ; nop -00000a5: 0a ; nop -00000a6: 0a ; nop -00000a7: 0a ; nop -00000a8: 0a ; nop -00000a9: 0a ; nop -00000aa: 0a ; nop -00000ab: 0a ; nop -00000ac: 0a ; nop -00000ad: 0a ; nop -00000ae: 0a ; nop -00000af: 0a ; nop -00000b0: 0a ; nop -00000b1: 0a ; nop -00000b2: 0a ; nop -00000b3: 0a ; nop -00000b4: 0a ; nop -00000b5: 0a ; nop -00000b6: 0a ; nop -00000b7: 0a ; nop -00000b8: 0a ; nop -00000b9: 0a ; nop -00000ba: 0a ; nop -00000bb: 0a ; nop -00000bc: 0a ; nop -00000bd: 0a ; nop -00000be: 0a ; nop -00000bf: 0a ; nop -00000c0: 0a ; nop -00000c1: 0a ; nop -00000c2: 0a ; nop -00000c3: 0a ; nop -00000c4: 0a ; nop -00000c5: 0a ; nop -00000c6: 0a ; nop -00000c7: 0a ; nop -00000c8: 0a ; nop -00000c9: 0a ; nop -00000ca: 0a ; nop -00000cb: 0a ; nop -00000cc: 0a ; nop -00000cd: 0a ; nop -00000ce: 0a ; nop -00000cf: 0a ; nop -00000d0: 0a ; nop -00000d1: 0a ; nop -00000d2: 0a ; nop -00000d3: 0a ; nop -00000d4: 0a ; nop -00000d5: 0a ; nop -00000d6: 0a ; nop -00000d7: 0a ; nop -00000d8: 0a ; nop -00000d9: 0a ; nop -00000da: 0a ; nop -00000db: 0a ; nop -00000dc: 0a ; nop -00000dd: 0a ; nop -00000de: 0a ; nop -00000df: 0a ; nop -00000e0: 0a ; nop -00000e1: 0a ; nop -00000e2: 0a ; nop -00000e3: 0a ; nop -00000e4: 0a ; nop -00000e5: 0a ; nop -00000e6: 0a ; nop -00000e7: 0a ; nop -00000e8: 0a ; nop -00000e9: 0a ; nop -00000ea: 0a ; nop -00000eb: 0a ; nop -00000ec: 0a ; nop -00000ed: 0a ; nop -00000ee: 0a ; nop -00000ef: 0a ; nop -00000f0: 0a ; nop -00000f1: 0a ; nop -00000f2: 0a ; nop -00000f3: 0a ; nop -00000f4: 0a ; nop -00000f5: 0a ; nop -00000f6: 0a ; nop -00000f7: 0a ; nop -00000f8: 0a ; nop -00000f9: 0a ; nop -00000fa: 0a ; nop -00000fb: 0a ; nop -00000fc: 0a ; nop -00000fd: 0a ; nop -00000fe: 0a ; nop -00000ff: 0a ; nop -0000100: 0a ; nop -0000101: 0a ; nop -0000102: 0a ; nop -0000103: 0a ; nop -0000104: 0a ; nop -0000105: 0a ; nop -0000106: 0a ; nop -0000107: 0a ; nop -0000108: 0a ; nop -0000109: 0a ; nop -000010a: 0a ; nop -000010b: 0a ; nop -000010c: 0a ; nop -000010d: 0a ; nop -000010e: 0a ; nop -000010f: 0a ; nop -0000110: 0a ; nop -0000111: 0a ; nop -0000112: 0a ; nop -0000113: 0a ; nop -0000114: 0a ; nop -0000115: 0a ; nop -0000116: 0a ; nop -0000117: 0a ; nop -0000118: 0a ; nop -0000119: 0a ; nop -000011a: 0f ; end -000011b: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 0a ; nop +000001a: 0a ; nop +000001b: 0a ; nop +000001c: 0a ; nop +000001d: 0a ; nop +000001e: 0a ; nop +000001f: 0a ; nop +0000020: 0a ; nop +0000021: 0a ; nop +0000022: 0a ; nop +0000023: 0a ; nop +0000024: 0a ; nop +0000025: 0a ; nop +0000026: 0a ; nop +0000027: 0a ; nop +0000028: 0a ; nop +0000029: 0a ; nop +000002a: 0a ; nop +000002b: 0a ; nop +000002c: 0a ; nop +000002d: 0a ; nop +000002e: 0a ; nop +000002f: 0a ; nop +0000030: 0a ; nop +0000031: 0a ; nop +0000032: 0a ; nop +0000033: 0a ; nop +0000034: 0a ; nop +0000035: 0a ; nop +0000036: 0a ; nop +0000037: 0a ; nop +0000038: 0a ; nop +0000039: 0a ; nop +000003a: 0a ; nop +000003b: 0a ; nop +000003c: 0a ; nop +000003d: 0a ; nop +000003e: 0a ; nop +000003f: 0a ; nop +0000040: 0a ; nop +0000041: 0a ; nop +0000042: 0a ; nop +0000043: 0a ; nop +0000044: 0a ; nop +0000045: 0a ; nop +0000046: 0a ; nop +0000047: 0a ; nop +0000048: 0a ; nop +0000049: 0a ; nop +000004a: 0a ; nop +000004b: 0a ; nop +000004c: 0a ; nop +000004d: 0a ; nop +000004e: 0a ; nop +000004f: 0a ; nop +0000050: 0a ; nop +0000051: 0a ; nop +0000052: 0a ; nop +0000053: 0a ; nop +0000054: 0a ; nop +0000055: 0a ; nop +0000056: 0a ; nop +0000057: 0a ; nop +0000058: 0a ; nop +0000059: 0a ; nop +000005a: 0a ; nop +000005b: 0a ; nop +000005c: 0a ; nop +000005d: 0a ; nop +000005e: 0a ; nop +000005f: 0a ; nop +0000060: 0a ; nop +0000061: 0a ; nop +0000062: 0a ; nop +0000063: 0a ; nop +0000064: 0a ; nop +0000065: 0a ; nop +0000066: 0a ; nop +0000067: 0a ; nop +0000068: 0a ; nop +0000069: 0a ; nop +000006a: 0a ; nop +000006b: 0a ; nop +000006c: 0a ; nop +000006d: 0a ; nop +000006e: 0a ; nop +000006f: 0a ; nop +0000070: 0a ; nop +0000071: 0a ; nop +0000072: 0a ; nop +0000073: 0a ; nop +0000074: 0a ; nop +0000075: 0a ; nop +0000076: 0a ; nop +0000077: 0a ; nop +0000078: 0a ; nop +0000079: 0a ; nop +000007a: 0a ; nop +000007b: 0a ; nop +000007c: 0a ; nop +000007d: 0a ; nop +000007e: 0a ; nop +000007f: 0a ; nop +0000080: 0a ; nop +0000081: 0a ; nop +0000082: 0a ; nop +0000083: 0a ; nop +0000084: 0a ; nop +0000085: 0a ; nop +0000086: 0a ; nop +0000087: 0a ; nop +0000088: 0a ; nop +0000089: 0a ; nop +000008a: 0a ; nop +000008b: 0a ; nop +000008c: 0a ; nop +000008d: 0a ; nop +000008e: 0a ; nop +000008f: 0a ; nop +0000090: 0a ; nop +0000091: 0a ; nop +0000092: 0a ; nop +0000093: 0a ; nop +0000094: 0a ; nop +0000095: 0a ; nop +0000096: 0a ; nop +0000097: 0a ; nop +0000098: 0a ; nop +0000099: 0a ; nop +000009a: 0a ; nop +000009b: 0a ; nop +000009c: 0a ; nop +000009d: 0a ; nop +000009e: 0a ; nop +000009f: 0a ; nop +00000a0: 0a ; nop +00000a1: 0a ; nop +00000a2: 0a ; nop +00000a3: 0a ; nop +00000a4: 0a ; nop +00000a5: 0a ; nop +00000a6: 0a ; nop +00000a7: 0a ; nop +00000a8: 0a ; nop +00000a9: 0a ; nop +00000aa: 0a ; nop +00000ab: 0a ; nop +00000ac: 0a ; nop +00000ad: 0a ; nop +00000ae: 0a ; nop +00000af: 0a ; nop +00000b0: 0a ; nop +00000b1: 0a ; nop +00000b2: 0a ; nop +00000b3: 0a ; nop +00000b4: 0a ; nop +00000b5: 0a ; nop +00000b6: 0a ; nop +00000b7: 0a ; nop +00000b8: 0a ; nop +00000b9: 0a ; nop +00000ba: 0a ; nop +00000bb: 0a ; nop +00000bc: 0a ; nop +00000bd: 0a ; nop +00000be: 0a ; nop +00000bf: 0a ; nop +00000c0: 0a ; nop +00000c1: 0a ; nop +00000c2: 0a ; nop +00000c3: 0a ; nop +00000c4: 0a ; nop +00000c5: 0a ; nop +00000c6: 0a ; nop +00000c7: 0a ; nop +00000c8: 0a ; nop +00000c9: 0a ; nop +00000ca: 0a ; nop +00000cb: 0a ; nop +00000cc: 0a ; nop +00000cd: 0a ; nop +00000ce: 0a ; nop +00000cf: 0a ; nop +00000d0: 0a ; nop +00000d1: 0a ; nop +00000d2: 0a ; nop +00000d3: 0a ; nop +00000d4: 0a ; nop +00000d5: 0a ; nop +00000d6: 0a ; nop +00000d7: 0a ; nop +00000d8: 0a ; nop +00000d9: 0a ; nop +00000da: 0a ; nop +00000db: 0a ; nop +00000dc: 0a ; nop +00000dd: 0a ; nop +00000de: 0a ; nop +00000df: 0a ; nop +00000e0: 0a ; nop +00000e1: 0a ; nop +00000e2: 0a ; nop +00000e3: 0a ; nop +00000e4: 0a ; nop +00000e5: 0a ; nop +00000e6: 0a ; nop +00000e7: 0a ; nop +00000e8: 0a ; nop +00000e9: 0a ; nop +00000ea: 0a ; nop +00000eb: 0a ; nop +00000ec: 0a ; nop +00000ed: 0a ; nop +00000ee: 0a ; nop +00000ef: 0a ; nop +00000f0: 0a ; nop +00000f1: 0a ; nop +00000f2: 0a ; nop +00000f3: 0a ; nop +00000f4: 0a ; nop +00000f5: 0a ; nop +00000f6: 0a ; nop +00000f7: 0a ; nop +00000f8: 0a ; nop +00000f9: 0a ; nop +00000fa: 0a ; nop +00000fb: 0a ; nop +00000fc: 0a ; nop +00000fd: 0a ; nop +00000fe: 0a ; nop +00000ff: 0a ; nop +0000100: 0a ; nop +0000101: 0a ; nop +0000102: 0a ; nop +0000103: 0a ; nop +0000104: 0a ; nop +0000105: 0a ; nop +0000106: 0a ; nop +0000107: 0a ; nop +0000108: 0a ; nop +0000109: 0a ; nop +000010a: 0a ; nop +000010b: 0a ; nop +000010c: 0a ; nop +000010d: 0a ; nop +000010e: 0a ; nop +000010f: 0a ; nop +0000110: 0a ; nop +0000111: 0a ; nop +0000112: 0a ; nop +0000113: 0a ; nop +0000114: 0a ; nop +0000115: 0a ; nop +0000116: 0a ; nop +0000117: 0a ; nop +0000118: 0a ; nop +0000119: 0a ; nop +000011a: 0f ; end +000011b: 0f ; end ; move data: [16, 11c) -> [17, 11d) -0000015: 8602 ; FIXUP func body size +0000015: 8602 ; FIXUP func body size ; move data: [14, 11d) -> [15, 11e) -0000013: 8902 ; FIXUP section size +0000013: 8902 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a89 0201 8602 0001 000a 0a0a 0a0a -0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a89 0201 8602 0001 000a 0a0a 0a0a +0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0f0f ;;; STDOUT ;;) diff --git a/test/dump/block.txt b/test/dump/block.txt index e6aa6e28..d2ab54f7 100644 --- a/test/dump/block.txt +++ b/test/dump/block.txt @@ -10,57 +10,57 @@ (block i32 (i32.const 1)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 02 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 02 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results ; type 1 -000000e: 40 ; function form -000000f: 00 ; num params -0000010: 01 ; num results -0000011: 01 ; result type -0000009: 08 ; FIXUP section size +000000e: 40 ; function form +000000f: 00 ; num params +0000010: 01 ; num results +0000011: 01 ; result type +0000009: 08 ; FIXUP section size ; section "FUNCTION" (3) -0000012: 03 ; section code -0000013: 00 ; section size (guess) -0000014: 02 ; num functions -0000015: 00 ; function 0 signature index -0000016: 01 ; function 1 signature index -0000013: 03 ; FIXUP section size +0000012: 03 ; section code +0000013: 00 ; section size (guess) +0000014: 02 ; num functions +0000015: 00 ; function 0 signature index +0000016: 01 ; function 1 signature index +0000013: 03 ; FIXUP section size ; section "CODE" (10) -0000017: 0a ; section code -0000018: 00 ; section size (guess) -0000019: 02 ; num functions +0000017: 0a ; section code +0000018: 00 ; section size (guess) +0000019: 02 ; num functions ; function body 0 -000001a: 00 ; func body size (guess) -000001b: 00 ; local decl count -000001c: 01 ; block -000001d: 00 ; WASM_TYPE_VOID -000001e: 0a ; nop -000001f: 0a ; nop -0000020: 0a ; nop -0000021: 0f ; end -0000022: 0f ; end -000001a: 08 ; FIXUP func body size +000001a: 00 ; func body size (guess) +000001b: 00 ; local decl count +000001c: 01 ; block +000001d: 00 ; WASM_TYPE_VOID +000001e: 0a ; nop +000001f: 0a ; nop +0000020: 0a ; nop +0000021: 0f ; end +0000022: 0f ; end +000001a: 08 ; FIXUP func body size ; function body 1 -0000023: 00 ; func body size (guess) -0000024: 00 ; local decl count -0000025: 01 ; block -0000026: 01 ; WASM_TYPE_I32 -0000027: 10 ; i32.const -0000028: 01 ; i32 literal -0000029: 0f ; end -000002a: 0f ; end -0000023: 07 ; FIXUP func body size -0000018: 12 ; FIXUP section size +0000023: 00 ; func body size (guess) +0000024: 00 ; local decl count +0000025: 01 ; block +0000026: 01 ; WASM_TYPE_I32 +0000027: 10 ; i32.const +0000028: 01 ; i32 literal +0000029: 0f ; end +000002a: 0f ; end +0000023: 07 ; FIXUP func body size +0000018: 12 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0108 0240 0000 4000 -0000010: 0101 0303 0200 010a 1202 0800 0100 0a0a -0000020: 0a0f 0f07 0001 0110 010f 0f +0000000: 0061 736d 0c00 0000 0108 0240 0000 4000 +0000010: 0101 0303 0200 010a 1202 0800 0100 0a0a +0000020: 0a0f 0f07 0001 0110 010f 0f ;;; STDOUT ;;) diff --git a/test/dump/br-block-named.txt b/test/dump/br-block-named.txt index 0bfbefb9..f76d1b34 100644 --- a/test/dump/br-block-named.txt +++ b/test/dump/br-block-named.txt @@ -9,54 +9,54 @@ (br $inner) (br $outer))))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 02 ; loop -000001a: 00 ; WASM_TYPE_VOID -000001b: 01 ; block -000001c: 00 ; WASM_TYPE_VOID -000001d: 10 ; i32.const -000001e: 00 ; i32 literal -000001f: 0b ; drop -0000020: 01 ; block -0000021: 00 ; WASM_TYPE_VOID -0000022: 06 ; br -0000023: 00 ; break depth -0000024: 06 ; br -0000025: 03 ; break depth -0000026: 0f ; end -0000027: 0f ; end -0000028: 0f ; end -0000029: 0f ; end -000002a: 0f ; end -0000015: 15 ; FIXUP func body size -0000013: 17 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 02 ; loop +000001a: 00 ; WASM_TYPE_VOID +000001b: 01 ; block +000001c: 00 ; WASM_TYPE_VOID +000001d: 10 ; i32.const +000001e: 00 ; i32 literal +000001f: 0b ; drop +0000020: 01 ; block +0000021: 00 ; WASM_TYPE_VOID +0000022: 06 ; br +0000023: 00 ; break depth +0000024: 06 ; br +0000025: 03 ; break depth +0000026: 0f ; end +0000027: 0f ; end +0000028: 0f ; end +0000029: 0f ; end +000002a: 0f ; end +0000015: 15 ; FIXUP func body size +0000013: 17 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a17 0115 0001 0002 0001 0010 000b -0000020: 0100 0600 0603 0f0f 0f0f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a17 0115 0001 0002 0001 0010 000b +0000020: 0100 0600 0603 0f0f 0f0f 0f ;;; STDOUT ;;) diff --git a/test/dump/br-block.txt b/test/dump/br-block.txt index 31f63c49..4e447db2 100644 --- a/test/dump/br-block.txt +++ b/test/dump/br-block.txt @@ -11,58 +11,58 @@ (br 2) (br 3))))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 02 ; loop -000001a: 00 ; WASM_TYPE_VOID -000001b: 01 ; block -000001c: 00 ; WASM_TYPE_VOID -000001d: 10 ; i32.const -000001e: 00 ; i32 literal -000001f: 0b ; drop -0000020: 01 ; block -0000021: 00 ; WASM_TYPE_VOID -0000022: 06 ; br -0000023: 00 ; break depth -0000024: 06 ; br -0000025: 01 ; break depth -0000026: 06 ; br -0000027: 02 ; break depth -0000028: 06 ; br -0000029: 03 ; break depth -000002a: 0f ; end -000002b: 0f ; end -000002c: 0f ; end -000002d: 0f ; end -000002e: 0f ; end -0000015: 19 ; FIXUP func body size -0000013: 1b ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 02 ; loop +000001a: 00 ; WASM_TYPE_VOID +000001b: 01 ; block +000001c: 00 ; WASM_TYPE_VOID +000001d: 10 ; i32.const +000001e: 00 ; i32 literal +000001f: 0b ; drop +0000020: 01 ; block +0000021: 00 ; WASM_TYPE_VOID +0000022: 06 ; br +0000023: 00 ; break depth +0000024: 06 ; br +0000025: 01 ; break depth +0000026: 06 ; br +0000027: 02 ; break depth +0000028: 06 ; br +0000029: 03 ; break depth +000002a: 0f ; end +000002b: 0f ; end +000002c: 0f ; end +000002d: 0f ; end +000002e: 0f ; end +0000015: 19 ; FIXUP func body size +0000013: 1b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a1b 0119 0001 0002 0001 0010 000b -0000020: 0100 0600 0601 0602 0603 0f0f 0f0f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a1b 0119 0001 0002 0001 0010 000b +0000020: 0100 0600 0601 0602 0603 0f0f 0f0f 0f ;;; STDOUT ;;) diff --git a/test/dump/br-loop-inner-expr.txt b/test/dump/br-loop-inner-expr.txt index 0f9bb39e..797c2084 100644 --- a/test/dump/br-loop-inner-expr.txt +++ b/test/dump/br-loop-inner-expr.txt @@ -8,61 +8,61 @@ (br $exit (i32.const 4))) (i32.const 5))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "CODE" (10) -0000013: 0a ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num functions +0000013: 0a ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num functions ; function body 0 -0000016: 00 ; func body size (guess) -0000017: 00 ; local decl count -0000018: 01 ; block -0000019: 01 ; WASM_TYPE_I32 -000001a: 02 ; loop -000001b: 01 ; WASM_TYPE_I32 -000001c: 10 ; i32.const -000001d: 01 ; i32 literal -000001e: 03 ; if -000001f: 00 ; WASM_TYPE_VOID -0000020: 06 ; br -0000021: 01 ; break depth -0000022: 0f ; end -0000023: 10 ; i32.const -0000024: 03 ; i32 literal -0000025: 03 ; if -0000026: 00 ; WASM_TYPE_VOID -0000027: 10 ; i32.const -0000028: 04 ; i32 literal -0000029: 06 ; br -000002a: 02 ; break depth -000002b: 0f ; end -000002c: 10 ; i32.const -000002d: 05 ; i32 literal -000002e: 0f ; end -000002f: 0f ; end -0000030: 0f ; end -0000016: 1a ; FIXUP func body size -0000014: 1c ; FIXUP section size +0000016: 00 ; func body size (guess) +0000017: 00 ; local decl count +0000018: 01 ; block +0000019: 01 ; WASM_TYPE_I32 +000001a: 02 ; loop +000001b: 01 ; WASM_TYPE_I32 +000001c: 10 ; i32.const +000001d: 01 ; i32 literal +000001e: 03 ; if +000001f: 00 ; WASM_TYPE_VOID +0000020: 06 ; br +0000021: 01 ; break depth +0000022: 0f ; end +0000023: 10 ; i32.const +0000024: 03 ; i32 literal +0000025: 03 ; if +0000026: 00 ; WASM_TYPE_VOID +0000027: 10 ; i32.const +0000028: 04 ; i32 literal +0000029: 06 ; br +000002a: 02 ; break depth +000002b: 0f ; end +000002c: 10 ; i32.const +000002d: 05 ; i32 literal +000002e: 0f ; end +000002f: 0f ; end +0000030: 0f ; end +0000016: 1a ; FIXUP func body size +0000014: 1c ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 -0000010: 0201 000a 1c01 1a00 0101 0201 1001 0300 -0000020: 0601 0f10 0303 0010 0406 020f 1005 0f0f -0000030: 0f +0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 +0000010: 0201 000a 1c01 1a00 0101 0201 1001 0300 +0000020: 0601 0f10 0303 0010 0406 020f 1005 0f0f +0000030: 0f ;;; STDOUT ;;) diff --git a/test/dump/br-loop-inner.txt b/test/dump/br-loop-inner.txt index 283cce4a..8d5301aa 100644 --- a/test/dump/br-loop-inner.txt +++ b/test/dump/br-loop-inner.txt @@ -7,55 +7,55 @@ (if (i32.const 2) (br $cont)))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 02 ; loop -000001a: 00 ; WASM_TYPE_VOID -000001b: 10 ; i32.const -000001c: 01 ; i32 literal -000001d: 03 ; if -000001e: 00 ; WASM_TYPE_VOID -000001f: 06 ; br -0000020: 02 ; break depth -0000021: 0f ; end -0000022: 10 ; i32.const -0000023: 02 ; i32 literal -0000024: 03 ; if -0000025: 00 ; WASM_TYPE_VOID -0000026: 06 ; br -0000027: 01 ; break depth -0000028: 0f ; end -0000029: 0f ; end -000002a: 0f ; end -000002b: 0f ; end -0000015: 16 ; FIXUP func body size -0000013: 18 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 02 ; loop +000001a: 00 ; WASM_TYPE_VOID +000001b: 10 ; i32.const +000001c: 01 ; i32 literal +000001d: 03 ; if +000001e: 00 ; WASM_TYPE_VOID +000001f: 06 ; br +0000020: 02 ; break depth +0000021: 0f ; end +0000022: 10 ; i32.const +0000023: 02 ; i32 literal +0000024: 03 ; if +0000025: 00 ; WASM_TYPE_VOID +0000026: 06 ; br +0000027: 01 ; break depth +0000028: 0f ; end +0000029: 0f ; end +000002a: 0f ; end +000002b: 0f ; end +0000015: 16 ; FIXUP func body size +0000013: 18 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a18 0116 0001 0002 0010 0103 0006 -0000020: 020f 1002 0300 0601 0f0f 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a18 0116 0001 0002 0010 0103 0006 +0000020: 020f 1002 0300 0601 0f0f 0f0f ;;; STDOUT ;;) diff --git a/test/dump/br-loop.txt b/test/dump/br-loop.txt index fee84658..79bb7897 100644 --- a/test/dump/br-loop.txt +++ b/test/dump/br-loop.txt @@ -5,45 +5,45 @@ (if (i32.const 1) (br $cont))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 02 ; loop -0000018: 00 ; WASM_TYPE_VOID -0000019: 10 ; i32.const -000001a: 01 ; i32 literal -000001b: 03 ; if -000001c: 00 ; WASM_TYPE_VOID -000001d: 06 ; br -000001e: 01 ; break depth -000001f: 0f ; end -0000020: 0f ; end -0000021: 0f ; end -0000015: 0c ; FIXUP func body size -0000013: 0e ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 02 ; loop +0000018: 00 ; WASM_TYPE_VOID +0000019: 10 ; i32.const +000001a: 01 ; i32 literal +000001b: 03 ; if +000001c: 00 ; WASM_TYPE_VOID +000001d: 06 ; br +000001e: 01 ; break depth +000001f: 0f ; end +0000020: 0f ; end +0000021: 0f ; end +0000015: 0c ; FIXUP func body size +0000013: 0e ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0e 010c 0002 0010 0103 0006 010f -0000020: 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0e 010c 0002 0010 0103 0006 010f +0000020: 0f0f ;;; STDOUT ;;) diff --git a/test/dump/brif-loop.txt b/test/dump/brif-loop.txt index 401bdb82..eb35b46e 100644 --- a/test/dump/brif-loop.txt +++ b/test/dump/brif-loop.txt @@ -4,41 +4,41 @@ (loop $cont (br_if $cont (i32.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 02 ; loop -0000018: 00 ; WASM_TYPE_VOID -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 07 ; br_if -000001c: 00 ; break depth -000001d: 0f ; end -000001e: 0f ; end -0000015: 09 ; FIXUP func body size -0000013: 0b ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 02 ; loop +0000018: 00 ; WASM_TYPE_VOID +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 07 ; br_if +000001c: 00 ; break depth +000001d: 0f ; end +000001e: 0f ; end +0000015: 09 ; FIXUP func body size +0000013: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0b 0109 0002 0010 0007 000f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0b 0109 0002 0010 0007 000f 0f ;;; STDOUT ;;) diff --git a/test/dump/brif.txt b/test/dump/brif.txt index 0710d737..47e7db62 100644 --- a/test/dump/brif.txt +++ b/test/dump/brif.txt @@ -4,41 +4,41 @@ (block $foo (br_if $foo (i32.const 1))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 10 ; i32.const -000001a: 01 ; i32 literal -000001b: 07 ; br_if -000001c: 00 ; break depth -000001d: 0f ; end -000001e: 0f ; end -0000015: 09 ; FIXUP func body size -0000013: 0b ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 10 ; i32.const +000001a: 01 ; i32 literal +000001b: 07 ; br_if +000001c: 00 ; break depth +000001d: 0f ; end +000001e: 0f ; end +0000015: 09 ; FIXUP func body size +0000013: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0b 0109 0001 0010 0107 000f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0b 0109 0001 0010 0107 000f 0f ;;; STDOUT ;;) diff --git a/test/dump/brtable-empty.txt b/test/dump/brtable-empty.txt index 337d40eb..6427ea94 100644 --- a/test/dump/brtable-empty.txt +++ b/test/dump/brtable-empty.txt @@ -4,42 +4,42 @@ (block (br_table 0 (i32.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 08 ; br_table -000001c: 00 ; num targets -000001d: 00 ; break depth for default -000001e: 0f ; end -000001f: 0f ; end -0000015: 0a ; FIXUP func body size -0000013: 0c ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 08 ; br_table +000001c: 00 ; num targets +000001d: 00 ; break depth for default +000001e: 0f ; end +000001f: 0f ; end +0000015: 0a ; FIXUP func body size +0000013: 0c ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0c 010a 0001 0010 0008 0000 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0c 010a 0001 0010 0008 0000 0f0f ;;; STDOUT ;;) diff --git a/test/dump/brtable.txt b/test/dump/brtable.txt index 302e9f53..c32fe0e3 100644 --- a/test/dump/brtable.txt +++ b/test/dump/brtable.txt @@ -14,63 +14,63 @@ ) (drop (i32.const 3)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 01 ; block -000001a: 00 ; WASM_TYPE_VOID -000001b: 01 ; block -000001c: 00 ; WASM_TYPE_VOID -000001d: 10 ; i32.const -000001e: 00 ; i32 literal -000001f: 08 ; br_table -0000020: 02 ; num targets -0000021: 00 ; break depth -0000022: 01 ; break depth -0000023: 00 ; break depth for default -0000024: 0f ; end -0000025: 10 ; i32.const -0000026: 01 ; i32 literal -0000027: 0b ; drop -0000028: 10 ; i32.const -0000029: 02 ; i32 literal -000002a: 0b ; drop -000002b: 06 ; br -000002c: 01 ; break depth -000002d: 0f ; end -000002e: 0f ; end -000002f: 10 ; i32.const -0000030: 03 ; i32 literal -0000031: 0b ; drop -0000032: 0f ; end -0000015: 1d ; FIXUP func body size -0000013: 1f ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 01 ; block +000001a: 00 ; WASM_TYPE_VOID +000001b: 01 ; block +000001c: 00 ; WASM_TYPE_VOID +000001d: 10 ; i32.const +000001e: 00 ; i32 literal +000001f: 08 ; br_table +0000020: 02 ; num targets +0000021: 00 ; break depth +0000022: 01 ; break depth +0000023: 00 ; break depth for default +0000024: 0f ; end +0000025: 10 ; i32.const +0000026: 01 ; i32 literal +0000027: 0b ; drop +0000028: 10 ; i32.const +0000029: 02 ; i32 literal +000002a: 0b ; drop +000002b: 06 ; br +000002c: 01 ; break depth +000002d: 0f ; end +000002e: 0f ; end +000002f: 10 ; i32.const +0000030: 03 ; i32 literal +0000031: 0b ; drop +0000032: 0f ; end +0000015: 1d ; FIXUP func body size +0000013: 1f ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a1f 011d 0001 0001 0001 0010 0008 -0000020: 0200 0100 0f10 010b 1002 0b06 010f 0f10 -0000030: 030b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a1f 011d 0001 0001 0001 0010 0008 +0000020: 0200 0100 0f10 010b 1002 0b06 010f 0f10 +0000030: 030b 0f ;;; STDOUT ;;) diff --git a/test/dump/call.txt b/test/dump/call.txt index 5417b244..c02c5698 100644 --- a/test/dump/call.txt +++ b/test/dump/call.txt @@ -3,39 +3,39 @@ (func (param i32) (call 0 (i32.const 1)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "CODE" (10) -0000013: 0a ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num functions +0000013: 0a ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num functions ; function body 0 -0000016: 00 ; func body size (guess) -0000017: 00 ; local decl count -0000018: 10 ; i32.const -0000019: 01 ; i32 literal -000001a: 16 ; call -000001b: 00 ; func index -000001c: 0f ; end -0000016: 06 ; FIXUP func body size -0000014: 08 ; FIXUP section size +0000016: 00 ; func body size (guess) +0000017: 00 ; local decl count +0000018: 10 ; i32.const +0000019: 01 ; i32 literal +000001a: 16 ; call +000001b: 00 ; func index +000001c: 0f ; end +0000016: 06 ; FIXUP func body size +0000014: 08 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 -0000010: 0201 000a 0801 0600 1001 1600 0f +0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 +0000010: 0201 000a 0801 0600 1001 1600 0f ;;; STDOUT ;;) diff --git a/test/dump/callimport.txt b/test/dump/callimport.txt index 782b3253..28c32f15 100644 --- a/test/dump/callimport.txt +++ b/test/dump/callimport.txt @@ -7,65 +7,65 @@ ;; call local func (call 1))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 02 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 02 ; num types ; type 0 -000000b: 40 ; function form -000000c: 02 ; num params -000000d: 01 ; param type -000000e: 03 ; param type -000000f: 01 ; num results -0000010: 01 ; result type +000000b: 40 ; function form +000000c: 02 ; num params +000000d: 01 ; param type +000000e: 03 ; param type +000000f: 01 ; num results +0000010: 01 ; result type ; type 1 -0000011: 40 ; function form -0000012: 00 ; num params -0000013: 01 ; num results -0000014: 01 ; result type -0000009: 0b ; FIXUP section size +0000011: 40 ; function form +0000012: 00 ; num params +0000013: 01 ; num results +0000014: 01 ; result type +0000009: 0b ; FIXUP section size ; section "IMPORT" (2) -0000015: 02 ; section code -0000016: 00 ; section size (guess) -0000017: 01 ; num imports +0000015: 02 ; section code +0000016: 00 ; section size (guess) +0000017: 01 ; num imports ; import header 0 -0000018: 03 ; string length +0000018: 03 ; string length 0000019: 666f 6f foo ; import module name -000001c: 03 ; string length +000001c: 03 ; string length 000001d: 6261 72 bar ; import field name -0000020: 00 ; import kind -0000021: 00 ; import signature index -0000016: 0b ; FIXUP section size +0000020: 00 ; import kind +0000021: 00 ; import signature index +0000016: 0b ; FIXUP section size ; section "FUNCTION" (3) -0000022: 03 ; section code -0000023: 00 ; section size (guess) -0000024: 01 ; num functions -0000025: 01 ; function 0 signature index -0000023: 02 ; FIXUP section size +0000022: 03 ; section code +0000023: 00 ; section size (guess) +0000024: 01 ; num functions +0000025: 01 ; function 0 signature index +0000023: 02 ; FIXUP section size ; section "CODE" (10) -0000026: 0a ; section code -0000027: 00 ; section size (guess) -0000028: 01 ; num functions +0000026: 0a ; section code +0000027: 00 ; section size (guess) +0000028: 01 ; num functions ; function body 0 -0000029: 00 ; func body size (guess) -000002a: 00 ; local decl count -000002b: 10 ; i32.const -000002c: 01 ; i32 literal -000002d: 13 ; f32.const -000002e: 0000 0040 ; f32 literal -0000032: 16 ; call -0000033: 00 ; func index -0000034: 0b ; drop -0000035: 16 ; call -0000036: 01 ; func index -0000037: 0f ; end -0000029: 0e ; FIXUP func body size -0000027: 10 ; FIXUP section size +0000029: 00 ; func body size (guess) +000002a: 00 ; local decl count +000002b: 10 ; i32.const +000002c: 01 ; i32 literal +000002d: 13 ; f32.const +000002e: 0000 0040 ; f32 literal +0000032: 16 ; call +0000033: 00 ; func index +0000034: 0b ; drop +0000035: 16 ; call +0000036: 01 ; func index +0000037: 0f ; end +0000029: 0e ; FIXUP func body size +0000027: 10 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 010b 0240 0201 0301 -0000010: 0140 0001 0102 0b01 0366 6f6f 0362 6172 -0000020: 0000 0302 0101 0a10 010e 0010 0113 0000 -0000030: 0040 1600 0b16 010f +0000000: 0061 736d 0c00 0000 010b 0240 0201 0301 +0000010: 0140 0001 0102 0b01 0366 6f6f 0362 6172 +0000020: 0000 0302 0101 0a10 010e 0010 0113 0000 +0000030: 0040 1600 0b16 010f ;;; STDOUT ;;) diff --git a/test/dump/callindirect.txt b/test/dump/callindirect.txt index 5dc123fe..3d25f561 100644 --- a/test/dump/callindirect.txt +++ b/test/dump/callindirect.txt @@ -5,64 +5,64 @@ (call_indirect $t (i32.const 0) (i32.const 0))) (table anyfunc (elem $f))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "TABLE" (4) -0000013: 04 ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num tables +0000013: 04 ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num tables ; table 0 -0000016: 20 ; table elem type -0000017: 01 ; table flags -0000018: 01 ; table initial elems -0000019: 01 ; table max elems -0000014: 05 ; FIXUP section size +0000016: 20 ; table elem type +0000017: 01 ; table flags +0000018: 01 ; table initial elems +0000019: 01 ; table max elems +0000014: 05 ; FIXUP section size ; section "ELEM" (9) -000001a: 09 ; section code -000001b: 00 ; section size (guess) -000001c: 01 ; num elem segments +000001a: 09 ; section code +000001b: 00 ; section size (guess) +000001c: 01 ; num elem segments ; elem segment header 0 -000001d: 00 ; table index -000001e: 10 ; i32.const -000001f: 00 ; i32 literal -0000020: 0f ; end -0000021: 01 ; num function indices -0000022: 00 ; function index -000001b: 07 ; FIXUP section size +000001d: 00 ; table index +000001e: 10 ; i32.const +000001f: 00 ; i32 literal +0000020: 0f ; end +0000021: 01 ; num function indices +0000022: 00 ; function index +000001b: 07 ; FIXUP section size ; section "CODE" (10) -0000023: 0a ; section code -0000024: 00 ; section size (guess) -0000025: 01 ; num functions +0000023: 0a ; section code +0000024: 00 ; section size (guess) +0000025: 01 ; num functions ; function body 0 -0000026: 00 ; func body size (guess) -0000027: 00 ; local decl count -0000028: 10 ; i32.const -0000029: 00 ; i32 literal -000002a: 10 ; i32.const -000002b: 00 ; i32 literal -000002c: 17 ; call_indirect -000002d: 00 ; signature index -000002e: 0f ; end -0000026: 08 ; FIXUP func body size -0000024: 0a ; FIXUP section size +0000026: 00 ; func body size (guess) +0000027: 00 ; local decl count +0000028: 10 ; i32.const +0000029: 00 ; i32 literal +000002a: 10 ; i32.const +000002b: 00 ; i32 literal +000002c: 17 ; call_indirect +000002d: 00 ; signature index +000002e: 0f ; end +0000026: 08 ; FIXUP func body size +0000024: 0a ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 -0000010: 0201 0004 0501 2001 0101 0907 0100 1000 -0000020: 0f01 000a 0a01 0800 1000 1000 1700 0f +0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 +0000010: 0201 0004 0501 2001 0101 0907 0100 1000 +0000020: 0f01 000a 0a01 0800 1000 1000 1700 0f ;;; STDOUT ;;) diff --git a/test/dump/cast.txt b/test/dump/cast.txt index 17dcf411..39a1c8bb 100644 --- a/test/dump/cast.txt +++ b/test/dump/cast.txt @@ -6,52 +6,52 @@ (drop (f64.reinterpret/i64 (i64.const 0))) (drop (i64.reinterpret/f64 (f64.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: ad ; f32.reinterpret/i32 -000001a: 0b ; drop -000001b: 13 ; f32.const -000001c: 0000 0000 ; f32 literal -0000020: b4 ; i32.reinterpret/f32 -0000021: 0b ; drop -0000022: 11 ; i64.const -0000023: 00 ; i64 literal -0000024: b3 ; f64.reinterpret/i64 -0000025: 0b ; drop -0000026: 12 ; f64.const -0000027: 0000 0000 0000 0000 ; f64 literal -000002f: b5 ; i64.reinterpret/f64 -0000030: 0b ; drop -0000031: 0f ; end -0000015: 1c ; FIXUP func body size -0000013: 1e ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: ad ; f32.reinterpret/i32 +000001a: 0b ; drop +000001b: 13 ; f32.const +000001c: 0000 0000 ; f32 literal +0000020: b4 ; i32.reinterpret/f32 +0000021: 0b ; drop +0000022: 11 ; i64.const +0000023: 00 ; i64 literal +0000024: b3 ; f64.reinterpret/i64 +0000025: 0b ; drop +0000026: 12 ; f64.const +0000027: 0000 0000 0000 0000 ; f64 literal +000002f: b5 ; i64.reinterpret/f64 +0000030: 0b ; drop +0000031: 0f ; end +0000015: 1c ; FIXUP func body size +0000013: 1e ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a1e 011c 0010 00ad 0b13 0000 0000 -0000020: b40b 1100 b30b 1200 0000 0000 0000 00b5 -0000030: 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a1e 011c 0010 00ad 0b13 0000 0000 +0000020: b40b 1100 b30b 1200 0000 0000 0000 00b5 +0000030: 0b0f ;;; STDOUT ;;) diff --git a/test/dump/compare.txt b/test/dump/compare.txt index 57eb7ef0..4565a3d8 100644 --- a/test/dump/compare.txt +++ b/test/dump/compare.txt @@ -51,219 +51,219 @@ (drop (f64.gt (f64.const 0) (f64.const 0))) (drop (f64.ge (f64.const 0) (f64.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 56 ; i32.ge_u -000001c: 10 ; i32.const -000001d: 00 ; i32 literal -000001e: 54 ; i32.ge_s -000001f: 10 ; i32.const -0000020: 00 ; i32 literal -0000021: 55 ; i32.gt_u -0000022: 10 ; i32.const -0000023: 00 ; i32 literal -0000024: 53 ; i32.gt_s -0000025: 10 ; i32.const -0000026: 00 ; i32 literal -0000027: 52 ; i32.le_u -0000028: 10 ; i32.const -0000029: 00 ; i32 literal -000002a: 50 ; i32.le_s -000002b: 10 ; i32.const -000002c: 00 ; i32 literal -000002d: 51 ; i32.lt_u -000002e: 10 ; i32.const -000002f: 00 ; i32 literal -0000030: 4f ; i32.lt_s -0000031: 10 ; i32.const -0000032: 00 ; i32 literal -0000033: 4e ; i32.ne -0000034: 10 ; i32.const -0000035: 00 ; i32 literal -0000036: 4d ; i32.eq -0000037: 0b ; drop -0000038: 11 ; i64.const -0000039: 00 ; i64 literal -000003a: 11 ; i64.const -000003b: 00 ; i64 literal -000003c: 68 ; i64.eq -000003d: 0b ; drop -000003e: 11 ; i64.const -000003f: 00 ; i64 literal -0000040: 11 ; i64.const -0000041: 00 ; i64 literal -0000042: 69 ; i64.ne -0000043: 0b ; drop -0000044: 11 ; i64.const -0000045: 00 ; i64 literal -0000046: 11 ; i64.const -0000047: 00 ; i64 literal -0000048: 6a ; i64.lt_s -0000049: 0b ; drop -000004a: 11 ; i64.const -000004b: 00 ; i64 literal -000004c: 11 ; i64.const -000004d: 00 ; i64 literal -000004e: 6c ; i64.lt_u -000004f: 0b ; drop -0000050: 11 ; i64.const -0000051: 00 ; i64 literal -0000052: 11 ; i64.const -0000053: 00 ; i64 literal -0000054: 6b ; i64.le_s -0000055: 0b ; drop -0000056: 11 ; i64.const -0000057: 00 ; i64 literal -0000058: 11 ; i64.const -0000059: 00 ; i64 literal -000005a: 6d ; i64.le_u -000005b: 0b ; drop -000005c: 11 ; i64.const -000005d: 00 ; i64 literal -000005e: 11 ; i64.const -000005f: 00 ; i64 literal -0000060: 6e ; i64.gt_s -0000061: 0b ; drop -0000062: 11 ; i64.const -0000063: 00 ; i64 literal -0000064: 11 ; i64.const -0000065: 00 ; i64 literal -0000066: 70 ; i64.gt_u -0000067: 0b ; drop -0000068: 11 ; i64.const -0000069: 00 ; i64 literal -000006a: 11 ; i64.const -000006b: 00 ; i64 literal -000006c: 6f ; i64.ge_s -000006d: 0b ; drop -000006e: 11 ; i64.const -000006f: 00 ; i64 literal -0000070: 11 ; i64.const -0000071: 00 ; i64 literal -0000072: 71 ; i64.ge_u -0000073: 0b ; drop -0000074: 13 ; f32.const -0000075: 0000 0000 ; f32 literal -0000079: 13 ; f32.const -000007a: 0000 0000 ; f32 literal -000007e: 83 ; f32.eq -000007f: 0b ; drop -0000080: 13 ; f32.const -0000081: 0000 0000 ; f32 literal -0000085: 13 ; f32.const -0000086: 0000 0000 ; f32 literal -000008a: 84 ; f32.ne -000008b: 0b ; drop -000008c: 13 ; f32.const -000008d: 0000 0000 ; f32 literal -0000091: 13 ; f32.const -0000092: 0000 0000 ; f32 literal -0000096: 85 ; f32.lt -0000097: 0b ; drop -0000098: 13 ; f32.const -0000099: 0000 0000 ; f32 literal -000009d: 13 ; f32.const -000009e: 0000 0000 ; f32 literal -00000a2: 86 ; f32.le -00000a3: 0b ; drop -00000a4: 13 ; f32.const -00000a5: 0000 0000 ; f32 literal -00000a9: 13 ; f32.const -00000aa: 0000 0000 ; f32 literal -00000ae: 87 ; f32.gt -00000af: 0b ; drop -00000b0: 13 ; f32.const -00000b1: 0000 0000 ; f32 literal -00000b5: 13 ; f32.const -00000b6: 0000 0000 ; f32 literal -00000ba: 88 ; f32.ge -00000bb: 0b ; drop -00000bc: 12 ; f64.const -00000bd: 0000 0000 0000 0000 ; f64 literal -00000c5: 12 ; f64.const -00000c6: 0000 0000 0000 0000 ; f64 literal -00000ce: 97 ; f64.eq -00000cf: 0b ; drop -00000d0: 12 ; f64.const -00000d1: 0000 0000 0000 0000 ; f64 literal -00000d9: 12 ; f64.const -00000da: 0000 0000 0000 0000 ; f64 literal -00000e2: 98 ; f64.ne -00000e3: 0b ; drop -00000e4: 12 ; f64.const -00000e5: 0000 0000 0000 0000 ; f64 literal -00000ed: 12 ; f64.const -00000ee: 0000 0000 0000 0000 ; f64 literal -00000f6: 99 ; f64.lt -00000f7: 0b ; drop -00000f8: 12 ; f64.const -00000f9: 0000 0000 0000 0000 ; f64 literal -0000101: 12 ; f64.const -0000102: 0000 0000 0000 0000 ; f64 literal -000010a: 9a ; f64.le -000010b: 0b ; drop -000010c: 12 ; f64.const -000010d: 0000 0000 0000 0000 ; f64 literal -0000115: 12 ; f64.const -0000116: 0000 0000 0000 0000 ; f64 literal -000011e: 9b ; f64.gt -000011f: 0b ; drop -0000120: 12 ; f64.const -0000121: 0000 0000 0000 0000 ; f64 literal -0000129: 12 ; f64.const -000012a: 0000 0000 0000 0000 ; f64 literal -0000132: 9c ; f64.ge -0000133: 0b ; drop -0000134: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 56 ; i32.ge_u +000001c: 10 ; i32.const +000001d: 00 ; i32 literal +000001e: 54 ; i32.ge_s +000001f: 10 ; i32.const +0000020: 00 ; i32 literal +0000021: 55 ; i32.gt_u +0000022: 10 ; i32.const +0000023: 00 ; i32 literal +0000024: 53 ; i32.gt_s +0000025: 10 ; i32.const +0000026: 00 ; i32 literal +0000027: 52 ; i32.le_u +0000028: 10 ; i32.const +0000029: 00 ; i32 literal +000002a: 50 ; i32.le_s +000002b: 10 ; i32.const +000002c: 00 ; i32 literal +000002d: 51 ; i32.lt_u +000002e: 10 ; i32.const +000002f: 00 ; i32 literal +0000030: 4f ; i32.lt_s +0000031: 10 ; i32.const +0000032: 00 ; i32 literal +0000033: 4e ; i32.ne +0000034: 10 ; i32.const +0000035: 00 ; i32 literal +0000036: 4d ; i32.eq +0000037: 0b ; drop +0000038: 11 ; i64.const +0000039: 00 ; i64 literal +000003a: 11 ; i64.const +000003b: 00 ; i64 literal +000003c: 68 ; i64.eq +000003d: 0b ; drop +000003e: 11 ; i64.const +000003f: 00 ; i64 literal +0000040: 11 ; i64.const +0000041: 00 ; i64 literal +0000042: 69 ; i64.ne +0000043: 0b ; drop +0000044: 11 ; i64.const +0000045: 00 ; i64 literal +0000046: 11 ; i64.const +0000047: 00 ; i64 literal +0000048: 6a ; i64.lt_s +0000049: 0b ; drop +000004a: 11 ; i64.const +000004b: 00 ; i64 literal +000004c: 11 ; i64.const +000004d: 00 ; i64 literal +000004e: 6c ; i64.lt_u +000004f: 0b ; drop +0000050: 11 ; i64.const +0000051: 00 ; i64 literal +0000052: 11 ; i64.const +0000053: 00 ; i64 literal +0000054: 6b ; i64.le_s +0000055: 0b ; drop +0000056: 11 ; i64.const +0000057: 00 ; i64 literal +0000058: 11 ; i64.const +0000059: 00 ; i64 literal +000005a: 6d ; i64.le_u +000005b: 0b ; drop +000005c: 11 ; i64.const +000005d: 00 ; i64 literal +000005e: 11 ; i64.const +000005f: 00 ; i64 literal +0000060: 6e ; i64.gt_s +0000061: 0b ; drop +0000062: 11 ; i64.const +0000063: 00 ; i64 literal +0000064: 11 ; i64.const +0000065: 00 ; i64 literal +0000066: 70 ; i64.gt_u +0000067: 0b ; drop +0000068: 11 ; i64.const +0000069: 00 ; i64 literal +000006a: 11 ; i64.const +000006b: 00 ; i64 literal +000006c: 6f ; i64.ge_s +000006d: 0b ; drop +000006e: 11 ; i64.const +000006f: 00 ; i64 literal +0000070: 11 ; i64.const +0000071: 00 ; i64 literal +0000072: 71 ; i64.ge_u +0000073: 0b ; drop +0000074: 13 ; f32.const +0000075: 0000 0000 ; f32 literal +0000079: 13 ; f32.const +000007a: 0000 0000 ; f32 literal +000007e: 83 ; f32.eq +000007f: 0b ; drop +0000080: 13 ; f32.const +0000081: 0000 0000 ; f32 literal +0000085: 13 ; f32.const +0000086: 0000 0000 ; f32 literal +000008a: 84 ; f32.ne +000008b: 0b ; drop +000008c: 13 ; f32.const +000008d: 0000 0000 ; f32 literal +0000091: 13 ; f32.const +0000092: 0000 0000 ; f32 literal +0000096: 85 ; f32.lt +0000097: 0b ; drop +0000098: 13 ; f32.const +0000099: 0000 0000 ; f32 literal +000009d: 13 ; f32.const +000009e: 0000 0000 ; f32 literal +00000a2: 86 ; f32.le +00000a3: 0b ; drop +00000a4: 13 ; f32.const +00000a5: 0000 0000 ; f32 literal +00000a9: 13 ; f32.const +00000aa: 0000 0000 ; f32 literal +00000ae: 87 ; f32.gt +00000af: 0b ; drop +00000b0: 13 ; f32.const +00000b1: 0000 0000 ; f32 literal +00000b5: 13 ; f32.const +00000b6: 0000 0000 ; f32 literal +00000ba: 88 ; f32.ge +00000bb: 0b ; drop +00000bc: 12 ; f64.const +00000bd: 0000 0000 0000 0000 ; f64 literal +00000c5: 12 ; f64.const +00000c6: 0000 0000 0000 0000 ; f64 literal +00000ce: 97 ; f64.eq +00000cf: 0b ; drop +00000d0: 12 ; f64.const +00000d1: 0000 0000 0000 0000 ; f64 literal +00000d9: 12 ; f64.const +00000da: 0000 0000 0000 0000 ; f64 literal +00000e2: 98 ; f64.ne +00000e3: 0b ; drop +00000e4: 12 ; f64.const +00000e5: 0000 0000 0000 0000 ; f64 literal +00000ed: 12 ; f64.const +00000ee: 0000 0000 0000 0000 ; f64 literal +00000f6: 99 ; f64.lt +00000f7: 0b ; drop +00000f8: 12 ; f64.const +00000f9: 0000 0000 0000 0000 ; f64 literal +0000101: 12 ; f64.const +0000102: 0000 0000 0000 0000 ; f64 literal +000010a: 9a ; f64.le +000010b: 0b ; drop +000010c: 12 ; f64.const +000010d: 0000 0000 0000 0000 ; f64 literal +0000115: 12 ; f64.const +0000116: 0000 0000 0000 0000 ; f64 literal +000011e: 9b ; f64.gt +000011f: 0b ; drop +0000120: 12 ; f64.const +0000121: 0000 0000 0000 0000 ; f64 literal +0000129: 12 ; f64.const +000012a: 0000 0000 0000 0000 ; f64 literal +0000132: 9c ; f64.ge +0000133: 0b ; drop +0000134: 0f ; end ; move data: [16, 135) -> [17, 136) -0000015: 9f02 ; FIXUP func body size +0000015: 9f02 ; FIXUP func body size ; move data: [14, 136) -> [15, 137) -0000013: a202 ; FIXUP section size +0000013: a202 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0aa2 0201 9f02 0010 0010 0056 1000 -0000020: 5410 0055 1000 5310 0052 1000 5010 0051 -0000030: 1000 4f10 004e 1000 4d0b 1100 1100 680b -0000040: 1100 1100 690b 1100 1100 6a0b 1100 1100 -0000050: 6c0b 1100 1100 6b0b 1100 1100 6d0b 1100 -0000060: 1100 6e0b 1100 1100 700b 1100 1100 6f0b -0000070: 1100 1100 710b 1300 0000 0013 0000 0000 -0000080: 830b 1300 0000 0013 0000 0000 840b 1300 -0000090: 0000 0013 0000 0000 850b 1300 0000 0013 -00000a0: 0000 0000 860b 1300 0000 0013 0000 0000 -00000b0: 870b 1300 0000 0013 0000 0000 880b 1200 -00000c0: 0000 0000 0000 0012 0000 0000 0000 0000 -00000d0: 970b 1200 0000 0000 0000 0012 0000 0000 -00000e0: 0000 0000 980b 1200 0000 0000 0000 0012 -00000f0: 0000 0000 0000 0000 990b 1200 0000 0000 -0000100: 0000 0012 0000 0000 0000 0000 9a0b 1200 -0000110: 0000 0000 0000 0012 0000 0000 0000 0000 -0000120: 9b0b 1200 0000 0000 0000 0012 0000 0000 -0000130: 0000 0000 9c0b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0aa2 0201 9f02 0010 0010 0056 1000 +0000020: 5410 0055 1000 5310 0052 1000 5010 0051 +0000030: 1000 4f10 004e 1000 4d0b 1100 1100 680b +0000040: 1100 1100 690b 1100 1100 6a0b 1100 1100 +0000050: 6c0b 1100 1100 6b0b 1100 1100 6d0b 1100 +0000060: 1100 6e0b 1100 1100 700b 1100 1100 6f0b +0000070: 1100 1100 710b 1300 0000 0013 0000 0000 +0000080: 830b 1300 0000 0013 0000 0000 840b 1300 +0000090: 0000 0013 0000 0000 850b 1300 0000 0013 +00000a0: 0000 0000 860b 1300 0000 0013 0000 0000 +00000b0: 870b 1300 0000 0013 0000 0000 880b 1200 +00000c0: 0000 0000 0000 0012 0000 0000 0000 0000 +00000d0: 970b 1200 0000 0000 0000 0012 0000 0000 +00000e0: 0000 0000 980b 1200 0000 0000 0000 0012 +00000f0: 0000 0000 0000 0000 990b 1200 0000 0000 +0000100: 0000 0012 0000 0000 0000 0000 9a0b 1200 +0000110: 0000 0000 0000 0012 0000 0000 0000 0000 +0000120: 9b0b 1200 0000 0000 0000 0012 0000 0000 +0000130: 0000 0000 9c0b 0f ;;; STDOUT ;;) diff --git a/test/dump/const.txt b/test/dump/const.txt index 105f7adf..1d3af3c7 100644 --- a/test/dump/const.txt +++ b/test/dump/const.txt @@ -43,168 +43,168 @@ (drop (f64.const -0x1p-1)) (drop (f64.const 0x1.921fb54442d18p+2)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 0b ; drop -000001a: 10 ; i32.const -000001b: 8080 8080 78 ; i32 literal -0000020: 0b ; drop -0000021: 10 ; i32.const -0000022: 7f ; i32 literal -0000023: 0b ; drop -0000024: 10 ; i32.const -0000025: 8080 8080 78 ; i32 literal -000002a: 0b ; drop -000002b: 10 ; i32.const -000002c: 7f ; i32 literal -000002d: 0b ; drop -000002e: 11 ; i64.const -000002f: 00 ; i64 literal -0000030: 0b ; drop -0000031: 11 ; i64.const -0000032: 8080 8080 8080 8080 807f ; i64 literal -000003c: 0b ; drop -000003d: 11 ; i64.const -000003e: 7f ; i64 literal -000003f: 0b ; drop -0000040: 11 ; i64.const -0000041: 8080 8080 8080 8080 807f ; i64 literal -000004b: 0b ; drop -000004c: 11 ; i64.const -000004d: 7f ; i64 literal -000004e: 0b ; drop -000004f: 13 ; f32.const -0000050: 0000 0000 ; f32 literal -0000054: 0b ; drop -0000055: 13 ; f32.const -0000056: 1668 a965 ; f32 literal -000005a: 0b ; drop -000005b: 13 ; f32.const -000005c: 4020 4f37 ; f32 literal -0000060: 0b ; drop -0000061: 13 ; f32.const -0000062: 0000 c07f ; f32 literal -0000066: 0b ; drop -0000067: 13 ; f32.const -0000068: 0000 c0ff ; f32 literal -000006c: 0b ; drop -000006d: 13 ; f32.const -000006e: 0000 c07f ; f32 literal -0000072: 0b ; drop -0000073: 13 ; f32.const -0000074: bc0a 807f ; f32 literal -0000078: 0b ; drop -0000079: 13 ; f32.const -000007a: bc0a 80ff ; f32 literal -000007e: 0b ; drop -000007f: 13 ; f32.const -0000080: bc0a 807f ; f32 literal -0000084: 0b ; drop -0000085: 13 ; f32.const -0000086: 0000 807f ; f32 literal -000008a: 0b ; drop -000008b: 13 ; f32.const -000008c: 0000 80ff ; f32 literal -0000090: 0b ; drop -0000091: 13 ; f32.const -0000092: 0000 807f ; f32 literal -0000096: 0b ; drop -0000097: 13 ; f32.const -0000098: 0000 00bf ; f32 literal -000009c: 0b ; drop -000009d: 13 ; f32.const -000009e: db0f c940 ; f32 literal -00000a2: 0b ; drop -00000a3: 12 ; f64.const -00000a4: 0000 0000 0000 0000 ; f64 literal -00000ac: 0b ; drop -00000ad: 12 ; f64.const -00000ae: b856 0e3c dd9a efbf ; f64 literal -00000b6: 0b ; drop -00000b7: 12 ; f64.const -00000b8: 182d 4454 fb21 1940 ; f64 literal -00000c0: 0b ; drop -00000c1: 12 ; f64.const -00000c2: 0000 0000 0000 f87f ; f64 literal -00000ca: 0b ; drop -00000cb: 12 ; f64.const -00000cc: 0000 0000 0000 f8ff ; f64 literal -00000d4: 0b ; drop -00000d5: 12 ; f64.const -00000d6: 0000 0000 0000 f87f ; f64 literal -00000de: 0b ; drop -00000df: 12 ; f64.const -00000e0: bc0a 0000 0000 f07f ; f64 literal -00000e8: 0b ; drop -00000e9: 12 ; f64.const -00000ea: bc0a 0000 0000 f0ff ; f64 literal -00000f2: 0b ; drop -00000f3: 12 ; f64.const -00000f4: bc0a 0000 0000 f07f ; f64 literal -00000fc: 0b ; drop -00000fd: 12 ; f64.const -00000fe: 0000 0000 0000 f07f ; f64 literal -0000106: 0b ; drop -0000107: 12 ; f64.const -0000108: 0000 0000 0000 f0ff ; f64 literal -0000110: 0b ; drop -0000111: 12 ; f64.const -0000112: 0000 0000 0000 f07f ; f64 literal -000011a: 0b ; drop -000011b: 12 ; f64.const -000011c: 0000 0000 0000 e0bf ; f64 literal -0000124: 0b ; drop -0000125: 12 ; f64.const -0000126: 182d 4454 fb21 1940 ; f64 literal -000012e: 0b ; drop -000012f: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 0b ; drop +000001a: 10 ; i32.const +000001b: 8080 8080 78 ; i32 literal +0000020: 0b ; drop +0000021: 10 ; i32.const +0000022: 7f ; i32 literal +0000023: 0b ; drop +0000024: 10 ; i32.const +0000025: 8080 8080 78 ; i32 literal +000002a: 0b ; drop +000002b: 10 ; i32.const +000002c: 7f ; i32 literal +000002d: 0b ; drop +000002e: 11 ; i64.const +000002f: 00 ; i64 literal +0000030: 0b ; drop +0000031: 11 ; i64.const +0000032: 8080 8080 8080 8080 807f ; i64 literal +000003c: 0b ; drop +000003d: 11 ; i64.const +000003e: 7f ; i64 literal +000003f: 0b ; drop +0000040: 11 ; i64.const +0000041: 8080 8080 8080 8080 807f ; i64 literal +000004b: 0b ; drop +000004c: 11 ; i64.const +000004d: 7f ; i64 literal +000004e: 0b ; drop +000004f: 13 ; f32.const +0000050: 0000 0000 ; f32 literal +0000054: 0b ; drop +0000055: 13 ; f32.const +0000056: 1668 a965 ; f32 literal +000005a: 0b ; drop +000005b: 13 ; f32.const +000005c: 4020 4f37 ; f32 literal +0000060: 0b ; drop +0000061: 13 ; f32.const +0000062: 0000 c07f ; f32 literal +0000066: 0b ; drop +0000067: 13 ; f32.const +0000068: 0000 c0ff ; f32 literal +000006c: 0b ; drop +000006d: 13 ; f32.const +000006e: 0000 c07f ; f32 literal +0000072: 0b ; drop +0000073: 13 ; f32.const +0000074: bc0a 807f ; f32 literal +0000078: 0b ; drop +0000079: 13 ; f32.const +000007a: bc0a 80ff ; f32 literal +000007e: 0b ; drop +000007f: 13 ; f32.const +0000080: bc0a 807f ; f32 literal +0000084: 0b ; drop +0000085: 13 ; f32.const +0000086: 0000 807f ; f32 literal +000008a: 0b ; drop +000008b: 13 ; f32.const +000008c: 0000 80ff ; f32 literal +0000090: 0b ; drop +0000091: 13 ; f32.const +0000092: 0000 807f ; f32 literal +0000096: 0b ; drop +0000097: 13 ; f32.const +0000098: 0000 00bf ; f32 literal +000009c: 0b ; drop +000009d: 13 ; f32.const +000009e: db0f c940 ; f32 literal +00000a2: 0b ; drop +00000a3: 12 ; f64.const +00000a4: 0000 0000 0000 0000 ; f64 literal +00000ac: 0b ; drop +00000ad: 12 ; f64.const +00000ae: b856 0e3c dd9a efbf ; f64 literal +00000b6: 0b ; drop +00000b7: 12 ; f64.const +00000b8: 182d 4454 fb21 1940 ; f64 literal +00000c0: 0b ; drop +00000c1: 12 ; f64.const +00000c2: 0000 0000 0000 f87f ; f64 literal +00000ca: 0b ; drop +00000cb: 12 ; f64.const +00000cc: 0000 0000 0000 f8ff ; f64 literal +00000d4: 0b ; drop +00000d5: 12 ; f64.const +00000d6: 0000 0000 0000 f87f ; f64 literal +00000de: 0b ; drop +00000df: 12 ; f64.const +00000e0: bc0a 0000 0000 f07f ; f64 literal +00000e8: 0b ; drop +00000e9: 12 ; f64.const +00000ea: bc0a 0000 0000 f0ff ; f64 literal +00000f2: 0b ; drop +00000f3: 12 ; f64.const +00000f4: bc0a 0000 0000 f07f ; f64 literal +00000fc: 0b ; drop +00000fd: 12 ; f64.const +00000fe: 0000 0000 0000 f07f ; f64 literal +0000106: 0b ; drop +0000107: 12 ; f64.const +0000108: 0000 0000 0000 f0ff ; f64 literal +0000110: 0b ; drop +0000111: 12 ; f64.const +0000112: 0000 0000 0000 f07f ; f64 literal +000011a: 0b ; drop +000011b: 12 ; f64.const +000011c: 0000 0000 0000 e0bf ; f64 literal +0000124: 0b ; drop +0000125: 12 ; f64.const +0000126: 182d 4454 fb21 1940 ; f64 literal +000012e: 0b ; drop +000012f: 0f ; end ; move data: [16, 130) -> [17, 131) -0000015: 9a02 ; FIXUP func body size +0000015: 9a02 ; FIXUP func body size ; move data: [14, 131) -> [15, 132) -0000013: 9d02 ; FIXUP section size +0000013: 9d02 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a9d 0201 9a02 0010 000b 1080 8080 -0000020: 8078 0b10 7f0b 1080 8080 8078 0b10 7f0b -0000030: 1100 0b11 8080 8080 8080 8080 807f 0b11 -0000040: 7f0b 1180 8080 8080 8080 8080 7f0b 117f -0000050: 0b13 0000 0000 0b13 1668 a965 0b13 4020 -0000060: 4f37 0b13 0000 c07f 0b13 0000 c0ff 0b13 -0000070: 0000 c07f 0b13 bc0a 807f 0b13 bc0a 80ff -0000080: 0b13 bc0a 807f 0b13 0000 807f 0b13 0000 -0000090: 80ff 0b13 0000 807f 0b13 0000 00bf 0b13 -00000a0: db0f c940 0b12 0000 0000 0000 0000 0b12 -00000b0: b856 0e3c dd9a efbf 0b12 182d 4454 fb21 -00000c0: 1940 0b12 0000 0000 0000 f87f 0b12 0000 -00000d0: 0000 0000 f8ff 0b12 0000 0000 0000 f87f -00000e0: 0b12 bc0a 0000 0000 f07f 0b12 bc0a 0000 -00000f0: 0000 f0ff 0b12 bc0a 0000 0000 f07f 0b12 -0000100: 0000 0000 0000 f07f 0b12 0000 0000 0000 -0000110: f0ff 0b12 0000 0000 0000 f07f 0b12 0000 -0000120: 0000 0000 e0bf 0b12 182d 4454 fb21 1940 -0000130: 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a9d 0201 9a02 0010 000b 1080 8080 +0000020: 8078 0b10 7f0b 1080 8080 8078 0b10 7f0b +0000030: 1100 0b11 8080 8080 8080 8080 807f 0b11 +0000040: 7f0b 1180 8080 8080 8080 8080 7f0b 117f +0000050: 0b13 0000 0000 0b13 1668 a965 0b13 4020 +0000060: 4f37 0b13 0000 c07f 0b13 0000 c0ff 0b13 +0000070: 0000 c07f 0b13 bc0a 807f 0b13 bc0a 80ff +0000080: 0b13 bc0a 807f 0b13 0000 807f 0b13 0000 +0000090: 80ff 0b13 0000 807f 0b13 0000 00bf 0b13 +00000a0: db0f c940 0b12 0000 0000 0000 0000 0b12 +00000b0: b856 0e3c dd9a efbf 0b12 182d 4454 fb21 +00000c0: 1940 0b12 0000 0000 0000 f87f 0b12 0000 +00000d0: 0000 0000 f8ff 0b12 0000 0000 0000 f87f +00000e0: 0b12 bc0a 0000 0000 f07f 0b12 bc0a 0000 +00000f0: 0000 f0ff 0b12 bc0a 0000 0000 f07f 0b12 +0000100: 0000 0000 0000 f07f 0b12 0000 0000 0000 +0000110: f0ff 0b12 0000 0000 0000 f07f 0b12 0000 +0000120: 0000 0000 e0bf 0b12 182d 4454 fb21 1940 +0000130: 0b0f ;;; STDOUT ;;) diff --git a/test/dump/convert.txt b/test/dump/convert.txt index dada8dc1..759c863c 100644 --- a/test/dump/convert.txt +++ b/test/dump/convert.txt @@ -28,66 +28,66 @@ (f32.demote/f64 (f64.promote/f32 (f32.const 0)))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: af ; f64.convert_u/i32 -000001a: a0 ; i32.trunc_u/f64 -000001b: ae ; f64.convert_s/i32 -000001c: 9e ; i32.trunc_s/f64 -000001d: a9 ; f32.convert_u/i32 -000001e: 9f ; i32.trunc_u/f32 -000001f: a8 ; f32.convert_s/i32 -0000020: 9d ; i32.trunc_s/f32 -0000021: a7 ; i64.extend_u/i32 -0000022: a1 ; i32.wrap/i64 -0000023: 0b ; drop -0000024: 10 ; i32.const -0000025: 00 ; i32 literal -0000026: a6 ; i64.extend_s/i32 -0000027: b1 ; f64.convert_u/i64 -0000028: a5 ; i64.trunc_u/f64 -0000029: b0 ; f64.convert_s/i64 -000002a: a3 ; i64.trunc_s/f64 -000002b: ab ; f32.convert_u/i64 -000002c: a4 ; i64.trunc_u/f32 -000002d: aa ; f32.convert_s/i64 -000002e: a2 ; i64.trunc_s/f32 -000002f: 0b ; drop -0000030: 13 ; f32.const -0000031: 0000 0000 ; f32 literal -0000035: b2 ; f64.promote/f32 -0000036: ac ; f32.demote/f64 -0000037: 0b ; drop -0000038: 0f ; end -0000015: 23 ; FIXUP func body size -0000013: 25 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: af ; f64.convert_u/i32 +000001a: a0 ; i32.trunc_u/f64 +000001b: ae ; f64.convert_s/i32 +000001c: 9e ; i32.trunc_s/f64 +000001d: a9 ; f32.convert_u/i32 +000001e: 9f ; i32.trunc_u/f32 +000001f: a8 ; f32.convert_s/i32 +0000020: 9d ; i32.trunc_s/f32 +0000021: a7 ; i64.extend_u/i32 +0000022: a1 ; i32.wrap/i64 +0000023: 0b ; drop +0000024: 10 ; i32.const +0000025: 00 ; i32 literal +0000026: a6 ; i64.extend_s/i32 +0000027: b1 ; f64.convert_u/i64 +0000028: a5 ; i64.trunc_u/f64 +0000029: b0 ; f64.convert_s/i64 +000002a: a3 ; i64.trunc_s/f64 +000002b: ab ; f32.convert_u/i64 +000002c: a4 ; i64.trunc_u/f32 +000002d: aa ; f32.convert_s/i64 +000002e: a2 ; i64.trunc_s/f32 +000002f: 0b ; drop +0000030: 13 ; f32.const +0000031: 0000 0000 ; f32 literal +0000035: b2 ; f64.promote/f32 +0000036: ac ; f32.demote/f64 +0000037: 0b ; drop +0000038: 0f ; end +0000015: 23 ; FIXUP func body size +0000013: 25 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a25 0123 0010 00af a0ae 9ea9 9fa8 -0000020: 9da7 a10b 1000 a6b1 a5b0 a3ab a4aa a20b -0000030: 1300 0000 00b2 ac0b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a25 0123 0010 00af a0ae 9ea9 9fa8 +0000020: 9da7 a10b 1000 a6b1 a5b0 a3ab a4aa a20b +0000030: 1300 0000 00b2 ac0b 0f ;;; STDOUT ;;) diff --git a/test/dump/current-memory.txt b/test/dump/current-memory.txt index 48b92bd8..2e17e13f 100644 --- a/test/dump/current-memory.txt +++ b/test/dump/current-memory.txt @@ -4,44 +4,44 @@ (func (result i32) (current_memory))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "MEMORY" (5) -0000013: 05 ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num memories +0000013: 05 ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num memories ; memory 0 -0000016: 00 ; memory flags -0000017: 01 ; memory initial pages -0000014: 03 ; FIXUP section size +0000016: 00 ; memory flags +0000017: 01 ; memory initial pages +0000014: 03 ; FIXUP section size ; section "CODE" (10) -0000018: 0a ; section code -0000019: 00 ; section size (guess) -000001a: 01 ; num functions +0000018: 0a ; section code +0000019: 00 ; section size (guess) +000001a: 01 ; num functions ; function body 0 -000001b: 00 ; func body size (guess) -000001c: 00 ; local decl count -000001d: 3b ; current_memory -000001e: 0f ; end -000001b: 03 ; FIXUP func body size -0000019: 05 ; FIXUP section size +000001b: 00 ; func body size (guess) +000001c: 00 ; local decl count +000001d: 3b ; current_memory +000001e: 0f ; end +000001b: 03 ; FIXUP func body size +0000019: 05 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 -0000010: 0201 0005 0301 0001 0a05 0103 003b 0f +0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 +0000010: 0201 0005 0301 0001 0a05 0103 003b 0f ;;; STDOUT ;;) diff --git a/test/dump/debug-names.txt b/test/dump/debug-names.txt index 50f84267..af8e960d 100644 --- a/test/dump/debug-names.txt +++ b/test/dump/debug-names.txt @@ -10,86 +10,86 @@ (local i64) (local $F2L3 i64))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 02 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 02 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results ; type 1 -000000f: 40 ; function form -0000010: 01 ; num params -0000011: 03 ; param type -0000012: 00 ; num results -0000009: 09 ; FIXUP section size +000000f: 40 ; function form +0000010: 01 ; num params +0000011: 03 ; param type +0000012: 00 ; num results +0000009: 09 ; FIXUP section size ; section "FUNCTION" (3) -0000013: 03 ; section code -0000014: 00 ; section size (guess) -0000015: 02 ; num functions -0000016: 00 ; function 0 signature index -0000017: 01 ; function 1 signature index -0000014: 03 ; FIXUP section size +0000013: 03 ; section code +0000014: 00 ; section size (guess) +0000015: 02 ; num functions +0000016: 00 ; function 0 signature index +0000017: 01 ; function 1 signature index +0000014: 03 ; FIXUP section size ; section "CODE" (10) -0000018: 0a ; section code -0000019: 00 ; section size (guess) -000001a: 02 ; num functions +0000018: 0a ; section code +0000019: 00 ; section size (guess) +000001a: 02 ; num functions ; function body 0 -000001b: 00 ; func body size (guess) -000001c: 02 ; local decl count -000001d: 01 ; local type count -000001e: 03 ; WASM_TYPE_F32 -000001f: 02 ; local type count -0000020: 01 ; WASM_TYPE_I32 -0000021: 0f ; end -000001b: 06 ; FIXUP func body size +000001b: 00 ; func body size (guess) +000001c: 02 ; local decl count +000001d: 01 ; local type count +000001e: 03 ; WASM_TYPE_F32 +000001f: 02 ; local type count +0000020: 01 ; WASM_TYPE_I32 +0000021: 0f ; end +000001b: 06 ; FIXUP func body size ; function body 1 -0000022: 00 ; func body size (guess) -0000023: 02 ; local decl count -0000024: 01 ; local type count -0000025: 04 ; WASM_TYPE_F64 -0000026: 02 ; local type count -0000027: 02 ; WASM_TYPE_I64 -0000028: 0f ; end -0000022: 06 ; FIXUP func body size -0000019: 0f ; FIXUP section size +0000022: 00 ; func body size (guess) +0000023: 02 ; local decl count +0000024: 01 ; local type count +0000025: 04 ; WASM_TYPE_F64 +0000026: 02 ; local type count +0000027: 02 ; WASM_TYPE_I64 +0000028: 0f ; end +0000022: 06 ; FIXUP func body size +0000019: 0f ; FIXUP section size ; section "name" -0000029: 00 ; user section code -000002a: 00 ; section size (guess) -000002b: 04 ; string length +0000029: 00 ; user section code +000002a: 00 ; section size (guess) +000002b: 04 ; string length 000002c: 6e61 6d65 name ; user section name -0000030: 02 ; num functions -0000031: 03 ; string length +0000030: 02 ; num functions +0000031: 03 ; string length 0000032: 2446 31 $F1 ; func name 0 -0000035: 04 ; num locals -0000036: 05 ; string length +0000035: 04 ; num locals +0000036: 05 ; string length 0000037: 2446 3150 30 $F1P0 ; local name 0 -000003c: 05 ; string length +000003c: 05 ; string length 000003d: 2446 314c 31 $F1L1 ; local name 1 -0000042: 05 ; string length +0000042: 05 ; string length 0000043: 2446 314c 32 $F1L2 ; local name 2 -0000048: 00 ; string length -0000049: 03 ; string length +0000048: 00 ; string length +0000049: 03 ; string length 000004a: 2446 32 $F2 ; func name 1 -000004d: 04 ; num locals -000004e: 05 ; string length +000004d: 04 ; num locals +000004e: 05 ; string length 000004f: 2446 3250 30 $F2P0 ; local name 0 -0000054: 05 ; string length +0000054: 05 ; string length 0000055: 2446 324c 31 $F2L1 ; local name 1 -000005a: 00 ; string length -000005b: 05 ; string length +000005a: 00 ; string length +000005b: 05 ; string length 000005c: 2446 324c 33 $F2L3 ; local name 3 -000002a: 36 ; FIXUP section size +000002a: 36 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0109 0240 0101 0040 -0000010: 0103 0003 0302 0001 0a0f 0206 0201 0302 -0000020: 010f 0602 0104 0202 0f00 3604 6e61 6d65 -0000030: 0203 2446 3104 0524 4631 5030 0524 4631 -0000040: 4c31 0524 4631 4c32 0003 2446 3204 0524 -0000050: 4632 5030 0524 4632 4c31 0005 2446 324c -0000060: 33 +0000000: 0061 736d 0c00 0000 0109 0240 0101 0040 +0000010: 0103 0003 0302 0001 0a0f 0206 0201 0302 +0000020: 010f 0602 0104 0202 0f00 3604 6e61 6d65 +0000030: 0203 2446 3104 0524 4631 5030 0524 4631 +0000040: 4c31 0524 4631 4c32 0003 2446 3204 0524 +0000050: 4632 5030 0524 4632 4c31 0005 2446 324c +0000060: 33 ;;; STDOUT ;;) diff --git a/test/dump/dedupe-sig.txt b/test/dump/dedupe-sig.txt index cdac6a6e..3518daaa 100644 --- a/test/dump/dedupe-sig.txt +++ b/test/dump/dedupe-sig.txt @@ -4,51 +4,51 @@ (import "foo" "bar" (func (param i32) (result i64))) (func (param i32) (result i64) (i64.const 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 01 ; num results -000000f: 02 ; result type -0000009: 06 ; FIXUP section size +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 01 ; num results +000000f: 02 ; result type +0000009: 06 ; FIXUP section size ; section "IMPORT" (2) -0000010: 02 ; section code -0000011: 00 ; section size (guess) -0000012: 01 ; num imports +0000010: 02 ; section code +0000011: 00 ; section size (guess) +0000012: 01 ; num imports ; import header 0 -0000013: 03 ; string length +0000013: 03 ; string length 0000014: 666f 6f foo ; import module name -0000017: 03 ; string length +0000017: 03 ; string length 0000018: 6261 72 bar ; import field name -000001b: 00 ; import kind -000001c: 00 ; import signature index -0000011: 0b ; FIXUP section size +000001b: 00 ; import kind +000001c: 00 ; import signature index +0000011: 0b ; FIXUP section size ; section "FUNCTION" (3) -000001d: 03 ; section code -000001e: 00 ; section size (guess) -000001f: 01 ; num functions -0000020: 00 ; function 0 signature index -000001e: 02 ; FIXUP section size +000001d: 03 ; section code +000001e: 00 ; section size (guess) +000001f: 01 ; num functions +0000020: 00 ; function 0 signature index +000001e: 02 ; FIXUP section size ; section "CODE" (10) -0000021: 0a ; section code -0000022: 00 ; section size (guess) -0000023: 01 ; num functions +0000021: 0a ; section code +0000022: 00 ; section size (guess) +0000023: 01 ; num functions ; function body 0 -0000024: 00 ; func body size (guess) -0000025: 00 ; local decl count -0000026: 11 ; i64.const -0000027: 00 ; i64 literal -0000028: 0f ; end -0000024: 04 ; FIXUP func body size -0000022: 06 ; FIXUP section size +0000024: 00 ; func body size (guess) +0000025: 00 ; local decl count +0000026: 11 ; i64.const +0000027: 00 ; i64 literal +0000028: 0f ; end +0000024: 04 ; FIXUP func body size +0000022: 06 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0106 0140 0101 0102 -0000010: 020b 0103 666f 6f03 6261 7200 0003 0201 -0000020: 000a 0601 0400 1100 0f +0000000: 0061 736d 0c00 0000 0106 0140 0101 0102 +0000010: 020b 0103 666f 6f03 6261 7200 0003 0201 +0000020: 000a 0601 0400 1100 0f ;;; STDOUT ;;) diff --git a/test/dump/drop.txt b/test/dump/drop.txt index 409fac27..577f1d08 100644 --- a/test/dump/drop.txt +++ b/test/dump/drop.txt @@ -3,37 +3,37 @@ (func (drop (i32.const 0)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 0b ; drop -000001a: 0f ; end -0000015: 05 ; FIXUP func body size -0000013: 07 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 0b ; drop +000001a: 0f ; end +0000015: 05 ; FIXUP func body size +0000013: 07 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a07 0105 0010 000b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a07 0105 0010 000b 0f ;;; STDOUT ;;) diff --git a/test/dump/export-multi.txt b/test/dump/export-multi.txt index 78066f66..bbc70912 100644 --- a/test/dump/export-multi.txt +++ b/test/dump/export-multi.txt @@ -4,49 +4,49 @@ (export "a" (func 0)) (export "b" (func 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "EXPORT" (7) -0000012: 07 ; section code -0000013: 00 ; section size (guess) -0000014: 02 ; num exports -0000015: 01 ; string length +0000012: 07 ; section code +0000013: 00 ; section size (guess) +0000014: 02 ; num exports +0000015: 01 ; string length 0000016: 61 a ; export name -0000017: 00 ; export kind -0000018: 00 ; export func index -0000019: 01 ; string length +0000017: 00 ; export kind +0000018: 00 ; export func index +0000019: 01 ; string length 000001a: 62 b ; export name -000001b: 00 ; export kind -000001c: 00 ; export func index -0000013: 09 ; FIXUP section size +000001b: 00 ; export kind +000001c: 00 ; export func index +0000013: 09 ; FIXUP section size ; section "CODE" (10) -000001d: 0a ; section code -000001e: 00 ; section size (guess) -000001f: 01 ; num functions +000001d: 0a ; section code +000001e: 00 ; section size (guess) +000001f: 01 ; num functions ; function body 0 -0000020: 00 ; func body size (guess) -0000021: 00 ; local decl count -0000022: 0a ; nop -0000023: 0f ; end -0000020: 03 ; FIXUP func body size -000001e: 05 ; FIXUP section size +0000020: 00 ; func body size (guess) +0000021: 00 ; local decl count +0000022: 0a ; nop +0000023: 0f ; end +0000020: 03 ; FIXUP func body size +000001e: 05 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0709 0201 6100 0001 6200 000a 0501 -0000020: 0300 0a0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0709 0201 6100 0001 6200 000a 0501 +0000020: 0300 0a0f ;;; STDOUT ;;) diff --git a/test/dump/expr-br.txt b/test/dump/expr-br.txt index 6695267e..a5943896 100644 --- a/test/dump/expr-br.txt +++ b/test/dump/expr-br.txt @@ -4,42 +4,42 @@ (block i32 (br 0 (i32.const 1))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "CODE" (10) -0000013: 0a ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num functions +0000013: 0a ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num functions ; function body 0 -0000016: 00 ; func body size (guess) -0000017: 00 ; local decl count -0000018: 01 ; block -0000019: 01 ; WASM_TYPE_I32 -000001a: 10 ; i32.const -000001b: 01 ; i32 literal -000001c: 06 ; br -000001d: 00 ; break depth -000001e: 0f ; end -000001f: 0f ; end -0000016: 09 ; FIXUP func body size -0000014: 0b ; FIXUP section size +0000016: 00 ; func body size (guess) +0000017: 00 ; local decl count +0000018: 01 ; block +0000019: 01 ; WASM_TYPE_I32 +000001a: 10 ; i32.const +000001b: 01 ; i32 literal +000001c: 06 ; br +000001d: 00 ; break depth +000001e: 0f ; end +000001f: 0f ; end +0000016: 09 ; FIXUP func body size +0000014: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 -0000010: 0201 000a 0b01 0900 0101 1001 0600 0f0f +0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 +0000010: 0201 000a 0b01 0900 0101 1001 0600 0f0f ;;; STDOUT ;;) diff --git a/test/dump/expr-brif.txt b/test/dump/expr-brif.txt index 877038f9..1216d350 100644 --- a/test/dump/expr-brif.txt +++ b/test/dump/expr-brif.txt @@ -6,48 +6,48 @@ (br_if $exit (i32.const 42) (i32.const 0))) (i32.const 29)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "CODE" (10) -0000013: 0a ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num functions +0000013: 0a ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num functions ; function body 0 -0000016: 00 ; func body size (guess) -0000017: 00 ; local decl count -0000018: 01 ; block -0000019: 01 ; WASM_TYPE_I32 -000001a: 10 ; i32.const -000001b: 2a ; i32 literal -000001c: 10 ; i32.const -000001d: 00 ; i32 literal -000001e: 07 ; br_if -000001f: 00 ; break depth -0000020: 0b ; drop -0000021: 10 ; i32.const -0000022: 1d ; i32 literal -0000023: 0f ; end -0000024: 0f ; end -0000016: 0e ; FIXUP func body size -0000014: 10 ; FIXUP section size +0000016: 00 ; func body size (guess) +0000017: 00 ; local decl count +0000018: 01 ; block +0000019: 01 ; WASM_TYPE_I32 +000001a: 10 ; i32.const +000001b: 2a ; i32 literal +000001c: 10 ; i32.const +000001d: 00 ; i32 literal +000001e: 07 ; br_if +000001f: 00 ; break depth +0000020: 0b ; drop +0000021: 10 ; i32.const +0000022: 1d ; i32 literal +0000023: 0f ; end +0000024: 0f ; end +0000016: 0e ; FIXUP func body size +0000014: 10 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 -0000010: 0201 000a 1001 0e00 0101 102a 1000 0700 -0000020: 0b10 1d0f 0f +0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 +0000010: 0201 000a 1001 0e00 0101 102a 1000 0700 +0000020: 0b10 1d0f 0f ;;; STDOUT ;;) diff --git a/test/dump/func-exported.txt b/test/dump/func-exported.txt index 53b8ddd2..f5253eed 100644 --- a/test/dump/func-exported.txt +++ b/test/dump/func-exported.txt @@ -3,44 +3,44 @@ (func) (export "foo" (func 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "EXPORT" (7) -0000012: 07 ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num exports -0000015: 03 ; string length +0000012: 07 ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num exports +0000015: 03 ; string length 0000016: 666f 6f foo ; export name -0000019: 00 ; export kind -000001a: 00 ; export func index -0000013: 07 ; FIXUP section size +0000019: 00 ; export kind +000001a: 00 ; export func index +0000013: 07 ; FIXUP section size ; section "CODE" (10) -000001b: 0a ; section code -000001c: 00 ; section size (guess) -000001d: 01 ; num functions +000001b: 0a ; section code +000001c: 00 ; section size (guess) +000001d: 01 ; num functions ; function body 0 -000001e: 00 ; func body size (guess) -000001f: 00 ; local decl count -0000020: 0f ; end -000001e: 02 ; FIXUP func body size -000001c: 04 ; FIXUP section size +000001e: 00 ; func body size (guess) +000001f: 00 ; local decl count +0000020: 0f ; end +000001e: 02 ; FIXUP func body size +000001c: 04 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0707 0103 666f 6f00 000a 0401 0200 -0000020: 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0707 0103 666f 6f00 000a 0401 0200 +0000020: 0f ;;; STDOUT ;;) diff --git a/test/dump/func-multi.txt b/test/dump/func-multi.txt index 64db5acb..440a013f 100644 --- a/test/dump/func-multi.txt +++ b/test/dump/func-multi.txt @@ -4,46 +4,46 @@ (func) (func)) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 03 ; num functions -0000011: 00 ; function 0 signature index -0000012: 00 ; function 1 signature index -0000013: 00 ; function 2 signature index -000000f: 04 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 03 ; num functions +0000011: 00 ; function 0 signature index +0000012: 00 ; function 1 signature index +0000013: 00 ; function 2 signature index +000000f: 04 ; FIXUP section size ; section "CODE" (10) -0000014: 0a ; section code -0000015: 00 ; section size (guess) -0000016: 03 ; num functions +0000014: 0a ; section code +0000015: 00 ; section size (guess) +0000016: 03 ; num functions ; function body 0 -0000017: 00 ; func body size (guess) -0000018: 00 ; local decl count -0000019: 0f ; end -0000017: 02 ; FIXUP func body size +0000017: 00 ; func body size (guess) +0000018: 00 ; local decl count +0000019: 0f ; end +0000017: 02 ; FIXUP func body size ; function body 1 -000001a: 00 ; func body size (guess) -000001b: 00 ; local decl count -000001c: 0f ; end -000001a: 02 ; FIXUP func body size +000001a: 00 ; func body size (guess) +000001b: 00 ; local decl count +000001c: 0f ; end +000001a: 02 ; FIXUP func body size ; function body 2 -000001d: 00 ; func body size (guess) -000001e: 00 ; local decl count -000001f: 0f ; end -000001d: 02 ; FIXUP func body size -0000015: 0a ; FIXUP section size +000001d: 00 ; func body size (guess) +000001e: 00 ; local decl count +000001f: 0f ; end +000001d: 02 ; FIXUP func body size +0000015: 0a ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0304 -0000010: 0300 0000 0a0a 0302 000f 0200 0f02 000f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0304 +0000010: 0300 0000 0a0a 0302 000f 0200 0f02 000f ;;; STDOUT ;;) diff --git a/test/dump/func-named.txt b/test/dump/func-named.txt index f969cbde..21012c02 100644 --- a/test/dump/func-named.txt +++ b/test/dump/func-named.txt @@ -2,34 +2,34 @@ (module (func $my-func)) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 0f ; end -0000015: 02 ; FIXUP func body size -0000013: 04 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 0f ; end +0000015: 02 ; FIXUP func body size +0000013: 04 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a04 0102 000f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a04 0102 000f ;;; STDOUT ;;) diff --git a/test/dump/getglobal.txt b/test/dump/getglobal.txt index dff767ad..112536fb 100644 --- a/test/dump/getglobal.txt +++ b/test/dump/getglobal.txt @@ -4,48 +4,48 @@ (func (result i32) (get_global 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "GLOBAL" (6) -0000013: 06 ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num globals -0000016: 01 ; WASM_TYPE_I32 -0000017: 00 ; global mutability -0000018: 10 ; i32.const -0000019: 00 ; i32 literal -000001a: 0f ; end -0000014: 06 ; FIXUP section size +0000013: 06 ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num globals +0000016: 01 ; WASM_TYPE_I32 +0000017: 00 ; global mutability +0000018: 10 ; i32.const +0000019: 00 ; i32 literal +000001a: 0f ; end +0000014: 06 ; FIXUP section size ; section "CODE" (10) -000001b: 0a ; section code -000001c: 00 ; section size (guess) -000001d: 01 ; num functions +000001b: 0a ; section code +000001c: 00 ; section size (guess) +000001d: 01 ; num functions ; function body 0 -000001e: 00 ; func body size (guess) -000001f: 00 ; local decl count -0000020: bb ; get_global -0000021: 00 ; global index -0000022: 0f ; end -000001e: 04 ; FIXUP func body size -000001c: 06 ; FIXUP section size +000001e: 00 ; func body size (guess) +000001f: 00 ; local decl count +0000020: bb ; get_global +0000021: 00 ; global index +0000022: 0f ; end +000001e: 04 ; FIXUP func body size +000001c: 06 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 -0000010: 0201 0006 0601 0100 1000 0f0a 0601 0400 -0000020: bb00 0f +0000000: 0061 736d 0c00 0000 0105 0140 0001 0103 +0000010: 0201 0006 0601 0100 1000 0f0a 0601 0400 +0000020: bb00 0f ;;; STDOUT ;;) diff --git a/test/dump/getlocal-param.txt b/test/dump/getlocal-param.txt index 2499d6f9..c0ac87f1 100644 --- a/test/dump/getlocal-param.txt +++ b/test/dump/getlocal-param.txt @@ -16,64 +16,64 @@ (drop (get_local 4)) (drop (get_local 5)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 02 ; num params -000000d: 01 ; param type -000000e: 03 ; param type -000000f: 00 ; num results -0000009: 06 ; FIXUP section size +000000b: 40 ; function form +000000c: 02 ; num params +000000d: 01 ; param type +000000e: 03 ; param type +000000f: 00 ; num results +0000009: 06 ; FIXUP section size ; section "FUNCTION" (3) -0000010: 03 ; section code -0000011: 00 ; section size (guess) -0000012: 01 ; num functions -0000013: 00 ; function 0 signature index -0000011: 02 ; FIXUP section size +0000010: 03 ; section code +0000011: 00 ; section size (guess) +0000012: 01 ; num functions +0000013: 00 ; function 0 signature index +0000011: 02 ; FIXUP section size ; section "CODE" (10) -0000014: 0a ; section code -0000015: 00 ; section size (guess) -0000016: 01 ; num functions +0000014: 0a ; section code +0000015: 00 ; section size (guess) +0000016: 01 ; num functions ; function body 0 -0000017: 00 ; func body size (guess) -0000018: 04 ; local decl count -0000019: 01 ; local type count -000001a: 02 ; WASM_TYPE_I64 -000001b: 01 ; local type count -000001c: 03 ; WASM_TYPE_F32 -000001d: 01 ; local type count -000001e: 01 ; WASM_TYPE_I32 -000001f: 01 ; local type count -0000020: 03 ; WASM_TYPE_F32 -0000021: 14 ; get_local -0000022: 00 ; local index -0000023: 0b ; drop -0000024: 14 ; get_local -0000025: 01 ; local index -0000026: 0b ; drop -0000027: 14 ; get_local -0000028: 02 ; local index -0000029: 0b ; drop -000002a: 14 ; get_local -000002b: 03 ; local index -000002c: 0b ; drop -000002d: 14 ; get_local -000002e: 04 ; local index -000002f: 0b ; drop -0000030: 14 ; get_local -0000031: 05 ; local index -0000032: 0b ; drop -0000033: 0f ; end -0000017: 1c ; FIXUP func body size -0000015: 1e ; FIXUP section size +0000017: 00 ; func body size (guess) +0000018: 04 ; local decl count +0000019: 01 ; local type count +000001a: 02 ; WASM_TYPE_I64 +000001b: 01 ; local type count +000001c: 03 ; WASM_TYPE_F32 +000001d: 01 ; local type count +000001e: 01 ; WASM_TYPE_I32 +000001f: 01 ; local type count +0000020: 03 ; WASM_TYPE_F32 +0000021: 14 ; get_local +0000022: 00 ; local index +0000023: 0b ; drop +0000024: 14 ; get_local +0000025: 01 ; local index +0000026: 0b ; drop +0000027: 14 ; get_local +0000028: 02 ; local index +0000029: 0b ; drop +000002a: 14 ; get_local +000002b: 03 ; local index +000002c: 0b ; drop +000002d: 14 ; get_local +000002e: 04 ; local index +000002f: 0b ; drop +0000030: 14 ; get_local +0000031: 05 ; local index +0000032: 0b ; drop +0000033: 0f ; end +0000017: 1c ; FIXUP func body size +0000015: 1e ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0106 0140 0201 0300 -0000010: 0302 0100 0a1e 011c 0401 0201 0301 0101 -0000020: 0314 000b 1401 0b14 020b 1403 0b14 040b -0000030: 1405 0b0f +0000000: 0061 736d 0c00 0000 0106 0140 0201 0300 +0000010: 0302 0100 0a1e 011c 0401 0201 0301 0101 +0000020: 0314 000b 1401 0b14 020b 1403 0b14 040b +0000030: 1405 0b0f ;;; STDOUT ;;) diff --git a/test/dump/getlocal.txt b/test/dump/getlocal.txt index 11353002..60af19e0 100644 --- a/test/dump/getlocal.txt +++ b/test/dump/getlocal.txt @@ -17,74 +17,74 @@ (drop (get_local 6)) (drop (get_local 7)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 07 ; local decl count -0000017: 01 ; local type count -0000018: 04 ; WASM_TYPE_F64 -0000019: 01 ; local type count -000001a: 03 ; WASM_TYPE_F32 -000001b: 01 ; local type count -000001c: 02 ; WASM_TYPE_I64 -000001d: 02 ; local type count -000001e: 01 ; WASM_TYPE_I32 -000001f: 01 ; local type count -0000020: 03 ; WASM_TYPE_F32 -0000021: 01 ; local type count -0000022: 04 ; WASM_TYPE_F64 -0000023: 01 ; local type count -0000024: 02 ; WASM_TYPE_I64 -0000025: 14 ; get_local -0000026: 00 ; local index -0000027: 0b ; drop -0000028: 14 ; get_local -0000029: 01 ; local index -000002a: 0b ; drop -000002b: 14 ; get_local -000002c: 02 ; local index -000002d: 0b ; drop -000002e: 14 ; get_local -000002f: 03 ; local index -0000030: 0b ; drop -0000031: 14 ; get_local -0000032: 04 ; local index -0000033: 0b ; drop -0000034: 14 ; get_local -0000035: 05 ; local index -0000036: 0b ; drop -0000037: 14 ; get_local -0000038: 06 ; local index -0000039: 0b ; drop -000003a: 14 ; get_local -000003b: 07 ; local index -000003c: 0b ; drop -000003d: 0f ; end -0000015: 28 ; FIXUP func body size -0000013: 2a ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 07 ; local decl count +0000017: 01 ; local type count +0000018: 04 ; WASM_TYPE_F64 +0000019: 01 ; local type count +000001a: 03 ; WASM_TYPE_F32 +000001b: 01 ; local type count +000001c: 02 ; WASM_TYPE_I64 +000001d: 02 ; local type count +000001e: 01 ; WASM_TYPE_I32 +000001f: 01 ; local type count +0000020: 03 ; WASM_TYPE_F32 +0000021: 01 ; local type count +0000022: 04 ; WASM_TYPE_F64 +0000023: 01 ; local type count +0000024: 02 ; WASM_TYPE_I64 +0000025: 14 ; get_local +0000026: 00 ; local index +0000027: 0b ; drop +0000028: 14 ; get_local +0000029: 01 ; local index +000002a: 0b ; drop +000002b: 14 ; get_local +000002c: 02 ; local index +000002d: 0b ; drop +000002e: 14 ; get_local +000002f: 03 ; local index +0000030: 0b ; drop +0000031: 14 ; get_local +0000032: 04 ; local index +0000033: 0b ; drop +0000034: 14 ; get_local +0000035: 05 ; local index +0000036: 0b ; drop +0000037: 14 ; get_local +0000038: 06 ; local index +0000039: 0b ; drop +000003a: 14 ; get_local +000003b: 07 ; local index +000003c: 0b ; drop +000003d: 0f ; end +0000015: 28 ; FIXUP func body size +0000013: 2a ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a2a 0128 0701 0401 0301 0202 0101 -0000020: 0301 0401 0214 000b 1401 0b14 020b 1403 -0000030: 0b14 040b 1405 0b14 060b 1407 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a2a 0128 0701 0401 0301 0202 0101 +0000020: 0301 0401 0214 000b 1401 0b14 020b 1403 +0000030: 0b14 040b 1405 0b14 060b 1407 0b0f ;;; STDOUT ;;) diff --git a/test/dump/global.txt b/test/dump/global.txt index 48102d34..713c507e 100644 --- a/test/dump/global.txt +++ b/test/dump/global.txt @@ -10,56 +10,56 @@ (global f32 (get_global 2)) (global f64 (get_global 3))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "GLOBAL" (6) -0000008: 06 ; section code -0000009: 00 ; section size (guess) -000000a: 08 ; num globals -000000b: 01 ; WASM_TYPE_I32 -000000c: 00 ; global mutability -000000d: 10 ; i32.const -000000e: 01 ; i32 literal -000000f: 0f ; end -0000010: 02 ; WASM_TYPE_I64 -0000011: 00 ; global mutability -0000012: 11 ; i64.const -0000013: 02 ; i64 literal -0000014: 0f ; end -0000015: 03 ; WASM_TYPE_F32 -0000016: 00 ; global mutability -0000017: 13 ; f32.const -0000018: 0000 4040 ; f32 literal -000001c: 0f ; end -000001d: 04 ; WASM_TYPE_F64 -000001e: 00 ; global mutability -000001f: 12 ; f64.const -0000020: 0000 0000 0000 1040 ; f64 literal -0000028: 0f ; end -0000029: 01 ; WASM_TYPE_I32 -000002a: 00 ; global mutability -000002b: bb ; get_global -000002c: 00 ; global index -000002d: 0f ; end -000002e: 02 ; WASM_TYPE_I64 -000002f: 00 ; global mutability -0000030: bb ; get_global -0000031: 01 ; global index -0000032: 0f ; end -0000033: 03 ; WASM_TYPE_F32 -0000034: 00 ; global mutability -0000035: bb ; get_global -0000036: 02 ; global index -0000037: 0f ; end -0000038: 04 ; WASM_TYPE_F64 -0000039: 00 ; global mutability -000003a: bb ; get_global -000003b: 03 ; global index -000003c: 0f ; end -0000009: 33 ; FIXUP section size +0000008: 06 ; section code +0000009: 00 ; section size (guess) +000000a: 08 ; num globals +000000b: 01 ; WASM_TYPE_I32 +000000c: 00 ; global mutability +000000d: 10 ; i32.const +000000e: 01 ; i32 literal +000000f: 0f ; end +0000010: 02 ; WASM_TYPE_I64 +0000011: 00 ; global mutability +0000012: 11 ; i64.const +0000013: 02 ; i64 literal +0000014: 0f ; end +0000015: 03 ; WASM_TYPE_F32 +0000016: 00 ; global mutability +0000017: 13 ; f32.const +0000018: 0000 4040 ; f32 literal +000001c: 0f ; end +000001d: 04 ; WASM_TYPE_F64 +000001e: 00 ; global mutability +000001f: 12 ; f64.const +0000020: 0000 0000 0000 1040 ; f64 literal +0000028: 0f ; end +0000029: 01 ; WASM_TYPE_I32 +000002a: 00 ; global mutability +000002b: bb ; get_global +000002c: 00 ; global index +000002d: 0f ; end +000002e: 02 ; WASM_TYPE_I64 +000002f: 00 ; global mutability +0000030: bb ; get_global +0000031: 01 ; global index +0000032: 0f ; end +0000033: 03 ; WASM_TYPE_F32 +0000034: 00 ; global mutability +0000035: bb ; get_global +0000036: 02 ; global index +0000037: 0f ; end +0000038: 04 ; WASM_TYPE_F64 +0000039: 00 ; global mutability +000003a: bb ; get_global +000003b: 03 ; global index +000003c: 0f ; end +0000009: 33 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0633 0801 0010 010f -0000010: 0200 1102 0f03 0013 0000 4040 0f04 0012 -0000020: 0000 0000 0000 1040 0f01 00bb 000f 0200 -0000030: bb01 0f03 00bb 020f 0400 bb03 0f +0000000: 0061 736d 0c00 0000 0633 0801 0010 010f +0000010: 0200 1102 0f03 0013 0000 4040 0f04 0012 +0000020: 0000 0000 0000 1040 0f01 00bb 000f 0200 +0000030: bb01 0f03 00bb 020f 0400 bb03 0f ;;; STDOUT ;;) diff --git a/test/dump/grow-memory.txt b/test/dump/grow-memory.txt index f39e1f12..47eb4cd3 100644 --- a/test/dump/grow-memory.txt +++ b/test/dump/grow-memory.txt @@ -5,49 +5,49 @@ (drop (grow_memory (get_local 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "MEMORY" (5) -0000013: 05 ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num memories +0000013: 05 ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num memories ; memory 0 -0000016: 01 ; memory flags -0000017: 01 ; memory initial pages -0000018: 02 ; memory max pages -0000014: 04 ; FIXUP section size +0000016: 01 ; memory flags +0000017: 01 ; memory initial pages +0000018: 02 ; memory max pages +0000014: 04 ; FIXUP section size ; section "CODE" (10) -0000019: 0a ; section code -000001a: 00 ; section size (guess) -000001b: 01 ; num functions +0000019: 0a ; section code +000001a: 00 ; section size (guess) +000001b: 01 ; num functions ; function body 0 -000001c: 00 ; func body size (guess) -000001d: 00 ; local decl count -000001e: 14 ; get_local -000001f: 00 ; local index -0000020: 39 ; grow_memory -0000021: 0b ; drop -0000022: 0f ; end -000001c: 06 ; FIXUP func body size -000001a: 08 ; FIXUP section size +000001c: 00 ; func body size (guess) +000001d: 00 ; local decl count +000001e: 14 ; get_local +000001f: 00 ; local index +0000020: 39 ; grow_memory +0000021: 0b ; drop +0000022: 0f ; end +000001c: 06 ; FIXUP func body size +000001a: 08 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 -0000010: 0201 0005 0401 0101 020a 0801 0600 1400 -0000020: 390b 0f +0000000: 0061 736d 0c00 0000 0105 0140 0101 0003 +0000010: 0201 0005 0401 0101 020a 0801 0600 1400 +0000020: 390b 0f ;;; STDOUT ;;) diff --git a/test/dump/hexfloat_f32.txt b/test/dump/hexfloat_f32.txt index a77ec892..42e478e5 100644 --- a/test/dump/hexfloat_f32.txt +++ b/test/dump/hexfloat_f32.txt @@ -21,91 +21,91 @@ ) ) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 13 ; f32.const -0000018: 0000 0000 ; f32 literal -000001c: 0b ; drop -000001d: 13 ; f32.const -000001e: 80a2 9148 ; f32 literal -0000022: 0b ; drop -0000023: 13 ; f32.const -0000024: 0000 8059 ; f32 literal -0000028: 0b ; drop -0000029: 13 ; f32.const -000002a: 0000 007f ; f32 literal -000002e: 0b ; drop -000002f: 13 ; f32.const -0000030: 0000 807c ; f32 literal -0000034: 0b ; drop -0000035: 13 ; f32.const -0000036: 0080 917d ; f32 literal -000003a: 0b ; drop -000003b: 13 ; f32.const -000003c: f0ff ff7e ; f32 literal -0000040: 0b ; drop -0000041: 13 ; f32.const -0000042: feff 7f7e ; f32 literal -0000046: 0b ; drop -0000047: 13 ; f32.const -0000048: 0000 807f ; f32 literal -000004c: 0b ; drop -000004d: 13 ; f32.const -000004e: c4ff 7f7f ; f32 literal -0000052: 0b ; drop -0000053: 13 ; f32.const -0000054: f8ff 7f7f ; f32 literal -0000058: 0b ; drop -0000059: 13 ; f32.const -000005a: faff ff0a ; f32 literal -000005e: 0b ; drop -000005f: 13 ; f32.const -0000060: f8ff ff0a ; f32 literal -0000064: 0b ; drop -0000065: 13 ; f32.const -0000066: 0000 0004 ; f32 literal -000006a: 0b ; drop -000006b: 13 ; f32.const -000006c: 0000 883f ; f32 literal -0000070: 0b ; drop -0000071: 13 ; f32.const -0000072: 0000 8053 ; f32 literal -0000076: 0b ; drop -0000077: 13 ; f32.const -0000078: 8080 7fc0 ; f32 literal -000007c: 0b ; drop -000007d: 0f ; end -0000015: 68 ; FIXUP func body size -0000013: 6a ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 13 ; f32.const +0000018: 0000 0000 ; f32 literal +000001c: 0b ; drop +000001d: 13 ; f32.const +000001e: 80a2 9148 ; f32 literal +0000022: 0b ; drop +0000023: 13 ; f32.const +0000024: 0000 8059 ; f32 literal +0000028: 0b ; drop +0000029: 13 ; f32.const +000002a: 0000 007f ; f32 literal +000002e: 0b ; drop +000002f: 13 ; f32.const +0000030: 0000 807c ; f32 literal +0000034: 0b ; drop +0000035: 13 ; f32.const +0000036: 0080 917d ; f32 literal +000003a: 0b ; drop +000003b: 13 ; f32.const +000003c: f0ff ff7e ; f32 literal +0000040: 0b ; drop +0000041: 13 ; f32.const +0000042: feff 7f7e ; f32 literal +0000046: 0b ; drop +0000047: 13 ; f32.const +0000048: 0000 807f ; f32 literal +000004c: 0b ; drop +000004d: 13 ; f32.const +000004e: c4ff 7f7f ; f32 literal +0000052: 0b ; drop +0000053: 13 ; f32.const +0000054: f8ff 7f7f ; f32 literal +0000058: 0b ; drop +0000059: 13 ; f32.const +000005a: faff ff0a ; f32 literal +000005e: 0b ; drop +000005f: 13 ; f32.const +0000060: f8ff ff0a ; f32 literal +0000064: 0b ; drop +0000065: 13 ; f32.const +0000066: 0000 0004 ; f32 literal +000006a: 0b ; drop +000006b: 13 ; f32.const +000006c: 0000 883f ; f32 literal +0000070: 0b ; drop +0000071: 13 ; f32.const +0000072: 0000 8053 ; f32 literal +0000076: 0b ; drop +0000077: 13 ; f32.const +0000078: 8080 7fc0 ; f32 literal +000007c: 0b ; drop +000007d: 0f ; end +0000015: 68 ; FIXUP func body size +0000013: 6a ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a6a 0168 0013 0000 0000 0b13 80a2 -0000020: 9148 0b13 0000 8059 0b13 0000 007f 0b13 -0000030: 0000 807c 0b13 0080 917d 0b13 f0ff ff7e -0000040: 0b13 feff 7f7e 0b13 0000 807f 0b13 c4ff -0000050: 7f7f 0b13 f8ff 7f7f 0b13 faff ff0a 0b13 -0000060: f8ff ff0a 0b13 0000 0004 0b13 0000 883f -0000070: 0b13 0000 8053 0b13 8080 7fc0 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a6a 0168 0013 0000 0000 0b13 80a2 +0000020: 9148 0b13 0000 8059 0b13 0000 007f 0b13 +0000030: 0000 807c 0b13 0080 917d 0b13 f0ff ff7e +0000040: 0b13 feff 7f7e 0b13 0000 807f 0b13 c4ff +0000050: 7f7f 0b13 f8ff 7f7f 0b13 faff ff0a 0b13 +0000060: f8ff ff0a 0b13 0000 0004 0b13 0000 883f +0000070: 0b13 0000 8053 0b13 8080 7fc0 0b0f ;;; STDOUT ;;) diff --git a/test/dump/hexfloat_f64.txt b/test/dump/hexfloat_f64.txt index 0c7a2533..0e6a47ae 100644 --- a/test/dump/hexfloat_f64.txt +++ b/test/dump/hexfloat_f64.txt @@ -21,98 +21,98 @@ ) ) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 12 ; f64.const -0000018: 0000 0000 0000 0000 ; f64 literal -0000020: 0b ; drop -0000021: 12 ; f64.const -0000022: 0000 0000 5034 1241 ; f64 literal -000002a: 0b ; drop -000002b: 12 ; f64.const -000002c: 0000 0000 0000 3045 ; f64 literal -0000034: 0b ; drop -0000035: 12 ; f64.const -0000036: 0000 0000 0000 e07f ; f64 literal -000003e: 0b ; drop -000003f: 12 ; f64.const -0000040: 0000 0000 0000 907f ; f64 literal -0000048: 0b ; drop -0000049: 12 ; f64.const -000004a: 0000 0000 0030 c27f ; f64 literal -0000052: 0b ; drop -0000053: 12 ; f64.const -0000054: 00e0 ffff ffff df7f ; f64 literal -000005c: 0b ; drop -000005d: 12 ; f64.const -000005e: c0ff ffff ffff cf7f ; f64 literal -0000066: 0b ; drop -0000067: 12 ; f64.const -0000068: 0000 0000 0000 f07f ; f64 literal -0000070: 0b ; drop -0000071: 12 ; f64.const -0000072: fcff ffff ffff ef7f ; f64 literal -000007a: 0b ; drop -000007b: 12 ; f64.const -000007c: feff ffff ffff ef7f ; f64 literal -0000084: 0b ; drop -0000085: 12 ; f64.const -0000086: f1ff ffff ffff df02 ; f64 literal -000008e: 0b ; drop -000008f: 12 ; f64.const -0000090: f3ff ffff ffff df02 ; f64 literal -0000098: 0b ; drop -0000099: 12 ; f64.const -000009a: 0000 0000 0000 8001 ; f64 literal -00000a2: 0b ; drop -00000a3: 12 ; f64.const -00000a4: 0000 0000 0000 f13f ; f64 literal -00000ac: 0b ; drop -00000ad: 12 ; f64.const -00000ae: 0000 0000 0000 7042 ; f64 literal -00000b6: 0b ; drop -00000b7: 12 ; f64.const -00000b8: 0000 0000 10f0 0fc0 ; f64 literal -00000c0: 0b ; drop -00000c1: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 12 ; f64.const +0000018: 0000 0000 0000 0000 ; f64 literal +0000020: 0b ; drop +0000021: 12 ; f64.const +0000022: 0000 0000 5034 1241 ; f64 literal +000002a: 0b ; drop +000002b: 12 ; f64.const +000002c: 0000 0000 0000 3045 ; f64 literal +0000034: 0b ; drop +0000035: 12 ; f64.const +0000036: 0000 0000 0000 e07f ; f64 literal +000003e: 0b ; drop +000003f: 12 ; f64.const +0000040: 0000 0000 0000 907f ; f64 literal +0000048: 0b ; drop +0000049: 12 ; f64.const +000004a: 0000 0000 0030 c27f ; f64 literal +0000052: 0b ; drop +0000053: 12 ; f64.const +0000054: 00e0 ffff ffff df7f ; f64 literal +000005c: 0b ; drop +000005d: 12 ; f64.const +000005e: c0ff ffff ffff cf7f ; f64 literal +0000066: 0b ; drop +0000067: 12 ; f64.const +0000068: 0000 0000 0000 f07f ; f64 literal +0000070: 0b ; drop +0000071: 12 ; f64.const +0000072: fcff ffff ffff ef7f ; f64 literal +000007a: 0b ; drop +000007b: 12 ; f64.const +000007c: feff ffff ffff ef7f ; f64 literal +0000084: 0b ; drop +0000085: 12 ; f64.const +0000086: f1ff ffff ffff df02 ; f64 literal +000008e: 0b ; drop +000008f: 12 ; f64.const +0000090: f3ff ffff ffff df02 ; f64 literal +0000098: 0b ; drop +0000099: 12 ; f64.const +000009a: 0000 0000 0000 8001 ; f64 literal +00000a2: 0b ; drop +00000a3: 12 ; f64.const +00000a4: 0000 0000 0000 f13f ; f64 literal +00000ac: 0b ; drop +00000ad: 12 ; f64.const +00000ae: 0000 0000 0000 7042 ; f64 literal +00000b6: 0b ; drop +00000b7: 12 ; f64.const +00000b8: 0000 0000 10f0 0fc0 ; f64 literal +00000c0: 0b ; drop +00000c1: 0f ; end ; move data: [16, c2) -> [17, c3) -0000015: ac01 ; FIXUP func body size +0000015: ac01 ; FIXUP func body size ; move data: [14, c3) -> [15, c4) -0000013: af01 ; FIXUP section size +0000013: af01 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0aaf 0101 ac01 0012 0000 0000 0000 -0000020: 0000 0b12 0000 0000 5034 1241 0b12 0000 -0000030: 0000 0000 3045 0b12 0000 0000 0000 e07f -0000040: 0b12 0000 0000 0000 907f 0b12 0000 0000 -0000050: 0030 c27f 0b12 00e0 ffff ffff df7f 0b12 -0000060: c0ff ffff ffff cf7f 0b12 0000 0000 0000 -0000070: f07f 0b12 fcff ffff ffff ef7f 0b12 feff -0000080: ffff ffff ef7f 0b12 f1ff ffff ffff df02 -0000090: 0b12 f3ff ffff ffff df02 0b12 0000 0000 -00000a0: 0000 8001 0b12 0000 0000 0000 f13f 0b12 -00000b0: 0000 0000 0000 7042 0b12 0000 0000 10f0 -00000c0: 0fc0 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0aaf 0101 ac01 0012 0000 0000 0000 +0000020: 0000 0b12 0000 0000 5034 1241 0b12 0000 +0000030: 0000 0000 3045 0b12 0000 0000 0000 e07f +0000040: 0b12 0000 0000 0000 907f 0b12 0000 0000 +0000050: 0030 c27f 0b12 00e0 ffff ffff df7f 0b12 +0000060: c0ff ffff ffff cf7f 0b12 0000 0000 0000 +0000070: f07f 0b12 fcff ffff ffff ef7f 0b12 feff +0000080: ffff ffff ef7f 0b12 f1ff ffff ffff df02 +0000090: 0b12 f3ff ffff ffff df02 0b12 0000 0000 +00000a0: 0000 8001 0b12 0000 0000 0000 f13f 0b12 +00000b0: 0000 0000 0000 7042 0b12 0000 0000 10f0 +00000c0: 0fc0 0b0f ;;; STDOUT ;;) diff --git a/test/dump/if-then-else-list.txt b/test/dump/if-then-else-list.txt index a5cc4307..8d2e9b64 100644 --- a/test/dump/if-then-else-list.txt +++ b/test/dump/if-then-else-list.txt @@ -9,53 +9,53 @@ (drop (i32.const 4)) (drop (i32.const 5)))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 01 ; i32 literal -0000019: 03 ; if -000001a: 00 ; WASM_TYPE_VOID -000001b: 10 ; i32.const -000001c: 02 ; i32 literal -000001d: 0b ; drop -000001e: 10 ; i32.const -000001f: 03 ; i32 literal -0000020: 0b ; drop -0000021: 04 ; else -0000022: 10 ; i32.const -0000023: 04 ; i32 literal -0000024: 0b ; drop -0000025: 10 ; i32.const -0000026: 05 ; i32 literal -0000027: 0b ; drop -0000028: 0f ; end -0000029: 0f ; end -0000015: 14 ; FIXUP func body size -0000013: 16 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 01 ; i32 literal +0000019: 03 ; if +000001a: 00 ; WASM_TYPE_VOID +000001b: 10 ; i32.const +000001c: 02 ; i32 literal +000001d: 0b ; drop +000001e: 10 ; i32.const +000001f: 03 ; i32 literal +0000020: 0b ; drop +0000021: 04 ; else +0000022: 10 ; i32.const +0000023: 04 ; i32 literal +0000024: 0b ; drop +0000025: 10 ; i32.const +0000026: 05 ; i32 literal +0000027: 0b ; drop +0000028: 0f ; end +0000029: 0f ; end +0000015: 14 ; FIXUP func body size +0000013: 16 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a16 0114 0010 0103 0010 020b 1003 -0000020: 0b04 1004 0b10 050b 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a16 0114 0010 0103 0010 020b 1003 +0000020: 0b04 1004 0b10 050b 0f0f ;;; STDOUT ;;) diff --git a/test/dump/if-then-list.txt b/test/dump/if-then-list.txt index 74ae56aa..aeb3a544 100644 --- a/test/dump/if-then-list.txt +++ b/test/dump/if-then-list.txt @@ -4,41 +4,41 @@ (if (i32.const 1) (then (nop) (nop))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 01 ; i32 literal -0000019: 03 ; if -000001a: 00 ; WASM_TYPE_VOID -000001b: 0a ; nop -000001c: 0a ; nop -000001d: 0f ; end -000001e: 0f ; end -0000015: 09 ; FIXUP func body size -0000013: 0b ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 01 ; i32 literal +0000019: 03 ; if +000001a: 00 ; WASM_TYPE_VOID +000001b: 0a ; nop +000001c: 0a ; nop +000001d: 0f ; end +000001e: 0f ; end +0000015: 09 ; FIXUP func body size +0000013: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0b 0109 0010 0103 000a 0a0f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0b 0109 0010 0103 000a 0a0f 0f ;;; STDOUT ;;) diff --git a/test/dump/if.txt b/test/dump/if.txt index 26d27352..be3d62f0 100644 --- a/test/dump/if.txt +++ b/test/dump/if.txt @@ -12,67 +12,67 @@ (return) (return)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 02 ; num functions -0000011: 00 ; function 0 signature index -0000012: 00 ; function 1 signature index -000000f: 03 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 02 ; num functions +0000011: 00 ; function 0 signature index +0000012: 00 ; function 1 signature index +000000f: 03 ; FIXUP section size ; section "CODE" (10) -0000013: 0a ; section code -0000014: 00 ; section size (guess) -0000015: 02 ; num functions +0000013: 0a ; section code +0000014: 00 ; section size (guess) +0000015: 02 ; num functions ; function body 0 -0000016: 00 ; func body size (guess) -0000017: 00 ; local decl count -0000018: 10 ; i32.const -0000019: 01 ; i32 literal -000001a: 03 ; if -000001b: 00 ; WASM_TYPE_VOID -000001c: 0a ; nop -000001d: 0f ; end -000001e: 10 ; i32.const -000001f: 00 ; i32 literal -0000020: 03 ; if -0000021: 03 ; WASM_TYPE_F32 -0000022: 13 ; f32.const -0000023: 0000 803f ; f32 literal -0000027: 04 ; else -0000028: 13 ; f32.const -0000029: 0000 0040 ; f32 literal -000002d: 0f ; end -000002e: 0b ; drop -000002f: 0f ; end -0000016: 19 ; FIXUP func body size +0000016: 00 ; func body size (guess) +0000017: 00 ; local decl count +0000018: 10 ; i32.const +0000019: 01 ; i32 literal +000001a: 03 ; if +000001b: 00 ; WASM_TYPE_VOID +000001c: 0a ; nop +000001d: 0f ; end +000001e: 10 ; i32.const +000001f: 00 ; i32 literal +0000020: 03 ; if +0000021: 03 ; WASM_TYPE_F32 +0000022: 13 ; f32.const +0000023: 0000 803f ; f32 literal +0000027: 04 ; else +0000028: 13 ; f32.const +0000029: 0000 0040 ; f32 literal +000002d: 0f ; end +000002e: 0b ; drop +000002f: 0f ; end +0000016: 19 ; FIXUP func body size ; function body 1 -0000030: 00 ; func body size (guess) -0000031: 00 ; local decl count -0000032: 10 ; i32.const -0000033: 01 ; i32 literal -0000034: 03 ; if -0000035: 00 ; WASM_TYPE_VOID -0000036: 09 ; return -0000037: 04 ; else -0000038: 09 ; return -0000039: 0f ; end -000003a: 0f ; end -0000030: 0a ; FIXUP func body size -0000014: 26 ; FIXUP section size +0000030: 00 ; func body size (guess) +0000031: 00 ; local decl count +0000032: 10 ; i32.const +0000033: 01 ; i32 literal +0000034: 03 ; if +0000035: 00 ; WASM_TYPE_VOID +0000036: 09 ; return +0000037: 04 ; else +0000038: 09 ; return +0000039: 0f ; end +000003a: 0f ; end +0000030: 0a ; FIXUP func body size +0000014: 26 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0303 -0000010: 0200 000a 2602 1900 1001 0300 0a0f 1000 -0000020: 0303 1300 0080 3f04 1300 0000 400f 0b0f -0000030: 0a00 1001 0300 0904 090f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0303 +0000010: 0200 000a 2602 1900 1001 0300 0a0f 1000 +0000020: 0303 1300 0080 3f04 1300 0000 400f 0b0f +0000030: 0a00 1001 0300 0904 090f 0f ;;; STDOUT ;;) diff --git a/test/dump/import.txt b/test/dump/import.txt index b2ebb2c1..607472ca 100644 --- a/test/dump/import.txt +++ b/test/dump/import.txt @@ -3,49 +3,49 @@ (import "ignored" "test" (func (param i32 i64 f32 f64))) (import "ignored" "test2" (func (param i32) (result i32)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 02 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 02 ; num types ; type 0 -000000b: 40 ; function form -000000c: 04 ; num params -000000d: 01 ; param type -000000e: 02 ; param type -000000f: 03 ; param type -0000010: 04 ; param type -0000011: 00 ; num results +000000b: 40 ; function form +000000c: 04 ; num params +000000d: 01 ; param type +000000e: 02 ; param type +000000f: 03 ; param type +0000010: 04 ; param type +0000011: 00 ; num results ; type 1 -0000012: 40 ; function form -0000013: 01 ; num params -0000014: 01 ; param type -0000015: 01 ; num results -0000016: 01 ; result type -0000009: 0d ; FIXUP section size +0000012: 40 ; function form +0000013: 01 ; num params +0000014: 01 ; param type +0000015: 01 ; num results +0000016: 01 ; result type +0000009: 0d ; FIXUP section size ; section "IMPORT" (2) -0000017: 02 ; section code -0000018: 00 ; section size (guess) -0000019: 02 ; num imports +0000017: 02 ; section code +0000018: 00 ; section size (guess) +0000019: 02 ; num imports ; import header 0 -000001a: 07 ; string length +000001a: 07 ; string length 000001b: 6967 6e6f 7265 64 ignored ; import module name -0000022: 04 ; string length +0000022: 04 ; string length 0000023: 7465 7374 test ; import field name -0000027: 00 ; import kind -0000028: 00 ; import signature index +0000027: 00 ; import kind +0000028: 00 ; import signature index ; import header 1 -0000029: 07 ; string length +0000029: 07 ; string length 000002a: 6967 6e6f 7265 64 ignored ; import module name -0000031: 05 ; string length +0000031: 05 ; string length 0000032: 7465 7374 32 test2 ; import field name -0000037: 00 ; import kind -0000038: 01 ; import signature index -0000018: 20 ; FIXUP section size +0000037: 00 ; import kind +0000038: 01 ; import signature index +0000018: 20 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 010d 0240 0401 0203 -0000010: 0400 4001 0101 0102 2002 0769 676e 6f72 -0000020: 6564 0474 6573 7400 0007 6967 6e6f 7265 -0000030: 6405 7465 7374 3200 01 +0000000: 0061 736d 0c00 0000 010d 0240 0401 0203 +0000010: 0400 4001 0101 0102 2002 0769 676e 6f72 +0000020: 6564 0474 6573 7400 0007 6967 6e6f 7265 +0000030: 6405 7465 7374 3200 01 ;;; STDOUT ;;) diff --git a/test/dump/load-aligned.txt b/test/dump/load-aligned.txt index 8dcab810..32826182 100644 --- a/test/dump/load-aligned.txt +++ b/test/dump/load-aligned.txt @@ -24,136 +24,136 @@ (drop (i64.load align=4 (i32.const 0))) (drop (i64.load align=8 (i32.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 20 ; i32.load8_s -000001a: 00 ; alignment -000001b: 00 ; load offset -000001c: 0b ; drop -000001d: 10 ; i32.const -000001e: 00 ; i32 literal -000001f: 22 ; i32.load16_s -0000020: 00 ; alignment -0000021: 00 ; load offset -0000022: 0b ; drop -0000023: 10 ; i32.const -0000024: 00 ; i32 literal -0000025: 22 ; i32.load16_s -0000026: 01 ; alignment -0000027: 00 ; load offset -0000028: 0b ; drop -0000029: 10 ; i32.const -000002a: 00 ; i32 literal -000002b: 2a ; i32.load -000002c: 00 ; alignment -000002d: 00 ; load offset -000002e: 0b ; drop -000002f: 10 ; i32.const -0000030: 00 ; i32 literal -0000031: 2a ; i32.load -0000032: 01 ; alignment -0000033: 00 ; load offset -0000034: 0b ; drop -0000035: 10 ; i32.const -0000036: 00 ; i32 literal -0000037: 2a ; i32.load -0000038: 02 ; alignment -0000039: 00 ; load offset -000003a: 0b ; drop -000003b: 10 ; i32.const -000003c: 00 ; i32 literal -000003d: 24 ; i64.load8_s -000003e: 00 ; alignment -000003f: 00 ; load offset -0000040: 0b ; drop -0000041: 10 ; i32.const -0000042: 00 ; i32 literal -0000043: 26 ; i64.load16_s -0000044: 00 ; alignment -0000045: 00 ; load offset -0000046: 0b ; drop -0000047: 10 ; i32.const -0000048: 00 ; i32 literal -0000049: 26 ; i64.load16_s -000004a: 01 ; alignment -000004b: 00 ; load offset -000004c: 0b ; drop -000004d: 10 ; i32.const -000004e: 00 ; i32 literal -000004f: 28 ; i64.load32_s -0000050: 00 ; alignment -0000051: 00 ; load offset -0000052: 0b ; drop -0000053: 10 ; i32.const -0000054: 00 ; i32 literal -0000055: 28 ; i64.load32_s -0000056: 01 ; alignment -0000057: 00 ; load offset -0000058: 0b ; drop -0000059: 10 ; i32.const -000005a: 00 ; i32 literal -000005b: 28 ; i64.load32_s -000005c: 02 ; alignment -000005d: 00 ; load offset -000005e: 0b ; drop -000005f: 10 ; i32.const -0000060: 00 ; i32 literal -0000061: 2b ; i64.load -0000062: 00 ; alignment -0000063: 00 ; load offset -0000064: 0b ; drop -0000065: 10 ; i32.const -0000066: 00 ; i32 literal -0000067: 2b ; i64.load -0000068: 01 ; alignment -0000069: 00 ; load offset -000006a: 0b ; drop -000006b: 10 ; i32.const -000006c: 00 ; i32 literal -000006d: 2b ; i64.load -000006e: 02 ; alignment -000006f: 00 ; load offset -0000070: 0b ; drop -0000071: 10 ; i32.const -0000072: 00 ; i32 literal -0000073: 2b ; i64.load -0000074: 03 ; alignment -0000075: 00 ; load offset -0000076: 0b ; drop -0000077: 0f ; end -0000015: 62 ; FIXUP func body size -0000013: 64 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 20 ; i32.load8_s +000001a: 00 ; alignment +000001b: 00 ; load offset +000001c: 0b ; drop +000001d: 10 ; i32.const +000001e: 00 ; i32 literal +000001f: 22 ; i32.load16_s +0000020: 00 ; alignment +0000021: 00 ; load offset +0000022: 0b ; drop +0000023: 10 ; i32.const +0000024: 00 ; i32 literal +0000025: 22 ; i32.load16_s +0000026: 01 ; alignment +0000027: 00 ; load offset +0000028: 0b ; drop +0000029: 10 ; i32.const +000002a: 00 ; i32 literal +000002b: 2a ; i32.load +000002c: 00 ; alignment +000002d: 00 ; load offset +000002e: 0b ; drop +000002f: 10 ; i32.const +0000030: 00 ; i32 literal +0000031: 2a ; i32.load +0000032: 01 ; alignment +0000033: 00 ; load offset +0000034: 0b ; drop +0000035: 10 ; i32.const +0000036: 00 ; i32 literal +0000037: 2a ; i32.load +0000038: 02 ; alignment +0000039: 00 ; load offset +000003a: 0b ; drop +000003b: 10 ; i32.const +000003c: 00 ; i32 literal +000003d: 24 ; i64.load8_s +000003e: 00 ; alignment +000003f: 00 ; load offset +0000040: 0b ; drop +0000041: 10 ; i32.const +0000042: 00 ; i32 literal +0000043: 26 ; i64.load16_s +0000044: 00 ; alignment +0000045: 00 ; load offset +0000046: 0b ; drop +0000047: 10 ; i32.const +0000048: 00 ; i32 literal +0000049: 26 ; i64.load16_s +000004a: 01 ; alignment +000004b: 00 ; load offset +000004c: 0b ; drop +000004d: 10 ; i32.const +000004e: 00 ; i32 literal +000004f: 28 ; i64.load32_s +0000050: 00 ; alignment +0000051: 00 ; load offset +0000052: 0b ; drop +0000053: 10 ; i32.const +0000054: 00 ; i32 literal +0000055: 28 ; i64.load32_s +0000056: 01 ; alignment +0000057: 00 ; load offset +0000058: 0b ; drop +0000059: 10 ; i32.const +000005a: 00 ; i32 literal +000005b: 28 ; i64.load32_s +000005c: 02 ; alignment +000005d: 00 ; load offset +000005e: 0b ; drop +000005f: 10 ; i32.const +0000060: 00 ; i32 literal +0000061: 2b ; i64.load +0000062: 00 ; alignment +0000063: 00 ; load offset +0000064: 0b ; drop +0000065: 10 ; i32.const +0000066: 00 ; i32 literal +0000067: 2b ; i64.load +0000068: 01 ; alignment +0000069: 00 ; load offset +000006a: 0b ; drop +000006b: 10 ; i32.const +000006c: 00 ; i32 literal +000006d: 2b ; i64.load +000006e: 02 ; alignment +000006f: 00 ; load offset +0000070: 0b ; drop +0000071: 10 ; i32.const +0000072: 00 ; i32 literal +0000073: 2b ; i64.load +0000074: 03 ; alignment +0000075: 00 ; load offset +0000076: 0b ; drop +0000077: 0f ; end +0000015: 62 ; FIXUP func body size +0000013: 64 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a64 0162 0010 0020 0000 0b10 0022 -0000020: 0000 0b10 0022 0100 0b10 002a 0000 0b10 -0000030: 002a 0100 0b10 002a 0200 0b10 0024 0000 -0000040: 0b10 0026 0000 0b10 0026 0100 0b10 0028 -0000050: 0000 0b10 0028 0100 0b10 0028 0200 0b10 -0000060: 002b 0000 0b10 002b 0100 0b10 002b 0200 -0000070: 0b10 002b 0300 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a64 0162 0010 0020 0000 0b10 0022 +0000020: 0000 0b10 0022 0100 0b10 002a 0000 0b10 +0000030: 002a 0100 0b10 002a 0200 0b10 0024 0000 +0000040: 0b10 0026 0000 0b10 0026 0100 0b10 0028 +0000050: 0000 0b10 0028 0100 0b10 0028 0200 0b10 +0000060: 002b 0000 0b10 002b 0100 0b10 002b 0200 +0000070: 0b10 002b 0300 0b0f ;;; STDOUT ;;) diff --git a/test/dump/load.txt b/test/dump/load.txt index c483afc3..4122551f 100644 --- a/test/dump/load.txt +++ b/test/dump/load.txt @@ -16,123 +16,123 @@ (drop (f32.load (i32.const 0))) (drop (f64.load (i32.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 2a ; i32.load -000001a: 02 ; alignment -000001b: 00 ; load offset -000001c: 0b ; drop -000001d: 10 ; i32.const -000001e: 00 ; i32 literal -000001f: 20 ; i32.load8_s -0000020: 00 ; alignment -0000021: 00 ; load offset -0000022: 0b ; drop -0000023: 10 ; i32.const -0000024: 00 ; i32 literal -0000025: 22 ; i32.load16_s -0000026: 01 ; alignment -0000027: 00 ; load offset -0000028: 0b ; drop -0000029: 10 ; i32.const -000002a: 00 ; i32 literal -000002b: 21 ; i32.load8_u -000002c: 00 ; alignment -000002d: 00 ; load offset -000002e: 0b ; drop -000002f: 10 ; i32.const -0000030: 00 ; i32 literal -0000031: 23 ; i32.load16_u -0000032: 01 ; alignment -0000033: 00 ; load offset -0000034: 0b ; drop -0000035: 10 ; i32.const -0000036: 00 ; i32 literal -0000037: 2b ; i64.load -0000038: 03 ; alignment -0000039: 00 ; load offset -000003a: 0b ; drop -000003b: 10 ; i32.const -000003c: 00 ; i32 literal -000003d: 24 ; i64.load8_s -000003e: 00 ; alignment -000003f: 00 ; load offset -0000040: 0b ; drop -0000041: 10 ; i32.const -0000042: 00 ; i32 literal -0000043: 26 ; i64.load16_s -0000044: 01 ; alignment -0000045: 00 ; load offset -0000046: 0b ; drop -0000047: 10 ; i32.const -0000048: 00 ; i32 literal -0000049: 28 ; i64.load32_s -000004a: 02 ; alignment -000004b: 00 ; load offset -000004c: 0b ; drop -000004d: 10 ; i32.const -000004e: 00 ; i32 literal -000004f: 25 ; i64.load8_u -0000050: 00 ; alignment -0000051: 00 ; load offset -0000052: 0b ; drop -0000053: 10 ; i32.const -0000054: 00 ; i32 literal -0000055: 27 ; i64.load16_u -0000056: 01 ; alignment -0000057: 00 ; load offset -0000058: 0b ; drop -0000059: 10 ; i32.const -000005a: 00 ; i32 literal -000005b: 29 ; i64.load32_u -000005c: 02 ; alignment -000005d: 00 ; load offset -000005e: 0b ; drop -000005f: 10 ; i32.const -0000060: 00 ; i32 literal -0000061: 2c ; f32.load -0000062: 02 ; alignment -0000063: 00 ; load offset -0000064: 0b ; drop -0000065: 10 ; i32.const -0000066: 00 ; i32 literal -0000067: 2d ; f64.load -0000068: 03 ; alignment -0000069: 00 ; load offset -000006a: 0b ; drop -000006b: 0f ; end -0000015: 56 ; FIXUP func body size -0000013: 58 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 2a ; i32.load +000001a: 02 ; alignment +000001b: 00 ; load offset +000001c: 0b ; drop +000001d: 10 ; i32.const +000001e: 00 ; i32 literal +000001f: 20 ; i32.load8_s +0000020: 00 ; alignment +0000021: 00 ; load offset +0000022: 0b ; drop +0000023: 10 ; i32.const +0000024: 00 ; i32 literal +0000025: 22 ; i32.load16_s +0000026: 01 ; alignment +0000027: 00 ; load offset +0000028: 0b ; drop +0000029: 10 ; i32.const +000002a: 00 ; i32 literal +000002b: 21 ; i32.load8_u +000002c: 00 ; alignment +000002d: 00 ; load offset +000002e: 0b ; drop +000002f: 10 ; i32.const +0000030: 00 ; i32 literal +0000031: 23 ; i32.load16_u +0000032: 01 ; alignment +0000033: 00 ; load offset +0000034: 0b ; drop +0000035: 10 ; i32.const +0000036: 00 ; i32 literal +0000037: 2b ; i64.load +0000038: 03 ; alignment +0000039: 00 ; load offset +000003a: 0b ; drop +000003b: 10 ; i32.const +000003c: 00 ; i32 literal +000003d: 24 ; i64.load8_s +000003e: 00 ; alignment +000003f: 00 ; load offset +0000040: 0b ; drop +0000041: 10 ; i32.const +0000042: 00 ; i32 literal +0000043: 26 ; i64.load16_s +0000044: 01 ; alignment +0000045: 00 ; load offset +0000046: 0b ; drop +0000047: 10 ; i32.const +0000048: 00 ; i32 literal +0000049: 28 ; i64.load32_s +000004a: 02 ; alignment +000004b: 00 ; load offset +000004c: 0b ; drop +000004d: 10 ; i32.const +000004e: 00 ; i32 literal +000004f: 25 ; i64.load8_u +0000050: 00 ; alignment +0000051: 00 ; load offset +0000052: 0b ; drop +0000053: 10 ; i32.const +0000054: 00 ; i32 literal +0000055: 27 ; i64.load16_u +0000056: 01 ; alignment +0000057: 00 ; load offset +0000058: 0b ; drop +0000059: 10 ; i32.const +000005a: 00 ; i32 literal +000005b: 29 ; i64.load32_u +000005c: 02 ; alignment +000005d: 00 ; load offset +000005e: 0b ; drop +000005f: 10 ; i32.const +0000060: 00 ; i32 literal +0000061: 2c ; f32.load +0000062: 02 ; alignment +0000063: 00 ; load offset +0000064: 0b ; drop +0000065: 10 ; i32.const +0000066: 00 ; i32 literal +0000067: 2d ; f64.load +0000068: 03 ; alignment +0000069: 00 ; load offset +000006a: 0b ; drop +000006b: 0f ; end +0000015: 56 ; FIXUP func body size +0000013: 58 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a58 0156 0010 002a 0200 0b10 0020 -0000020: 0000 0b10 0022 0100 0b10 0021 0000 0b10 -0000030: 0023 0100 0b10 002b 0300 0b10 0024 0000 -0000040: 0b10 0026 0100 0b10 0028 0200 0b10 0025 -0000050: 0000 0b10 0027 0100 0b10 0029 0200 0b10 -0000060: 002c 0200 0b10 002d 0300 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a58 0156 0010 002a 0200 0b10 0020 +0000020: 0000 0b10 0022 0100 0b10 0021 0000 0b10 +0000030: 0023 0100 0b10 002b 0300 0b10 0024 0000 +0000040: 0b10 0026 0100 0b10 0028 0200 0b10 0025 +0000050: 0000 0b10 0027 0100 0b10 0029 0200 0b10 +0000060: 002c 0200 0b10 002d 0300 0b0f ;;; STDOUT ;;) diff --git a/test/dump/locals.txt b/test/dump/locals.txt index 2ae79822..38d726c4 100644 --- a/test/dump/locals.txt +++ b/test/dump/locals.txt @@ -2,42 +2,42 @@ (module (func (local i32 i64 i64 f32 f32 f32 f64 f64 f64 f64))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 04 ; local decl count -0000017: 01 ; local type count -0000018: 01 ; WASM_TYPE_I32 -0000019: 02 ; local type count -000001a: 02 ; WASM_TYPE_I64 -000001b: 03 ; local type count -000001c: 03 ; WASM_TYPE_F32 -000001d: 04 ; local type count -000001e: 04 ; WASM_TYPE_F64 -000001f: 0f ; end -0000015: 0a ; FIXUP func body size -0000013: 0c ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 04 ; local decl count +0000017: 01 ; local type count +0000018: 01 ; WASM_TYPE_I32 +0000019: 02 ; local type count +000001a: 02 ; WASM_TYPE_I64 +000001b: 03 ; local type count +000001c: 03 ; WASM_TYPE_F32 +000001d: 04 ; local type count +000001e: 04 ; WASM_TYPE_F64 +000001f: 0f ; end +0000015: 0a ; FIXUP func body size +0000013: 0c ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0c 010a 0401 0102 0203 0304 040f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0c 010a 0401 0102 0203 0304 040f ;;; STDOUT ;;) diff --git a/test/dump/loop-257-exprs-br.txt b/test/dump/loop-257-exprs-br.txt index 0409d226..9ef3b896 100644 --- a/test/dump/loop-257-exprs-br.txt +++ b/test/dump/loop-257-exprs-br.txt @@ -49,323 +49,323 @@ (br 0) ;; depth 1 (due to implicit block) )))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 01 ; block -0000018: 00 ; WASM_TYPE_VOID -0000019: 02 ; loop -000001a: 00 ; WASM_TYPE_VOID -000001b: 0a ; nop -000001c: 0a ; nop -000001d: 0a ; nop -000001e: 0a ; nop -000001f: 0a ; nop -0000020: 0a ; nop -0000021: 0a ; nop -0000022: 0a ; nop -0000023: 0a ; nop -0000024: 0a ; nop -0000025: 0a ; nop -0000026: 0a ; nop -0000027: 0a ; nop -0000028: 0a ; nop -0000029: 0a ; nop -000002a: 0a ; nop -000002b: 0a ; nop -000002c: 0a ; nop -000002d: 0a ; nop -000002e: 0a ; nop -000002f: 0a ; nop -0000030: 0a ; nop -0000031: 0a ; nop -0000032: 0a ; nop -0000033: 0a ; nop -0000034: 0a ; nop -0000035: 0a ; nop -0000036: 0a ; nop -0000037: 0a ; nop -0000038: 0a ; nop -0000039: 0a ; nop -000003a: 0a ; nop -000003b: 0a ; nop -000003c: 0a ; nop -000003d: 0a ; nop -000003e: 0a ; nop -000003f: 0a ; nop -0000040: 0a ; nop -0000041: 0a ; nop -0000042: 0a ; nop -0000043: 0a ; nop -0000044: 0a ; nop -0000045: 0a ; nop -0000046: 0a ; nop -0000047: 0a ; nop -0000048: 0a ; nop -0000049: 0a ; nop -000004a: 0a ; nop -000004b: 0a ; nop -000004c: 0a ; nop -000004d: 0a ; nop -000004e: 0a ; nop -000004f: 0a ; nop -0000050: 0a ; nop -0000051: 0a ; nop -0000052: 0a ; nop -0000053: 0a ; nop -0000054: 0a ; nop -0000055: 0a ; nop -0000056: 0a ; nop -0000057: 0a ; nop -0000058: 0a ; nop -0000059: 0a ; nop -000005a: 0a ; nop -000005b: 0a ; nop -000005c: 0a ; nop -000005d: 0a ; nop -000005e: 0a ; nop -000005f: 0a ; nop -0000060: 0a ; nop -0000061: 0a ; nop -0000062: 0a ; nop -0000063: 0a ; nop -0000064: 0a ; nop -0000065: 0a ; nop -0000066: 0a ; nop -0000067: 0a ; nop -0000068: 0a ; nop -0000069: 0a ; nop -000006a: 0a ; nop -000006b: 0a ; nop -000006c: 0a ; nop -000006d: 0a ; nop -000006e: 0a ; nop -000006f: 0a ; nop -0000070: 0a ; nop -0000071: 0a ; nop -0000072: 0a ; nop -0000073: 0a ; nop -0000074: 0a ; nop -0000075: 0a ; nop -0000076: 0a ; nop -0000077: 0a ; nop -0000078: 0a ; nop -0000079: 0a ; nop -000007a: 0a ; nop -000007b: 0a ; nop -000007c: 0a ; nop -000007d: 0a ; nop -000007e: 0a ; nop -000007f: 0a ; nop -0000080: 0a ; nop -0000081: 0a ; nop -0000082: 0a ; nop -0000083: 0a ; nop -0000084: 0a ; nop -0000085: 0a ; nop -0000086: 0a ; nop -0000087: 0a ; nop -0000088: 0a ; nop -0000089: 0a ; nop -000008a: 0a ; nop -000008b: 0a ; nop -000008c: 0a ; nop -000008d: 0a ; nop -000008e: 0a ; nop -000008f: 0a ; nop -0000090: 0a ; nop -0000091: 0a ; nop -0000092: 0a ; nop -0000093: 0a ; nop -0000094: 0a ; nop -0000095: 0a ; nop -0000096: 0a ; nop -0000097: 0a ; nop -0000098: 0a ; nop -0000099: 0a ; nop -000009a: 0a ; nop -000009b: 0a ; nop -000009c: 0a ; nop -000009d: 0a ; nop -000009e: 0a ; nop -000009f: 0a ; nop -00000a0: 0a ; nop -00000a1: 0a ; nop -00000a2: 0a ; nop -00000a3: 0a ; nop -00000a4: 0a ; nop -00000a5: 0a ; nop -00000a6: 0a ; nop -00000a7: 0a ; nop -00000a8: 0a ; nop -00000a9: 0a ; nop -00000aa: 0a ; nop -00000ab: 0a ; nop -00000ac: 0a ; nop -00000ad: 0a ; nop -00000ae: 0a ; nop -00000af: 0a ; nop -00000b0: 0a ; nop -00000b1: 0a ; nop -00000b2: 0a ; nop -00000b3: 0a ; nop -00000b4: 0a ; nop -00000b5: 0a ; nop -00000b6: 0a ; nop -00000b7: 0a ; nop -00000b8: 0a ; nop -00000b9: 0a ; nop -00000ba: 0a ; nop -00000bb: 0a ; nop -00000bc: 0a ; nop -00000bd: 0a ; nop -00000be: 0a ; nop -00000bf: 0a ; nop -00000c0: 0a ; nop -00000c1: 0a ; nop -00000c2: 0a ; nop -00000c3: 0a ; nop -00000c4: 0a ; nop -00000c5: 0a ; nop -00000c6: 0a ; nop -00000c7: 0a ; nop -00000c8: 0a ; nop -00000c9: 0a ; nop -00000ca: 0a ; nop -00000cb: 0a ; nop -00000cc: 0a ; nop -00000cd: 0a ; nop -00000ce: 0a ; nop -00000cf: 0a ; nop -00000d0: 0a ; nop -00000d1: 0a ; nop -00000d2: 0a ; nop -00000d3: 0a ; nop -00000d4: 0a ; nop -00000d5: 0a ; nop -00000d6: 0a ; nop -00000d7: 0a ; nop -00000d8: 0a ; nop -00000d9: 0a ; nop -00000da: 0a ; nop -00000db: 0a ; nop -00000dc: 0a ; nop -00000dd: 0a ; nop -00000de: 0a ; nop -00000df: 0a ; nop -00000e0: 0a ; nop -00000e1: 0a ; nop -00000e2: 0a ; nop -00000e3: 0a ; nop -00000e4: 0a ; nop -00000e5: 0a ; nop -00000e6: 0a ; nop -00000e7: 0a ; nop -00000e8: 0a ; nop -00000e9: 0a ; nop -00000ea: 0a ; nop -00000eb: 0a ; nop -00000ec: 0a ; nop -00000ed: 0a ; nop -00000ee: 0a ; nop -00000ef: 0a ; nop -00000f0: 0a ; nop -00000f1: 0a ; nop -00000f2: 0a ; nop -00000f3: 0a ; nop -00000f4: 0a ; nop -00000f5: 0a ; nop -00000f6: 0a ; nop -00000f7: 0a ; nop -00000f8: 0a ; nop -00000f9: 0a ; nop -00000fa: 0a ; nop -00000fb: 0a ; nop -00000fc: 0a ; nop -00000fd: 0a ; nop -00000fe: 0a ; nop -00000ff: 0a ; nop -0000100: 0a ; nop -0000101: 0a ; nop -0000102: 0a ; nop -0000103: 0a ; nop -0000104: 0a ; nop -0000105: 0a ; nop -0000106: 0a ; nop -0000107: 0a ; nop -0000108: 0a ; nop -0000109: 0a ; nop -000010a: 0a ; nop -000010b: 0a ; nop -000010c: 0a ; nop -000010d: 0a ; nop -000010e: 0a ; nop -000010f: 0a ; nop -0000110: 0a ; nop -0000111: 0a ; nop -0000112: 0a ; nop -0000113: 0a ; nop -0000114: 0a ; nop -0000115: 0a ; nop -0000116: 0a ; nop -0000117: 0a ; nop -0000118: 0a ; nop -0000119: 0a ; nop -000011a: 0a ; nop -000011b: 06 ; br -000011c: 01 ; break depth -000011d: 06 ; br -000011e: 00 ; break depth -000011f: 06 ; br -0000120: 01 ; break depth -0000121: 06 ; br -0000122: 00 ; break depth -0000123: 0f ; end -0000124: 0f ; end -0000125: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 01 ; block +0000018: 00 ; WASM_TYPE_VOID +0000019: 02 ; loop +000001a: 00 ; WASM_TYPE_VOID +000001b: 0a ; nop +000001c: 0a ; nop +000001d: 0a ; nop +000001e: 0a ; nop +000001f: 0a ; nop +0000020: 0a ; nop +0000021: 0a ; nop +0000022: 0a ; nop +0000023: 0a ; nop +0000024: 0a ; nop +0000025: 0a ; nop +0000026: 0a ; nop +0000027: 0a ; nop +0000028: 0a ; nop +0000029: 0a ; nop +000002a: 0a ; nop +000002b: 0a ; nop +000002c: 0a ; nop +000002d: 0a ; nop +000002e: 0a ; nop +000002f: 0a ; nop +0000030: 0a ; nop +0000031: 0a ; nop +0000032: 0a ; nop +0000033: 0a ; nop +0000034: 0a ; nop +0000035: 0a ; nop +0000036: 0a ; nop +0000037: 0a ; nop +0000038: 0a ; nop +0000039: 0a ; nop +000003a: 0a ; nop +000003b: 0a ; nop +000003c: 0a ; nop +000003d: 0a ; nop +000003e: 0a ; nop +000003f: 0a ; nop +0000040: 0a ; nop +0000041: 0a ; nop +0000042: 0a ; nop +0000043: 0a ; nop +0000044: 0a ; nop +0000045: 0a ; nop +0000046: 0a ; nop +0000047: 0a ; nop +0000048: 0a ; nop +0000049: 0a ; nop +000004a: 0a ; nop +000004b: 0a ; nop +000004c: 0a ; nop +000004d: 0a ; nop +000004e: 0a ; nop +000004f: 0a ; nop +0000050: 0a ; nop +0000051: 0a ; nop +0000052: 0a ; nop +0000053: 0a ; nop +0000054: 0a ; nop +0000055: 0a ; nop +0000056: 0a ; nop +0000057: 0a ; nop +0000058: 0a ; nop +0000059: 0a ; nop +000005a: 0a ; nop +000005b: 0a ; nop +000005c: 0a ; nop +000005d: 0a ; nop +000005e: 0a ; nop +000005f: 0a ; nop +0000060: 0a ; nop +0000061: 0a ; nop +0000062: 0a ; nop +0000063: 0a ; nop +0000064: 0a ; nop +0000065: 0a ; nop +0000066: 0a ; nop +0000067: 0a ; nop +0000068: 0a ; nop +0000069: 0a ; nop +000006a: 0a ; nop +000006b: 0a ; nop +000006c: 0a ; nop +000006d: 0a ; nop +000006e: 0a ; nop +000006f: 0a ; nop +0000070: 0a ; nop +0000071: 0a ; nop +0000072: 0a ; nop +0000073: 0a ; nop +0000074: 0a ; nop +0000075: 0a ; nop +0000076: 0a ; nop +0000077: 0a ; nop +0000078: 0a ; nop +0000079: 0a ; nop +000007a: 0a ; nop +000007b: 0a ; nop +000007c: 0a ; nop +000007d: 0a ; nop +000007e: 0a ; nop +000007f: 0a ; nop +0000080: 0a ; nop +0000081: 0a ; nop +0000082: 0a ; nop +0000083: 0a ; nop +0000084: 0a ; nop +0000085: 0a ; nop +0000086: 0a ; nop +0000087: 0a ; nop +0000088: 0a ; nop +0000089: 0a ; nop +000008a: 0a ; nop +000008b: 0a ; nop +000008c: 0a ; nop +000008d: 0a ; nop +000008e: 0a ; nop +000008f: 0a ; nop +0000090: 0a ; nop +0000091: 0a ; nop +0000092: 0a ; nop +0000093: 0a ; nop +0000094: 0a ; nop +0000095: 0a ; nop +0000096: 0a ; nop +0000097: 0a ; nop +0000098: 0a ; nop +0000099: 0a ; nop +000009a: 0a ; nop +000009b: 0a ; nop +000009c: 0a ; nop +000009d: 0a ; nop +000009e: 0a ; nop +000009f: 0a ; nop +00000a0: 0a ; nop +00000a1: 0a ; nop +00000a2: 0a ; nop +00000a3: 0a ; nop +00000a4: 0a ; nop +00000a5: 0a ; nop +00000a6: 0a ; nop +00000a7: 0a ; nop +00000a8: 0a ; nop +00000a9: 0a ; nop +00000aa: 0a ; nop +00000ab: 0a ; nop +00000ac: 0a ; nop +00000ad: 0a ; nop +00000ae: 0a ; nop +00000af: 0a ; nop +00000b0: 0a ; nop +00000b1: 0a ; nop +00000b2: 0a ; nop +00000b3: 0a ; nop +00000b4: 0a ; nop +00000b5: 0a ; nop +00000b6: 0a ; nop +00000b7: 0a ; nop +00000b8: 0a ; nop +00000b9: 0a ; nop +00000ba: 0a ; nop +00000bb: 0a ; nop +00000bc: 0a ; nop +00000bd: 0a ; nop +00000be: 0a ; nop +00000bf: 0a ; nop +00000c0: 0a ; nop +00000c1: 0a ; nop +00000c2: 0a ; nop +00000c3: 0a ; nop +00000c4: 0a ; nop +00000c5: 0a ; nop +00000c6: 0a ; nop +00000c7: 0a ; nop +00000c8: 0a ; nop +00000c9: 0a ; nop +00000ca: 0a ; nop +00000cb: 0a ; nop +00000cc: 0a ; nop +00000cd: 0a ; nop +00000ce: 0a ; nop +00000cf: 0a ; nop +00000d0: 0a ; nop +00000d1: 0a ; nop +00000d2: 0a ; nop +00000d3: 0a ; nop +00000d4: 0a ; nop +00000d5: 0a ; nop +00000d6: 0a ; nop +00000d7: 0a ; nop +00000d8: 0a ; nop +00000d9: 0a ; nop +00000da: 0a ; nop +00000db: 0a ; nop +00000dc: 0a ; nop +00000dd: 0a ; nop +00000de: 0a ; nop +00000df: 0a ; nop +00000e0: 0a ; nop +00000e1: 0a ; nop +00000e2: 0a ; nop +00000e3: 0a ; nop +00000e4: 0a ; nop +00000e5: 0a ; nop +00000e6: 0a ; nop +00000e7: 0a ; nop +00000e8: 0a ; nop +00000e9: 0a ; nop +00000ea: 0a ; nop +00000eb: 0a ; nop +00000ec: 0a ; nop +00000ed: 0a ; nop +00000ee: 0a ; nop +00000ef: 0a ; nop +00000f0: 0a ; nop +00000f1: 0a ; nop +00000f2: 0a ; nop +00000f3: 0a ; nop +00000f4: 0a ; nop +00000f5: 0a ; nop +00000f6: 0a ; nop +00000f7: 0a ; nop +00000f8: 0a ; nop +00000f9: 0a ; nop +00000fa: 0a ; nop +00000fb: 0a ; nop +00000fc: 0a ; nop +00000fd: 0a ; nop +00000fe: 0a ; nop +00000ff: 0a ; nop +0000100: 0a ; nop +0000101: 0a ; nop +0000102: 0a ; nop +0000103: 0a ; nop +0000104: 0a ; nop +0000105: 0a ; nop +0000106: 0a ; nop +0000107: 0a ; nop +0000108: 0a ; nop +0000109: 0a ; nop +000010a: 0a ; nop +000010b: 0a ; nop +000010c: 0a ; nop +000010d: 0a ; nop +000010e: 0a ; nop +000010f: 0a ; nop +0000110: 0a ; nop +0000111: 0a ; nop +0000112: 0a ; nop +0000113: 0a ; nop +0000114: 0a ; nop +0000115: 0a ; nop +0000116: 0a ; nop +0000117: 0a ; nop +0000118: 0a ; nop +0000119: 0a ; nop +000011a: 0a ; nop +000011b: 06 ; br +000011c: 01 ; break depth +000011d: 06 ; br +000011e: 00 ; break depth +000011f: 06 ; br +0000120: 01 ; break depth +0000121: 06 ; br +0000122: 00 ; break depth +0000123: 0f ; end +0000124: 0f ; end +0000125: 0f ; end ; move data: [16, 126) -> [17, 127) -0000015: 9002 ; FIXUP func body size +0000015: 9002 ; FIXUP func body size ; move data: [14, 127) -> [15, 128) -0000013: 9302 ; FIXUP section size +0000013: 9302 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a93 0201 9002 0001 0002 000a 0a0a -0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a06 0106 -0000120: 0006 0106 000f 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a93 0201 9002 0001 0002 000a 0a0a +0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a06 0106 +0000120: 0006 0106 000f 0f0f ;;; STDOUT ;;) diff --git a/test/dump/loop-257-exprs.txt b/test/dump/loop-257-exprs.txt index a330914e..83848941 100644 --- a/test/dump/loop-257-exprs.txt +++ b/test/dump/loop-257-exprs.txt @@ -45,312 +45,312 @@ ;; 257 (nop)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 02 ; loop -0000018: 00 ; WASM_TYPE_VOID -0000019: 0a ; nop -000001a: 0a ; nop -000001b: 0a ; nop -000001c: 0a ; nop -000001d: 0a ; nop -000001e: 0a ; nop -000001f: 0a ; nop -0000020: 0a ; nop -0000021: 0a ; nop -0000022: 0a ; nop -0000023: 0a ; nop -0000024: 0a ; nop -0000025: 0a ; nop -0000026: 0a ; nop -0000027: 0a ; nop -0000028: 0a ; nop -0000029: 0a ; nop -000002a: 0a ; nop -000002b: 0a ; nop -000002c: 0a ; nop -000002d: 0a ; nop -000002e: 0a ; nop -000002f: 0a ; nop -0000030: 0a ; nop -0000031: 0a ; nop -0000032: 0a ; nop -0000033: 0a ; nop -0000034: 0a ; nop -0000035: 0a ; nop -0000036: 0a ; nop -0000037: 0a ; nop -0000038: 0a ; nop -0000039: 0a ; nop -000003a: 0a ; nop -000003b: 0a ; nop -000003c: 0a ; nop -000003d: 0a ; nop -000003e: 0a ; nop -000003f: 0a ; nop -0000040: 0a ; nop -0000041: 0a ; nop -0000042: 0a ; nop -0000043: 0a ; nop -0000044: 0a ; nop -0000045: 0a ; nop -0000046: 0a ; nop -0000047: 0a ; nop -0000048: 0a ; nop -0000049: 0a ; nop -000004a: 0a ; nop -000004b: 0a ; nop -000004c: 0a ; nop -000004d: 0a ; nop -000004e: 0a ; nop -000004f: 0a ; nop -0000050: 0a ; nop -0000051: 0a ; nop -0000052: 0a ; nop -0000053: 0a ; nop -0000054: 0a ; nop -0000055: 0a ; nop -0000056: 0a ; nop -0000057: 0a ; nop -0000058: 0a ; nop -0000059: 0a ; nop -000005a: 0a ; nop -000005b: 0a ; nop -000005c: 0a ; nop -000005d: 0a ; nop -000005e: 0a ; nop -000005f: 0a ; nop -0000060: 0a ; nop -0000061: 0a ; nop -0000062: 0a ; nop -0000063: 0a ; nop -0000064: 0a ; nop -0000065: 0a ; nop -0000066: 0a ; nop -0000067: 0a ; nop -0000068: 0a ; nop -0000069: 0a ; nop -000006a: 0a ; nop -000006b: 0a ; nop -000006c: 0a ; nop -000006d: 0a ; nop -000006e: 0a ; nop -000006f: 0a ; nop -0000070: 0a ; nop -0000071: 0a ; nop -0000072: 0a ; nop -0000073: 0a ; nop -0000074: 0a ; nop -0000075: 0a ; nop -0000076: 0a ; nop -0000077: 0a ; nop -0000078: 0a ; nop -0000079: 0a ; nop -000007a: 0a ; nop -000007b: 0a ; nop -000007c: 0a ; nop -000007d: 0a ; nop -000007e: 0a ; nop -000007f: 0a ; nop -0000080: 0a ; nop -0000081: 0a ; nop -0000082: 0a ; nop -0000083: 0a ; nop -0000084: 0a ; nop -0000085: 0a ; nop -0000086: 0a ; nop -0000087: 0a ; nop -0000088: 0a ; nop -0000089: 0a ; nop -000008a: 0a ; nop -000008b: 0a ; nop -000008c: 0a ; nop -000008d: 0a ; nop -000008e: 0a ; nop -000008f: 0a ; nop -0000090: 0a ; nop -0000091: 0a ; nop -0000092: 0a ; nop -0000093: 0a ; nop -0000094: 0a ; nop -0000095: 0a ; nop -0000096: 0a ; nop -0000097: 0a ; nop -0000098: 0a ; nop -0000099: 0a ; nop -000009a: 0a ; nop -000009b: 0a ; nop -000009c: 0a ; nop -000009d: 0a ; nop -000009e: 0a ; nop -000009f: 0a ; nop -00000a0: 0a ; nop -00000a1: 0a ; nop -00000a2: 0a ; nop -00000a3: 0a ; nop -00000a4: 0a ; nop -00000a5: 0a ; nop -00000a6: 0a ; nop -00000a7: 0a ; nop -00000a8: 0a ; nop -00000a9: 0a ; nop -00000aa: 0a ; nop -00000ab: 0a ; nop -00000ac: 0a ; nop -00000ad: 0a ; nop -00000ae: 0a ; nop -00000af: 0a ; nop -00000b0: 0a ; nop -00000b1: 0a ; nop -00000b2: 0a ; nop -00000b3: 0a ; nop -00000b4: 0a ; nop -00000b5: 0a ; nop -00000b6: 0a ; nop -00000b7: 0a ; nop -00000b8: 0a ; nop -00000b9: 0a ; nop -00000ba: 0a ; nop -00000bb: 0a ; nop -00000bc: 0a ; nop -00000bd: 0a ; nop -00000be: 0a ; nop -00000bf: 0a ; nop -00000c0: 0a ; nop -00000c1: 0a ; nop -00000c2: 0a ; nop -00000c3: 0a ; nop -00000c4: 0a ; nop -00000c5: 0a ; nop -00000c6: 0a ; nop -00000c7: 0a ; nop -00000c8: 0a ; nop -00000c9: 0a ; nop -00000ca: 0a ; nop -00000cb: 0a ; nop -00000cc: 0a ; nop -00000cd: 0a ; nop -00000ce: 0a ; nop -00000cf: 0a ; nop -00000d0: 0a ; nop -00000d1: 0a ; nop -00000d2: 0a ; nop -00000d3: 0a ; nop -00000d4: 0a ; nop -00000d5: 0a ; nop -00000d6: 0a ; nop -00000d7: 0a ; nop -00000d8: 0a ; nop -00000d9: 0a ; nop -00000da: 0a ; nop -00000db: 0a ; nop -00000dc: 0a ; nop -00000dd: 0a ; nop -00000de: 0a ; nop -00000df: 0a ; nop -00000e0: 0a ; nop -00000e1: 0a ; nop -00000e2: 0a ; nop -00000e3: 0a ; nop -00000e4: 0a ; nop -00000e5: 0a ; nop -00000e6: 0a ; nop -00000e7: 0a ; nop -00000e8: 0a ; nop -00000e9: 0a ; nop -00000ea: 0a ; nop -00000eb: 0a ; nop -00000ec: 0a ; nop -00000ed: 0a ; nop -00000ee: 0a ; nop -00000ef: 0a ; nop -00000f0: 0a ; nop -00000f1: 0a ; nop -00000f2: 0a ; nop -00000f3: 0a ; nop -00000f4: 0a ; nop -00000f5: 0a ; nop -00000f6: 0a ; nop -00000f7: 0a ; nop -00000f8: 0a ; nop -00000f9: 0a ; nop -00000fa: 0a ; nop -00000fb: 0a ; nop -00000fc: 0a ; nop -00000fd: 0a ; nop -00000fe: 0a ; nop -00000ff: 0a ; nop -0000100: 0a ; nop -0000101: 0a ; nop -0000102: 0a ; nop -0000103: 0a ; nop -0000104: 0a ; nop -0000105: 0a ; nop -0000106: 0a ; nop -0000107: 0a ; nop -0000108: 0a ; nop -0000109: 0a ; nop -000010a: 0a ; nop -000010b: 0a ; nop -000010c: 0a ; nop -000010d: 0a ; nop -000010e: 0a ; nop -000010f: 0a ; nop -0000110: 0a ; nop -0000111: 0a ; nop -0000112: 0a ; nop -0000113: 0a ; nop -0000114: 0a ; nop -0000115: 0a ; nop -0000116: 0a ; nop -0000117: 0a ; nop -0000118: 0a ; nop -0000119: 0a ; nop -000011a: 0f ; end -000011b: 0f ; end +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 02 ; loop +0000018: 00 ; WASM_TYPE_VOID +0000019: 0a ; nop +000001a: 0a ; nop +000001b: 0a ; nop +000001c: 0a ; nop +000001d: 0a ; nop +000001e: 0a ; nop +000001f: 0a ; nop +0000020: 0a ; nop +0000021: 0a ; nop +0000022: 0a ; nop +0000023: 0a ; nop +0000024: 0a ; nop +0000025: 0a ; nop +0000026: 0a ; nop +0000027: 0a ; nop +0000028: 0a ; nop +0000029: 0a ; nop +000002a: 0a ; nop +000002b: 0a ; nop +000002c: 0a ; nop +000002d: 0a ; nop +000002e: 0a ; nop +000002f: 0a ; nop +0000030: 0a ; nop +0000031: 0a ; nop +0000032: 0a ; nop +0000033: 0a ; nop +0000034: 0a ; nop +0000035: 0a ; nop +0000036: 0a ; nop +0000037: 0a ; nop +0000038: 0a ; nop +0000039: 0a ; nop +000003a: 0a ; nop +000003b: 0a ; nop +000003c: 0a ; nop +000003d: 0a ; nop +000003e: 0a ; nop +000003f: 0a ; nop +0000040: 0a ; nop +0000041: 0a ; nop +0000042: 0a ; nop +0000043: 0a ; nop +0000044: 0a ; nop +0000045: 0a ; nop +0000046: 0a ; nop +0000047: 0a ; nop +0000048: 0a ; nop +0000049: 0a ; nop +000004a: 0a ; nop +000004b: 0a ; nop +000004c: 0a ; nop +000004d: 0a ; nop +000004e: 0a ; nop +000004f: 0a ; nop +0000050: 0a ; nop +0000051: 0a ; nop +0000052: 0a ; nop +0000053: 0a ; nop +0000054: 0a ; nop +0000055: 0a ; nop +0000056: 0a ; nop +0000057: 0a ; nop +0000058: 0a ; nop +0000059: 0a ; nop +000005a: 0a ; nop +000005b: 0a ; nop +000005c: 0a ; nop +000005d: 0a ; nop +000005e: 0a ; nop +000005f: 0a ; nop +0000060: 0a ; nop +0000061: 0a ; nop +0000062: 0a ; nop +0000063: 0a ; nop +0000064: 0a ; nop +0000065: 0a ; nop +0000066: 0a ; nop +0000067: 0a ; nop +0000068: 0a ; nop +0000069: 0a ; nop +000006a: 0a ; nop +000006b: 0a ; nop +000006c: 0a ; nop +000006d: 0a ; nop +000006e: 0a ; nop +000006f: 0a ; nop +0000070: 0a ; nop +0000071: 0a ; nop +0000072: 0a ; nop +0000073: 0a ; nop +0000074: 0a ; nop +0000075: 0a ; nop +0000076: 0a ; nop +0000077: 0a ; nop +0000078: 0a ; nop +0000079: 0a ; nop +000007a: 0a ; nop +000007b: 0a ; nop +000007c: 0a ; nop +000007d: 0a ; nop +000007e: 0a ; nop +000007f: 0a ; nop +0000080: 0a ; nop +0000081: 0a ; nop +0000082: 0a ; nop +0000083: 0a ; nop +0000084: 0a ; nop +0000085: 0a ; nop +0000086: 0a ; nop +0000087: 0a ; nop +0000088: 0a ; nop +0000089: 0a ; nop +000008a: 0a ; nop +000008b: 0a ; nop +000008c: 0a ; nop +000008d: 0a ; nop +000008e: 0a ; nop +000008f: 0a ; nop +0000090: 0a ; nop +0000091: 0a ; nop +0000092: 0a ; nop +0000093: 0a ; nop +0000094: 0a ; nop +0000095: 0a ; nop +0000096: 0a ; nop +0000097: 0a ; nop +0000098: 0a ; nop +0000099: 0a ; nop +000009a: 0a ; nop +000009b: 0a ; nop +000009c: 0a ; nop +000009d: 0a ; nop +000009e: 0a ; nop +000009f: 0a ; nop +00000a0: 0a ; nop +00000a1: 0a ; nop +00000a2: 0a ; nop +00000a3: 0a ; nop +00000a4: 0a ; nop +00000a5: 0a ; nop +00000a6: 0a ; nop +00000a7: 0a ; nop +00000a8: 0a ; nop +00000a9: 0a ; nop +00000aa: 0a ; nop +00000ab: 0a ; nop +00000ac: 0a ; nop +00000ad: 0a ; nop +00000ae: 0a ; nop +00000af: 0a ; nop +00000b0: 0a ; nop +00000b1: 0a ; nop +00000b2: 0a ; nop +00000b3: 0a ; nop +00000b4: 0a ; nop +00000b5: 0a ; nop +00000b6: 0a ; nop +00000b7: 0a ; nop +00000b8: 0a ; nop +00000b9: 0a ; nop +00000ba: 0a ; nop +00000bb: 0a ; nop +00000bc: 0a ; nop +00000bd: 0a ; nop +00000be: 0a ; nop +00000bf: 0a ; nop +00000c0: 0a ; nop +00000c1: 0a ; nop +00000c2: 0a ; nop +00000c3: 0a ; nop +00000c4: 0a ; nop +00000c5: 0a ; nop +00000c6: 0a ; nop +00000c7: 0a ; nop +00000c8: 0a ; nop +00000c9: 0a ; nop +00000ca: 0a ; nop +00000cb: 0a ; nop +00000cc: 0a ; nop +00000cd: 0a ; nop +00000ce: 0a ; nop +00000cf: 0a ; nop +00000d0: 0a ; nop +00000d1: 0a ; nop +00000d2: 0a ; nop +00000d3: 0a ; nop +00000d4: 0a ; nop +00000d5: 0a ; nop +00000d6: 0a ; nop +00000d7: 0a ; nop +00000d8: 0a ; nop +00000d9: 0a ; nop +00000da: 0a ; nop +00000db: 0a ; nop +00000dc: 0a ; nop +00000dd: 0a ; nop +00000de: 0a ; nop +00000df: 0a ; nop +00000e0: 0a ; nop +00000e1: 0a ; nop +00000e2: 0a ; nop +00000e3: 0a ; nop +00000e4: 0a ; nop +00000e5: 0a ; nop +00000e6: 0a ; nop +00000e7: 0a ; nop +00000e8: 0a ; nop +00000e9: 0a ; nop +00000ea: 0a ; nop +00000eb: 0a ; nop +00000ec: 0a ; nop +00000ed: 0a ; nop +00000ee: 0a ; nop +00000ef: 0a ; nop +00000f0: 0a ; nop +00000f1: 0a ; nop +00000f2: 0a ; nop +00000f3: 0a ; nop +00000f4: 0a ; nop +00000f5: 0a ; nop +00000f6: 0a ; nop +00000f7: 0a ; nop +00000f8: 0a ; nop +00000f9: 0a ; nop +00000fa: 0a ; nop +00000fb: 0a ; nop +00000fc: 0a ; nop +00000fd: 0a ; nop +00000fe: 0a ; nop +00000ff: 0a ; nop +0000100: 0a ; nop +0000101: 0a ; nop +0000102: 0a ; nop +0000103: 0a ; nop +0000104: 0a ; nop +0000105: 0a ; nop +0000106: 0a ; nop +0000107: 0a ; nop +0000108: 0a ; nop +0000109: 0a ; nop +000010a: 0a ; nop +000010b: 0a ; nop +000010c: 0a ; nop +000010d: 0a ; nop +000010e: 0a ; nop +000010f: 0a ; nop +0000110: 0a ; nop +0000111: 0a ; nop +0000112: 0a ; nop +0000113: 0a ; nop +0000114: 0a ; nop +0000115: 0a ; nop +0000116: 0a ; nop +0000117: 0a ; nop +0000118: 0a ; nop +0000119: 0a ; nop +000011a: 0f ; end +000011b: 0f ; end ; move data: [16, 11c) -> [17, 11d) -0000015: 8602 ; FIXUP func body size +0000015: 8602 ; FIXUP func body size ; move data: [14, 11d) -> [15, 11e) -0000013: 8902 ; FIXUP section size +0000013: 8902 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a89 0201 8602 0002 000a 0a0a 0a0a -0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a -0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0f0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a89 0201 8602 0002 000a 0a0a 0a0a +0000020: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000030: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000040: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000050: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000060: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000070: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000080: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000090: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000a0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000b0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000c0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000d0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000e0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +00000f0: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000100: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a +0000110: 0a0a 0a0a 0a0a 0a0a 0a0a 0a0a 0f0f ;;; STDOUT ;;) diff --git a/test/dump/loop.txt b/test/dump/loop.txt index dcd15299..ee298ef5 100644 --- a/test/dump/loop.txt +++ b/test/dump/loop.txt @@ -5,39 +5,39 @@ (nop) (nop)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 02 ; loop -0000018: 00 ; WASM_TYPE_VOID -0000019: 0a ; nop -000001a: 0a ; nop -000001b: 0f ; end -000001c: 0f ; end -0000015: 07 ; FIXUP func body size -0000013: 09 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 02 ; loop +0000018: 00 ; WASM_TYPE_VOID +0000019: 0a ; nop +000001a: 0a ; nop +000001b: 0f ; end +000001c: 0f ; end +0000015: 07 ; FIXUP func body size +0000013: 09 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a09 0107 0002 000a 0a0f 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a09 0107 0002 000a 0a0f 0f ;;; STDOUT ;;) diff --git a/test/dump/memory-1-byte.txt b/test/dump/memory-1-byte.txt index bc2ba0be..d3965ac1 100644 --- a/test/dump/memory-1-byte.txt +++ b/test/dump/memory-1-byte.txt @@ -1,16 +1,16 @@ ;;; FLAGS: -dv (module (memory 1)) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 01 ; memory initial pages -0000009: 03 ; FIXUP section size +000000b: 00 ; memory flags +000000c: 01 ; memory initial pages +0000009: 03 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0503 0100 01 +0000000: 0061 736d 0c00 0000 0503 0100 01 ;;; STDOUT ;;) diff --git a/test/dump/memory-data-size.txt b/test/dump/memory-data-size.txt index 29c24603..1a533276 100644 --- a/test/dump/memory-data-size.txt +++ b/test/dump/memory-data-size.txt @@ -4,44 +4,44 @@ (module (memory 4)) (module (memory 5)) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 01 ; memory initial pages -0000009: 03 ; FIXUP section size -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +000000b: 00 ; memory flags +000000c: 01 ; memory initial pages +0000009: 03 ; FIXUP section size +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 02 ; memory initial pages -0000009: 03 ; FIXUP section size -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +000000b: 00 ; memory flags +000000c: 02 ; memory initial pages +0000009: 03 ; FIXUP section size +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 04 ; memory initial pages -0000009: 03 ; FIXUP section size -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +000000b: 00 ; memory flags +000000c: 04 ; memory initial pages +0000009: 03 ; FIXUP section size +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 05 ; memory initial pages -0000009: 03 ; FIXUP section size +000000b: 00 ; memory flags +000000c: 05 ; memory initial pages +0000009: 03 ; FIXUP section size ;;; STDOUT ;;) diff --git a/test/dump/memory-hex.txt b/test/dump/memory-hex.txt index 3d6a691c..bfce8de5 100644 --- a/test/dump/memory-hex.txt +++ b/test/dump/memory-hex.txt @@ -3,32 +3,32 @@ (memory (data "\00\01\02\03\04\05\06\07\08\09\0a"))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 01 ; memory flags -000000c: 01 ; memory initial pages -000000d: 01 ; memory max pages -0000009: 04 ; FIXUP section size +000000b: 01 ; memory flags +000000c: 01 ; memory initial pages +000000d: 01 ; memory max pages +0000009: 04 ; FIXUP section size ; section "DATA" (11) -000000e: 0b ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num data segments +000000e: 0b ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num data segments ; data segment header 0 -0000011: 00 ; memory index -0000012: 10 ; i32.const -0000013: 00 ; i32 literal -0000014: 0f ; end -0000015: 0b ; data segment size +0000011: 00 ; memory index +0000012: 10 ; i32.const +0000013: 00 ; i32 literal +0000014: 0f ; end +0000015: 0b ; data segment size ; data segment data 0 -0000016: 0001 0203 0405 0607 0809 0a ; data segment data -000000f: 11 ; FIXUP section size +0000016: 0001 0203 0405 0607 0809 0a ; data segment data +000000f: 11 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0504 0101 0101 0b11 -0000010: 0100 1000 0f0b 0001 0203 0405 0607 0809 -0000020: 0a +0000000: 0061 736d 0c00 0000 0504 0101 0101 0b11 +0000010: 0100 1000 0f0b 0001 0203 0405 0607 0809 +0000020: 0a ;;; STDOUT ;;) diff --git a/test/dump/memory.txt b/test/dump/memory.txt index 98f433fb..93792721 100644 --- a/test/dump/memory.txt +++ b/test/dump/memory.txt @@ -4,39 +4,39 @@ (data (i32.const 10) "hello") (data (i32.const 20) "goodbye")) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "MEMORY" (5) -0000008: 05 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num memories +0000008: 05 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num memories ; memory 0 -000000b: 00 ; memory flags -000000c: 01 ; memory initial pages -0000009: 03 ; FIXUP section size +000000b: 00 ; memory flags +000000c: 01 ; memory initial pages +0000009: 03 ; FIXUP section size ; section "DATA" (11) -000000d: 0b ; section code -000000e: 00 ; section size (guess) -000000f: 02 ; num data segments +000000d: 0b ; section code +000000e: 00 ; section size (guess) +000000f: 02 ; num data segments ; data segment header 0 -0000010: 00 ; memory index -0000011: 10 ; i32.const -0000012: 0a ; i32 literal -0000013: 0f ; end -0000014: 05 ; data segment size +0000010: 00 ; memory index +0000011: 10 ; i32.const +0000012: 0a ; i32 literal +0000013: 0f ; end +0000014: 05 ; data segment size ; data segment data 0 -0000015: 6865 6c6c 6f ; data segment data +0000015: 6865 6c6c 6f ; data segment data ; data segment header 1 -000001a: 00 ; memory index -000001b: 10 ; i32.const -000001c: 14 ; i32 literal -000001d: 0f ; end -000001e: 07 ; data segment size +000001a: 00 ; memory index +000001b: 10 ; i32.const +000001c: 14 ; i32 literal +000001d: 0f ; end +000001e: 07 ; data segment size ; data segment data 1 -000001f: 676f 6f64 6279 65 ; data segment data -000000e: 17 ; FIXUP section size +000001f: 676f 6f64 6279 65 ; data segment data +000000e: 17 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0503 0100 010b 1702 -0000010: 0010 0a0f 0568 656c 6c6f 0010 140f 0767 -0000020: 6f6f 6462 7965 +0000000: 0061 736d 0c00 0000 0503 0100 010b 1702 +0000010: 0010 0a0f 0568 656c 6c6f 0010 140f 0767 +0000020: 6f6f 6462 7965 ;;; STDOUT ;;) diff --git a/test/dump/no-canonicalize.txt b/test/dump/no-canonicalize.txt index fa9f64c4..bf7ce393 100644 --- a/test/dump/no-canonicalize.txt +++ b/test/dump/no-canonicalize.txt @@ -12,138 +12,138 @@ (func $f3 (param i32) (drop (i32.mul (get_local 0) (i32.const 2))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 0000 0000 00 ; section size (guess) -000000e: 03 ; num types +0000008: 01 ; section code +0000009: 0000 0000 00 ; section size (guess) +000000e: 03 ; num types ; type 0 -000000f: 40 ; function form -0000010: 01 ; num params -0000011: 01 ; param type -0000012: 00 ; num results +000000f: 40 ; function form +0000010: 01 ; num params +0000011: 01 ; param type +0000012: 00 ; num results ; type 1 -0000013: 40 ; function form -0000014: 01 ; num params -0000015: 01 ; param type -0000016: 01 ; num results -0000017: 01 ; result type +0000013: 40 ; function form +0000014: 01 ; num params +0000015: 01 ; param type +0000016: 01 ; num results +0000017: 01 ; result type ; type 2 -0000018: 40 ; function form -0000019: 02 ; num params -000001a: 01 ; param type -000001b: 01 ; param type -000001c: 00 ; num results -0000009: 8f80 8080 00 ; FIXUP section size +0000018: 40 ; function form +0000019: 02 ; num params +000001a: 01 ; param type +000001b: 01 ; param type +000001c: 00 ; num results +0000009: 8f80 8080 00 ; FIXUP section size ; section "IMPORT" (2) -000001d: 02 ; section code -000001e: 0000 0000 00 ; section size (guess) -0000023: 01 ; num imports +000001d: 02 ; section code +000001e: 0000 0000 00 ; section size (guess) +0000023: 01 ; num imports ; import header 0 -0000024: 05 ; string length +0000024: 05 ; string length 0000025: 7374 6469 6f stdio ; import module name -000002a: 05 ; string length +000002a: 05 ; string length 000002b: 7072 696e 74 print ; import field name -0000030: 00 ; import kind -0000031: 00 ; import signature index -000001e: 8f80 8080 00 ; FIXUP section size +0000030: 00 ; import kind +0000031: 00 ; import signature index +000001e: 8f80 8080 00 ; FIXUP section size ; section "FUNCTION" (3) -0000032: 03 ; section code -0000033: 0000 0000 00 ; section size (guess) -0000038: 03 ; num functions -0000039: 02 ; function 0 signature index -000003a: 00 ; function 1 signature index -000003b: 00 ; function 2 signature index -0000033: 8480 8080 00 ; FIXUP section size +0000032: 03 ; section code +0000033: 0000 0000 00 ; section size (guess) +0000038: 03 ; num functions +0000039: 02 ; function 0 signature index +000003a: 00 ; function 1 signature index +000003b: 00 ; function 2 signature index +0000033: 8480 8080 00 ; FIXUP section size ; section "TABLE" (4) -000003c: 04 ; section code -000003d: 0000 0000 00 ; section size (guess) -0000042: 01 ; num tables +000003c: 04 ; section code +000003d: 0000 0000 00 ; section size (guess) +0000042: 01 ; num tables ; table 0 -0000043: 20 ; table elem type -0000044: 01 ; table flags -0000045: 02 ; table initial elems -0000046: 02 ; table max elems -000003d: 8580 8080 00 ; FIXUP section size +0000043: 20 ; table elem type +0000044: 01 ; table flags +0000045: 02 ; table initial elems +0000046: 02 ; table max elems +000003d: 8580 8080 00 ; FIXUP section size ; section "MEMORY" (5) -0000047: 05 ; section code -0000048: 0000 0000 00 ; section size (guess) -000004d: 01 ; num memories +0000047: 05 ; section code +0000048: 0000 0000 00 ; section size (guess) +000004d: 01 ; num memories ; memory 0 -000004e: 00 ; memory flags -000004f: 64 ; memory initial pages -0000048: 8380 8080 00 ; FIXUP section size +000004e: 00 ; memory flags +000004f: 64 ; memory initial pages +0000048: 8380 8080 00 ; FIXUP section size ; section "EXPORT" (7) -0000050: 07 ; section code -0000051: 0000 0000 00 ; section size (guess) -0000056: 01 ; num exports -0000057: 02 ; string length +0000050: 07 ; section code +0000051: 0000 0000 00 ; section size (guess) +0000056: 01 ; num exports +0000057: 02 ; string length 0000058: 6631 f1 ; export name -000005a: 00 ; export kind -000005b: 01 ; export func index -0000051: 8680 8080 00 ; FIXUP section size +000005a: 00 ; export kind +000005b: 01 ; export func index +0000051: 8680 8080 00 ; FIXUP section size ; section "ELEM" (9) -000005c: 09 ; section code -000005d: 0000 0000 00 ; section size (guess) -0000062: 01 ; num elem segments +000005c: 09 ; section code +000005d: 0000 0000 00 ; section size (guess) +0000062: 01 ; num elem segments ; elem segment header 0 -0000063: 00 ; table index -0000064: 10 ; i32.const -0000065: 00 ; i32 literal -0000066: 0f ; end -0000067: 02 ; num function indices -0000068: 02 ; function index -0000069: 03 ; function index -000005d: 8880 8080 00 ; FIXUP section size +0000063: 00 ; table index +0000064: 10 ; i32.const +0000065: 00 ; i32 literal +0000066: 0f ; end +0000067: 02 ; num function indices +0000068: 02 ; function index +0000069: 03 ; function index +000005d: 8880 8080 00 ; FIXUP section size ; section "CODE" (10) -000006a: 0a ; section code -000006b: 0000 0000 00 ; section size (guess) -0000070: 03 ; num functions +000006a: 0a ; section code +000006b: 0000 0000 00 ; section size (guess) +0000070: 03 ; num functions ; function body 0 -0000071: 0000 0000 00 ; func body size (guess) -0000076: 00 ; local decl count -0000077: 14 ; get_local -0000078: 00 ; local index -0000079: 14 ; get_local -000007a: 01 ; local index -000007b: 17 ; call_indirect -000007c: 01 ; signature index -000007d: 0b ; drop -000007e: 0f ; end -0000071: 8980 8080 00 ; FIXUP func body size +0000071: 0000 0000 00 ; func body size (guess) +0000076: 00 ; local decl count +0000077: 14 ; get_local +0000078: 00 ; local index +0000079: 14 ; get_local +000007a: 01 ; local index +000007b: 17 ; call_indirect +000007c: 01 ; signature index +000007d: 0b ; drop +000007e: 0f ; end +0000071: 8980 8080 00 ; FIXUP func body size ; function body 1 -000007f: 0000 0000 00 ; func body size (guess) -0000084: 00 ; local decl count -0000085: 14 ; get_local -0000086: 00 ; local index -0000087: 10 ; i32.const -0000088: 01 ; i32 literal -0000089: 40 ; i32.add -000008a: 0b ; drop -000008b: 0f ; end -000007f: 8880 8080 00 ; FIXUP func body size +000007f: 0000 0000 00 ; func body size (guess) +0000084: 00 ; local decl count +0000085: 14 ; get_local +0000086: 00 ; local index +0000087: 10 ; i32.const +0000088: 01 ; i32 literal +0000089: 40 ; i32.add +000008a: 0b ; drop +000008b: 0f ; end +000007f: 8880 8080 00 ; FIXUP func body size ; function body 2 -000008c: 0000 0000 00 ; func body size (guess) -0000091: 00 ; local decl count -0000092: 14 ; get_local -0000093: 00 ; local index -0000094: 10 ; i32.const -0000095: 02 ; i32 literal -0000096: 42 ; i32.mul -0000097: 0b ; drop -0000098: 0f ; end -000008c: 8880 8080 00 ; FIXUP func body size -000006b: a980 8080 00 ; FIXUP section size +000008c: 0000 0000 00 ; func body size (guess) +0000091: 00 ; local decl count +0000092: 14 ; get_local +0000093: 00 ; local index +0000094: 10 ; i32.const +0000095: 02 ; i32 literal +0000096: 42 ; i32.mul +0000097: 0b ; drop +0000098: 0f ; end +000008c: 8880 8080 00 ; FIXUP func body size +000006b: a980 8080 00 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 018f 8080 8000 0340 -0000010: 0101 0040 0101 0101 4002 0101 0002 8f80 -0000020: 8080 0001 0573 7464 696f 0570 7269 6e74 -0000030: 0000 0384 8080 8000 0302 0000 0485 8080 -0000040: 8000 0120 0102 0205 8380 8080 0001 0064 -0000050: 0786 8080 8000 0102 6631 0001 0988 8080 -0000060: 8000 0100 1000 0f02 0203 0aa9 8080 8000 -0000070: 0389 8080 8000 0014 0014 0117 010b 0f88 -0000080: 8080 8000 0014 0010 0140 0b0f 8880 8080 -0000090: 0000 1400 1002 420b 0f +0000000: 0061 736d 0c00 0000 018f 8080 8000 0340 +0000010: 0101 0040 0101 0101 4002 0101 0002 8f80 +0000020: 8080 0001 0573 7464 696f 0570 7269 6e74 +0000030: 0000 0384 8080 8000 0302 0000 0485 8080 +0000040: 8000 0120 0102 0205 8380 8080 0001 0064 +0000050: 0786 8080 8000 0102 6631 0001 0988 8080 +0000060: 8000 0100 1000 0f02 0203 0aa9 8080 8000 +0000070: 0389 8080 8000 0014 0014 0117 010b 0f88 +0000080: 8080 8000 0014 0010 0140 0b0f 8880 8080 +0000090: 0000 1400 1002 420b 0f ;;; STDOUT ;;) diff --git a/test/dump/nocheck.txt b/test/dump/nocheck.txt index 47b7f34b..4108f986 100644 --- a/test/dump/nocheck.txt +++ b/test/dump/nocheck.txt @@ -6,46 +6,46 @@ (f64.const 2))) (export "foo" (func 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 02 ; result type -0000009: 05 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 02 ; result type +0000009: 05 ; FIXUP section size ; section "FUNCTION" (3) -000000f: 03 ; section code -0000010: 00 ; section size (guess) -0000011: 01 ; num functions -0000012: 00 ; function 0 signature index -0000010: 02 ; FIXUP section size +000000f: 03 ; section code +0000010: 00 ; section size (guess) +0000011: 01 ; num functions +0000012: 00 ; function 0 signature index +0000010: 02 ; FIXUP section size ; section "EXPORT" (7) -0000013: 07 ; section code -0000014: 00 ; section size (guess) -0000015: 01 ; num exports -0000016: 03 ; string length +0000013: 07 ; section code +0000014: 00 ; section size (guess) +0000015: 01 ; num exports +0000016: 03 ; string length 0000017: 666f 6f foo ; export name -000001a: 00 ; export kind -000001b: 00 ; export func index -0000014: 07 ; FIXUP section size +000001a: 00 ; export kind +000001b: 00 ; export func index +0000014: 07 ; FIXUP section size ; section "CODE" (10) -000001c: 0a ; section code -000001d: 00 ; section size (guess) -000001e: 01 ; num functions +000001c: 0a ; section code +000001d: 00 ; section size (guess) +000001e: 01 ; num functions ; function body 0 -000001f: 00 ; func body size (guess) -0000020: 00 ; local decl count -0000021: 13 ; f32.const -0000022: 0000 803f ; f32 literal -0000026: 12 ; f64.const -0000027: 0000 0000 0000 0040 ; f64 literal -000002f: 40 ; i32.add -0000030: 0f ; end -000001f: 11 ; FIXUP func body size -000001d: 13 ; FIXUP section size +000001f: 00 ; func body size (guess) +0000020: 00 ; local decl count +0000021: 13 ; f32.const +0000022: 0000 803f ; f32 literal +0000026: 12 ; f64.const +0000027: 0000 0000 0000 0040 ; f64 literal +000002f: 40 ; i32.add +0000030: 0f ; end +000001f: 11 ; FIXUP func body size +000001d: 13 ; FIXUP section size ;;; STDOUT ;;) diff --git a/test/dump/nop.txt b/test/dump/nop.txt index ac59abb2..e07a859e 100644 --- a/test/dump/nop.txt +++ b/test/dump/nop.txt @@ -2,35 +2,35 @@ (module (func (nop))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 0a ; nop -0000018: 0f ; end -0000015: 03 ; FIXUP func body size -0000013: 05 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 0a ; nop +0000018: 0f ; end +0000015: 03 ; FIXUP func body size +0000013: 05 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a05 0103 000a 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a05 0103 000a 0f ;;; STDOUT ;;) diff --git a/test/dump/param-multi.txt b/test/dump/param-multi.txt index 60eec889..d015c67c 100644 --- a/test/dump/param-multi.txt +++ b/test/dump/param-multi.txt @@ -2,38 +2,38 @@ (module (func (param i32 i64 f32 f64))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 04 ; num params -000000d: 01 ; param type -000000e: 02 ; param type -000000f: 03 ; param type -0000010: 04 ; param type -0000011: 00 ; num results -0000009: 08 ; FIXUP section size +000000b: 40 ; function form +000000c: 04 ; num params +000000d: 01 ; param type +000000e: 02 ; param type +000000f: 03 ; param type +0000010: 04 ; param type +0000011: 00 ; num results +0000009: 08 ; FIXUP section size ; section "FUNCTION" (3) -0000012: 03 ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions -0000015: 00 ; function 0 signature index -0000013: 02 ; FIXUP section size +0000012: 03 ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions +0000015: 00 ; function 0 signature index +0000013: 02 ; FIXUP section size ; section "CODE" (10) -0000016: 0a ; section code -0000017: 00 ; section size (guess) -0000018: 01 ; num functions +0000016: 0a ; section code +0000017: 00 ; section size (guess) +0000018: 01 ; num functions ; function body 0 -0000019: 00 ; func body size (guess) -000001a: 00 ; local decl count -000001b: 0f ; end -0000019: 02 ; FIXUP func body size -0000017: 04 ; FIXUP section size +0000019: 00 ; func body size (guess) +000001a: 00 ; local decl count +000001b: 0f ; end +0000019: 02 ; FIXUP func body size +0000017: 04 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0108 0140 0401 0203 -0000010: 0400 0302 0100 0a04 0102 000f +0000000: 0061 736d 0c00 0000 0108 0140 0401 0203 +0000010: 0400 0302 0100 0a04 0102 000f ;;; STDOUT ;;) diff --git a/test/dump/result.txt b/test/dump/result.txt index a4249518..55c9764e 100644 --- a/test/dump/result.txt +++ b/test/dump/result.txt @@ -5,79 +5,79 @@ (func (result f32) (f32.const 0)) (func (result f64) (f64.const 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 04 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 04 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type ; type 1 -000000f: 40 ; function form -0000010: 00 ; num params -0000011: 01 ; num results -0000012: 02 ; result type +000000f: 40 ; function form +0000010: 00 ; num params +0000011: 01 ; num results +0000012: 02 ; result type ; type 2 -0000013: 40 ; function form -0000014: 00 ; num params -0000015: 01 ; num results -0000016: 03 ; result type +0000013: 40 ; function form +0000014: 00 ; num params +0000015: 01 ; num results +0000016: 03 ; result type ; type 3 -0000017: 40 ; function form -0000018: 00 ; num params -0000019: 01 ; num results -000001a: 04 ; result type -0000009: 11 ; FIXUP section size +0000017: 40 ; function form +0000018: 00 ; num params +0000019: 01 ; num results +000001a: 04 ; result type +0000009: 11 ; FIXUP section size ; section "FUNCTION" (3) -000001b: 03 ; section code -000001c: 00 ; section size (guess) -000001d: 04 ; num functions -000001e: 00 ; function 0 signature index -000001f: 01 ; function 1 signature index -0000020: 02 ; function 2 signature index -0000021: 03 ; function 3 signature index -000001c: 05 ; FIXUP section size +000001b: 03 ; section code +000001c: 00 ; section size (guess) +000001d: 04 ; num functions +000001e: 00 ; function 0 signature index +000001f: 01 ; function 1 signature index +0000020: 02 ; function 2 signature index +0000021: 03 ; function 3 signature index +000001c: 05 ; FIXUP section size ; section "CODE" (10) -0000022: 0a ; section code -0000023: 00 ; section size (guess) -0000024: 04 ; num functions +0000022: 0a ; section code +0000023: 00 ; section size (guess) +0000024: 04 ; num functions ; function body 0 -0000025: 00 ; func body size (guess) -0000026: 00 ; local decl count -0000027: 10 ; i32.const -0000028: 00 ; i32 literal -0000029: 0f ; end -0000025: 04 ; FIXUP func body size +0000025: 00 ; func body size (guess) +0000026: 00 ; local decl count +0000027: 10 ; i32.const +0000028: 00 ; i32 literal +0000029: 0f ; end +0000025: 04 ; FIXUP func body size ; function body 1 -000002a: 00 ; func body size (guess) -000002b: 00 ; local decl count -000002c: 11 ; i64.const -000002d: 00 ; i64 literal -000002e: 0f ; end -000002a: 04 ; FIXUP func body size +000002a: 00 ; func body size (guess) +000002b: 00 ; local decl count +000002c: 11 ; i64.const +000002d: 00 ; i64 literal +000002e: 0f ; end +000002a: 04 ; FIXUP func body size ; function body 2 -000002f: 00 ; func body size (guess) -0000030: 00 ; local decl count -0000031: 13 ; f32.const -0000032: 0000 0000 ; f32 literal -0000036: 0f ; end -000002f: 07 ; FIXUP func body size +000002f: 00 ; func body size (guess) +0000030: 00 ; local decl count +0000031: 13 ; f32.const +0000032: 0000 0000 ; f32 literal +0000036: 0f ; end +000002f: 07 ; FIXUP func body size ; function body 3 -0000037: 00 ; func body size (guess) -0000038: 00 ; local decl count -0000039: 12 ; f64.const -000003a: 0000 0000 0000 0000 ; f64 literal -0000042: 0f ; end -0000037: 0b ; FIXUP func body size -0000023: 1f ; FIXUP section size +0000037: 00 ; func body size (guess) +0000038: 00 ; local decl count +0000039: 12 ; f64.const +000003a: 0000 0000 0000 0000 ; f64 literal +0000042: 0f ; end +0000037: 0b ; FIXUP func body size +0000023: 1f ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0111 0440 0001 0140 -0000010: 0001 0240 0001 0340 0001 0403 0504 0001 -0000020: 0203 0a1f 0404 0010 000f 0400 1100 0f07 -0000030: 0013 0000 0000 0f0b 0012 0000 0000 0000 -0000040: 0000 0f +0000000: 0061 736d 0c00 0000 0111 0440 0001 0140 +0000010: 0001 0240 0001 0340 0001 0403 0504 0001 +0000020: 0203 0a1f 0404 0010 000f 0400 1100 0f07 +0000030: 0013 0000 0000 0f0b 0012 0000 0000 0000 +0000040: 0000 0f ;;; STDOUT ;;) diff --git a/test/dump/return.txt b/test/dump/return.txt index 00d83e3f..553cbbfa 100644 --- a/test/dump/return.txt +++ b/test/dump/return.txt @@ -4,50 +4,50 @@ (return (i32.const 42))) (func (return))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 02 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 02 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 01 ; num results -000000e: 01 ; result type +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 01 ; num results +000000e: 01 ; result type ; type 1 -000000f: 40 ; function form -0000010: 00 ; num params -0000011: 00 ; num results -0000009: 08 ; FIXUP section size +000000f: 40 ; function form +0000010: 00 ; num params +0000011: 00 ; num results +0000009: 08 ; FIXUP section size ; section "FUNCTION" (3) -0000012: 03 ; section code -0000013: 00 ; section size (guess) -0000014: 02 ; num functions -0000015: 00 ; function 0 signature index -0000016: 01 ; function 1 signature index -0000013: 03 ; FIXUP section size +0000012: 03 ; section code +0000013: 00 ; section size (guess) +0000014: 02 ; num functions +0000015: 00 ; function 0 signature index +0000016: 01 ; function 1 signature index +0000013: 03 ; FIXUP section size ; section "CODE" (10) -0000017: 0a ; section code -0000018: 00 ; section size (guess) -0000019: 02 ; num functions +0000017: 0a ; section code +0000018: 00 ; section size (guess) +0000019: 02 ; num functions ; function body 0 -000001a: 00 ; func body size (guess) -000001b: 00 ; local decl count -000001c: 10 ; i32.const -000001d: 2a ; i32 literal -000001e: 09 ; return -000001f: 0f ; end -000001a: 05 ; FIXUP func body size +000001a: 00 ; func body size (guess) +000001b: 00 ; local decl count +000001c: 10 ; i32.const +000001d: 2a ; i32 literal +000001e: 09 ; return +000001f: 0f ; end +000001a: 05 ; FIXUP func body size ; function body 1 -0000020: 00 ; func body size (guess) -0000021: 00 ; local decl count -0000022: 09 ; return -0000023: 0f ; end -0000020: 03 ; FIXUP func body size -0000018: 0b ; FIXUP section size +0000020: 00 ; func body size (guess) +0000021: 00 ; local decl count +0000022: 09 ; return +0000023: 0f ; end +0000020: 03 ; FIXUP func body size +0000018: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0108 0240 0001 0140 -0000010: 0000 0303 0200 010a 0b02 0500 102a 090f -0000020: 0300 090f +0000000: 0061 736d 0c00 0000 0108 0240 0001 0140 +0000010: 0000 0303 0200 010a 0b02 0500 102a 090f +0000020: 0300 090f ;;; STDOUT ;;) diff --git a/test/dump/select.txt b/test/dump/select.txt index f5a853b6..fec07b41 100644 --- a/test/dump/select.txt +++ b/test/dump/select.txt @@ -6,69 +6,69 @@ (drop (select (f32.const 2) (f32.const 3) (i32.const 1))) (drop (select (f64.const 2) (f64.const 3) (i32.const 1))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 02 ; i32 literal -0000019: 10 ; i32.const -000001a: 03 ; i32 literal -000001b: 10 ; i32.const -000001c: 01 ; i32 literal -000001d: 05 ; select -000001e: 0b ; drop -000001f: 11 ; i64.const -0000020: 02 ; i64 literal -0000021: 11 ; i64.const -0000022: 03 ; i64 literal -0000023: 10 ; i32.const -0000024: 01 ; i32 literal -0000025: 05 ; select -0000026: 0b ; drop -0000027: 13 ; f32.const -0000028: 0000 0040 ; f32 literal -000002c: 13 ; f32.const -000002d: 0000 4040 ; f32 literal -0000031: 10 ; i32.const -0000032: 01 ; i32 literal -0000033: 05 ; select -0000034: 0b ; drop -0000035: 12 ; f64.const -0000036: 0000 0000 0000 0040 ; f64 literal -000003e: 12 ; f64.const -000003f: 0000 0000 0000 0840 ; f64 literal -0000047: 10 ; i32.const -0000048: 01 ; i32 literal -0000049: 05 ; select -000004a: 0b ; drop -000004b: 0f ; end -0000015: 36 ; FIXUP func body size -0000013: 38 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 02 ; i32 literal +0000019: 10 ; i32.const +000001a: 03 ; i32 literal +000001b: 10 ; i32.const +000001c: 01 ; i32 literal +000001d: 05 ; select +000001e: 0b ; drop +000001f: 11 ; i64.const +0000020: 02 ; i64 literal +0000021: 11 ; i64.const +0000022: 03 ; i64 literal +0000023: 10 ; i32.const +0000024: 01 ; i32 literal +0000025: 05 ; select +0000026: 0b ; drop +0000027: 13 ; f32.const +0000028: 0000 0040 ; f32 literal +000002c: 13 ; f32.const +000002d: 0000 4040 ; f32 literal +0000031: 10 ; i32.const +0000032: 01 ; i32 literal +0000033: 05 ; select +0000034: 0b ; drop +0000035: 12 ; f64.const +0000036: 0000 0000 0000 0040 ; f64 literal +000003e: 12 ; f64.const +000003f: 0000 0000 0000 0840 ; f64 literal +0000047: 10 ; i32.const +0000048: 01 ; i32 literal +0000049: 05 ; select +000004a: 0b ; drop +000004b: 0f ; end +0000015: 36 ; FIXUP func body size +0000013: 38 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a38 0136 0010 0210 0310 0105 0b11 -0000020: 0211 0310 0105 0b13 0000 0040 1300 0040 -0000030: 4010 0105 0b12 0000 0000 0000 0040 1200 -0000040: 0000 0000 0008 4010 0105 0b0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a38 0136 0010 0210 0310 0105 0b11 +0000020: 0211 0310 0105 0b13 0000 0040 1300 0040 +0000030: 4010 0105 0b12 0000 0000 0000 0040 1200 +0000040: 0000 0000 0008 4010 0105 0b0f ;;; STDOUT ;;) diff --git a/test/dump/setglobal.txt b/test/dump/setglobal.txt index ed09e56a..86b4eba0 100644 --- a/test/dump/setglobal.txt +++ b/test/dump/setglobal.txt @@ -4,49 +4,49 @@ (func (set_global 0 (f32.const 2)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "GLOBAL" (6) -0000012: 06 ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num globals -0000015: 03 ; WASM_TYPE_F32 -0000016: 00 ; global mutability -0000017: 13 ; f32.const -0000018: 0000 803f ; f32 literal -000001c: 0f ; end -0000013: 09 ; FIXUP section size +0000012: 06 ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num globals +0000015: 03 ; WASM_TYPE_F32 +0000016: 00 ; global mutability +0000017: 13 ; f32.const +0000018: 0000 803f ; f32 literal +000001c: 0f ; end +0000013: 09 ; FIXUP section size ; section "CODE" (10) -000001d: 0a ; section code -000001e: 00 ; section size (guess) -000001f: 01 ; num functions +000001d: 0a ; section code +000001e: 00 ; section size (guess) +000001f: 01 ; num functions ; function body 0 -0000020: 00 ; func body size (guess) -0000021: 00 ; local decl count -0000022: 13 ; f32.const -0000023: 0000 0040 ; f32 literal -0000027: bc ; set_global -0000028: 00 ; global index -0000029: 0f ; end -0000020: 09 ; FIXUP func body size -000001e: 0b ; FIXUP section size +0000020: 00 ; func body size (guess) +0000021: 00 ; local decl count +0000022: 13 ; f32.const +0000023: 0000 0040 ; f32 literal +0000027: bc ; set_global +0000028: 00 ; global index +0000029: 0f ; end +0000020: 09 ; FIXUP func body size +000001e: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0609 0103 0013 0000 803f 0f0a 0b01 -0000020: 0900 1300 0000 40bc 000f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0609 0103 0013 0000 803f 0f0a 0b01 +0000020: 0900 1300 0000 40bc 000f ;;; STDOUT ;;) diff --git a/test/dump/setlocal-param.txt b/test/dump/setlocal-param.txt index 223327e8..2f4ceb76 100644 --- a/test/dump/setlocal-param.txt +++ b/test/dump/setlocal-param.txt @@ -13,71 +13,71 @@ (set_local 4 (i32.const 0)) (set_local 5 (f32.const 0)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 02 ; num params -000000d: 01 ; param type -000000e: 03 ; param type -000000f: 00 ; num results -0000009: 06 ; FIXUP section size +000000b: 40 ; function form +000000c: 02 ; num params +000000d: 01 ; param type +000000e: 03 ; param type +000000f: 00 ; num results +0000009: 06 ; FIXUP section size ; section "FUNCTION" (3) -0000010: 03 ; section code -0000011: 00 ; section size (guess) -0000012: 01 ; num functions -0000013: 00 ; function 0 signature index -0000011: 02 ; FIXUP section size +0000010: 03 ; section code +0000011: 00 ; section size (guess) +0000012: 01 ; num functions +0000013: 00 ; function 0 signature index +0000011: 02 ; FIXUP section size ; section "CODE" (10) -0000014: 0a ; section code -0000015: 00 ; section size (guess) -0000016: 01 ; num functions +0000014: 0a ; section code +0000015: 00 ; section size (guess) +0000016: 01 ; num functions ; function body 0 -0000017: 00 ; func body size (guess) -0000018: 04 ; local decl count -0000019: 01 ; local type count -000001a: 02 ; WASM_TYPE_I64 -000001b: 01 ; local type count -000001c: 03 ; WASM_TYPE_F32 -000001d: 01 ; local type count -000001e: 01 ; WASM_TYPE_I32 -000001f: 01 ; local type count -0000020: 03 ; WASM_TYPE_F32 -0000021: 10 ; i32.const -0000022: 00 ; i32 literal -0000023: 15 ; set_local -0000024: 00 ; local index -0000025: 13 ; f32.const -0000026: 0000 0000 ; f32 literal -000002a: 15 ; set_local -000002b: 01 ; local index -000002c: 11 ; i64.const -000002d: 00 ; i64 literal -000002e: 15 ; set_local -000002f: 02 ; local index -0000030: 13 ; f32.const -0000031: 0000 0000 ; f32 literal -0000035: 15 ; set_local -0000036: 03 ; local index -0000037: 10 ; i32.const -0000038: 00 ; i32 literal -0000039: 15 ; set_local -000003a: 04 ; local index -000003b: 13 ; f32.const -000003c: 0000 0000 ; f32 literal -0000040: 15 ; set_local -0000041: 05 ; local index -0000042: 0f ; end -0000017: 2b ; FIXUP func body size -0000015: 2d ; FIXUP section size +0000017: 00 ; func body size (guess) +0000018: 04 ; local decl count +0000019: 01 ; local type count +000001a: 02 ; WASM_TYPE_I64 +000001b: 01 ; local type count +000001c: 03 ; WASM_TYPE_F32 +000001d: 01 ; local type count +000001e: 01 ; WASM_TYPE_I32 +000001f: 01 ; local type count +0000020: 03 ; WASM_TYPE_F32 +0000021: 10 ; i32.const +0000022: 00 ; i32 literal +0000023: 15 ; set_local +0000024: 00 ; local index +0000025: 13 ; f32.const +0000026: 0000 0000 ; f32 literal +000002a: 15 ; set_local +000002b: 01 ; local index +000002c: 11 ; i64.const +000002d: 00 ; i64 literal +000002e: 15 ; set_local +000002f: 02 ; local index +0000030: 13 ; f32.const +0000031: 0000 0000 ; f32 literal +0000035: 15 ; set_local +0000036: 03 ; local index +0000037: 10 ; i32.const +0000038: 00 ; i32 literal +0000039: 15 ; set_local +000003a: 04 ; local index +000003b: 13 ; f32.const +000003c: 0000 0000 ; f32 literal +0000040: 15 ; set_local +0000041: 05 ; local index +0000042: 0f ; end +0000017: 2b ; FIXUP func body size +0000015: 2d ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0106 0140 0201 0300 -0000010: 0302 0100 0a2d 012b 0401 0201 0301 0101 -0000020: 0310 0015 0013 0000 0000 1501 1100 1502 -0000030: 1300 0000 0015 0310 0015 0413 0000 0000 -0000040: 1505 0f +0000000: 0061 736d 0c00 0000 0106 0140 0201 0300 +0000010: 0302 0100 0a2d 012b 0401 0201 0301 0101 +0000020: 0310 0015 0013 0000 0000 1501 1100 1502 +0000030: 1300 0000 0015 0310 0015 0413 0000 0000 +0000040: 1505 0f ;;; STDOUT ;;) diff --git a/test/dump/setlocal.txt b/test/dump/setlocal.txt index 6267b204..6a1e7b3c 100644 --- a/test/dump/setlocal.txt +++ b/test/dump/setlocal.txt @@ -15,84 +15,84 @@ (set_local 6 (f64.const 0)) (set_local 7 (i64.const 0)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 07 ; local decl count -0000017: 01 ; local type count -0000018: 04 ; WASM_TYPE_F64 -0000019: 01 ; local type count -000001a: 03 ; WASM_TYPE_F32 -000001b: 01 ; local type count -000001c: 02 ; WASM_TYPE_I64 -000001d: 02 ; local type count -000001e: 01 ; WASM_TYPE_I32 -000001f: 01 ; local type count -0000020: 03 ; WASM_TYPE_F32 -0000021: 01 ; local type count -0000022: 04 ; WASM_TYPE_F64 -0000023: 01 ; local type count -0000024: 02 ; WASM_TYPE_I64 -0000025: 12 ; f64.const -0000026: 0000 0000 0000 0000 ; f64 literal -000002e: 15 ; set_local -000002f: 00 ; local index -0000030: 13 ; f32.const -0000031: 0000 0000 ; f32 literal -0000035: 15 ; set_local -0000036: 01 ; local index -0000037: 11 ; i64.const -0000038: 00 ; i64 literal -0000039: 15 ; set_local -000003a: 02 ; local index -000003b: 10 ; i32.const -000003c: 00 ; i32 literal -000003d: 15 ; set_local -000003e: 03 ; local index -000003f: 10 ; i32.const -0000040: 00 ; i32 literal -0000041: 15 ; set_local -0000042: 04 ; local index -0000043: 13 ; f32.const -0000044: 0000 0000 ; f32 literal -0000048: 15 ; set_local -0000049: 05 ; local index -000004a: 12 ; f64.const -000004b: 0000 0000 0000 0000 ; f64 literal -0000053: 15 ; set_local -0000054: 06 ; local index -0000055: 11 ; i64.const -0000056: 00 ; i64 literal -0000057: 15 ; set_local -0000058: 07 ; local index -0000059: 0f ; end -0000015: 44 ; FIXUP func body size -0000013: 46 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 07 ; local decl count +0000017: 01 ; local type count +0000018: 04 ; WASM_TYPE_F64 +0000019: 01 ; local type count +000001a: 03 ; WASM_TYPE_F32 +000001b: 01 ; local type count +000001c: 02 ; WASM_TYPE_I64 +000001d: 02 ; local type count +000001e: 01 ; WASM_TYPE_I32 +000001f: 01 ; local type count +0000020: 03 ; WASM_TYPE_F32 +0000021: 01 ; local type count +0000022: 04 ; WASM_TYPE_F64 +0000023: 01 ; local type count +0000024: 02 ; WASM_TYPE_I64 +0000025: 12 ; f64.const +0000026: 0000 0000 0000 0000 ; f64 literal +000002e: 15 ; set_local +000002f: 00 ; local index +0000030: 13 ; f32.const +0000031: 0000 0000 ; f32 literal +0000035: 15 ; set_local +0000036: 01 ; local index +0000037: 11 ; i64.const +0000038: 00 ; i64 literal +0000039: 15 ; set_local +000003a: 02 ; local index +000003b: 10 ; i32.const +000003c: 00 ; i32 literal +000003d: 15 ; set_local +000003e: 03 ; local index +000003f: 10 ; i32.const +0000040: 00 ; i32 literal +0000041: 15 ; set_local +0000042: 04 ; local index +0000043: 13 ; f32.const +0000044: 0000 0000 ; f32 literal +0000048: 15 ; set_local +0000049: 05 ; local index +000004a: 12 ; f64.const +000004b: 0000 0000 0000 0000 ; f64 literal +0000053: 15 ; set_local +0000054: 06 ; local index +0000055: 11 ; i64.const +0000056: 00 ; i64 literal +0000057: 15 ; set_local +0000058: 07 ; local index +0000059: 0f ; end +0000015: 44 ; FIXUP func body size +0000013: 46 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a46 0144 0701 0401 0301 0202 0101 -0000020: 0301 0401 0212 0000 0000 0000 0000 1500 -0000030: 1300 0000 0015 0111 0015 0210 0015 0310 -0000040: 0015 0413 0000 0000 1505 1200 0000 0000 -0000050: 0000 0015 0611 0015 070f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a46 0144 0701 0401 0301 0202 0101 +0000020: 0301 0401 0212 0000 0000 0000 0000 1500 +0000030: 1300 0000 0015 0111 0015 0210 0015 0310 +0000040: 0015 0413 0000 0000 1505 1200 0000 0000 +0000050: 0000 0015 0611 0015 070f ;;; STDOUT ;;) diff --git a/test/dump/signatures.txt b/test/dump/signatures.txt index 00d6d670..3ee88088 100644 --- a/test/dump/signatures.txt +++ b/test/dump/signatures.txt @@ -12,61 +12,61 @@ (type (func (param i32) (result f64)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 09 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 09 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results ; type 1 -000000f: 40 ; function form -0000010: 01 ; num params -0000011: 02 ; param type -0000012: 00 ; num results +000000f: 40 ; function form +0000010: 01 ; num params +0000011: 02 ; param type +0000012: 00 ; num results ; type 2 -0000013: 40 ; function form -0000014: 01 ; num params -0000015: 03 ; param type -0000016: 00 ; num results +0000013: 40 ; function form +0000014: 01 ; num params +0000015: 03 ; param type +0000016: 00 ; num results ; type 3 -0000017: 40 ; function form -0000018: 01 ; num params -0000019: 04 ; param type -000001a: 00 ; num results +0000017: 40 ; function form +0000018: 01 ; num params +0000019: 04 ; param type +000001a: 00 ; num results ; type 4 -000001b: 40 ; function form -000001c: 00 ; num params -000001d: 01 ; num results -000001e: 01 ; result type +000001b: 40 ; function form +000001c: 00 ; num params +000001d: 01 ; num results +000001e: 01 ; result type ; type 5 -000001f: 40 ; function form -0000020: 00 ; num params -0000021: 01 ; num results -0000022: 02 ; result type +000001f: 40 ; function form +0000020: 00 ; num params +0000021: 01 ; num results +0000022: 02 ; result type ; type 6 -0000023: 40 ; function form -0000024: 00 ; num params -0000025: 01 ; num results -0000026: 03 ; result type +0000023: 40 ; function form +0000024: 00 ; num params +0000025: 01 ; num results +0000026: 03 ; result type ; type 7 -0000027: 40 ; function form -0000028: 00 ; num params -0000029: 01 ; num results -000002a: 04 ; result type +0000027: 40 ; function form +0000028: 00 ; num params +0000029: 01 ; num results +000002a: 04 ; result type ; type 8 -000002b: 40 ; function form -000002c: 01 ; num params -000002d: 01 ; param type -000002e: 01 ; num results -000002f: 04 ; result type -0000009: 26 ; FIXUP section size +000002b: 40 ; function form +000002c: 01 ; num params +000002d: 01 ; param type +000002e: 01 ; num results +000002f: 04 ; result type +0000009: 26 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0126 0940 0101 0040 -0000010: 0102 0040 0103 0040 0104 0040 0001 0140 -0000020: 0001 0240 0001 0340 0001 0440 0101 0104 +0000000: 0061 736d 0c00 0000 0126 0940 0101 0040 +0000010: 0102 0040 0103 0040 0104 0040 0001 0140 +0000020: 0001 0240 0001 0340 0001 0440 0101 0104 ;;; STDOUT ;;) diff --git a/test/dump/store-aligned.txt b/test/dump/store-aligned.txt index c10d81ad..f9208b6b 100644 --- a/test/dump/store-aligned.txt +++ b/test/dump/store-aligned.txt @@ -24,153 +24,153 @@ (i64.store align=4 (i32.const 0) (i64.const 0)) (i64.store align=8 (i32.const 0) (i64.const 0)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 2e ; i32.store8 -000001c: 00 ; alignment -000001d: 00 ; store offset -000001e: 10 ; i32.const -000001f: 00 ; i32 literal -0000020: 10 ; i32.const -0000021: 00 ; i32 literal -0000022: 2f ; i32.store16 -0000023: 00 ; alignment -0000024: 00 ; store offset -0000025: 10 ; i32.const -0000026: 00 ; i32 literal -0000027: 10 ; i32.const -0000028: 00 ; i32 literal -0000029: 2f ; i32.store16 -000002a: 01 ; alignment -000002b: 00 ; store offset -000002c: 10 ; i32.const -000002d: 00 ; i32 literal -000002e: 10 ; i32.const -000002f: 00 ; i32 literal -0000030: 33 ; i32.store -0000031: 00 ; alignment -0000032: 00 ; store offset -0000033: 10 ; i32.const -0000034: 00 ; i32 literal -0000035: 10 ; i32.const -0000036: 00 ; i32 literal -0000037: 33 ; i32.store -0000038: 01 ; alignment -0000039: 00 ; store offset -000003a: 10 ; i32.const -000003b: 00 ; i32 literal -000003c: 10 ; i32.const -000003d: 00 ; i32 literal -000003e: 33 ; i32.store -000003f: 02 ; alignment -0000040: 00 ; store offset -0000041: 10 ; i32.const -0000042: 00 ; i32 literal -0000043: 11 ; i64.const -0000044: 00 ; i64 literal -0000045: 30 ; i64.store8 -0000046: 00 ; alignment -0000047: 00 ; store offset -0000048: 10 ; i32.const -0000049: 00 ; i32 literal -000004a: 11 ; i64.const -000004b: 00 ; i64 literal -000004c: 31 ; i64.store16 -000004d: 00 ; alignment -000004e: 00 ; store offset -000004f: 10 ; i32.const -0000050: 00 ; i32 literal -0000051: 11 ; i64.const -0000052: 00 ; i64 literal -0000053: 31 ; i64.store16 -0000054: 01 ; alignment -0000055: 00 ; store offset -0000056: 10 ; i32.const -0000057: 00 ; i32 literal -0000058: 11 ; i64.const -0000059: 00 ; i64 literal -000005a: 32 ; i64.store32 -000005b: 00 ; alignment -000005c: 00 ; store offset -000005d: 10 ; i32.const -000005e: 00 ; i32 literal -000005f: 11 ; i64.const -0000060: 00 ; i64 literal -0000061: 32 ; i64.store32 -0000062: 01 ; alignment -0000063: 00 ; store offset -0000064: 10 ; i32.const -0000065: 00 ; i32 literal -0000066: 11 ; i64.const -0000067: 00 ; i64 literal -0000068: 32 ; i64.store32 -0000069: 02 ; alignment -000006a: 00 ; store offset -000006b: 10 ; i32.const -000006c: 00 ; i32 literal -000006d: 11 ; i64.const -000006e: 00 ; i64 literal -000006f: 34 ; i64.store -0000070: 00 ; alignment -0000071: 00 ; store offset -0000072: 10 ; i32.const -0000073: 00 ; i32 literal -0000074: 11 ; i64.const -0000075: 00 ; i64 literal -0000076: 34 ; i64.store -0000077: 01 ; alignment -0000078: 00 ; store offset -0000079: 10 ; i32.const -000007a: 00 ; i32 literal -000007b: 11 ; i64.const -000007c: 00 ; i64 literal -000007d: 34 ; i64.store -000007e: 02 ; alignment -000007f: 00 ; store offset -0000080: 10 ; i32.const -0000081: 00 ; i32 literal -0000082: 11 ; i64.const -0000083: 00 ; i64 literal -0000084: 34 ; i64.store -0000085: 03 ; alignment -0000086: 00 ; store offset -0000087: 0f ; end -0000015: 72 ; FIXUP func body size -0000013: 74 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 2e ; i32.store8 +000001c: 00 ; alignment +000001d: 00 ; store offset +000001e: 10 ; i32.const +000001f: 00 ; i32 literal +0000020: 10 ; i32.const +0000021: 00 ; i32 literal +0000022: 2f ; i32.store16 +0000023: 00 ; alignment +0000024: 00 ; store offset +0000025: 10 ; i32.const +0000026: 00 ; i32 literal +0000027: 10 ; i32.const +0000028: 00 ; i32 literal +0000029: 2f ; i32.store16 +000002a: 01 ; alignment +000002b: 00 ; store offset +000002c: 10 ; i32.const +000002d: 00 ; i32 literal +000002e: 10 ; i32.const +000002f: 00 ; i32 literal +0000030: 33 ; i32.store +0000031: 00 ; alignment +0000032: 00 ; store offset +0000033: 10 ; i32.const +0000034: 00 ; i32 literal +0000035: 10 ; i32.const +0000036: 00 ; i32 literal +0000037: 33 ; i32.store +0000038: 01 ; alignment +0000039: 00 ; store offset +000003a: 10 ; i32.const +000003b: 00 ; i32 literal +000003c: 10 ; i32.const +000003d: 00 ; i32 literal +000003e: 33 ; i32.store +000003f: 02 ; alignment +0000040: 00 ; store offset +0000041: 10 ; i32.const +0000042: 00 ; i32 literal +0000043: 11 ; i64.const +0000044: 00 ; i64 literal +0000045: 30 ; i64.store8 +0000046: 00 ; alignment +0000047: 00 ; store offset +0000048: 10 ; i32.const +0000049: 00 ; i32 literal +000004a: 11 ; i64.const +000004b: 00 ; i64 literal +000004c: 31 ; i64.store16 +000004d: 00 ; alignment +000004e: 00 ; store offset +000004f: 10 ; i32.const +0000050: 00 ; i32 literal +0000051: 11 ; i64.const +0000052: 00 ; i64 literal +0000053: 31 ; i64.store16 +0000054: 01 ; alignment +0000055: 00 ; store offset +0000056: 10 ; i32.const +0000057: 00 ; i32 literal +0000058: 11 ; i64.const +0000059: 00 ; i64 literal +000005a: 32 ; i64.store32 +000005b: 00 ; alignment +000005c: 00 ; store offset +000005d: 10 ; i32.const +000005e: 00 ; i32 literal +000005f: 11 ; i64.const +0000060: 00 ; i64 literal +0000061: 32 ; i64.store32 +0000062: 01 ; alignment +0000063: 00 ; store offset +0000064: 10 ; i32.const +0000065: 00 ; i32 literal +0000066: 11 ; i64.const +0000067: 00 ; i64 literal +0000068: 32 ; i64.store32 +0000069: 02 ; alignment +000006a: 00 ; store offset +000006b: 10 ; i32.const +000006c: 00 ; i32 literal +000006d: 11 ; i64.const +000006e: 00 ; i64 literal +000006f: 34 ; i64.store +0000070: 00 ; alignment +0000071: 00 ; store offset +0000072: 10 ; i32.const +0000073: 00 ; i32 literal +0000074: 11 ; i64.const +0000075: 00 ; i64 literal +0000076: 34 ; i64.store +0000077: 01 ; alignment +0000078: 00 ; store offset +0000079: 10 ; i32.const +000007a: 00 ; i32 literal +000007b: 11 ; i64.const +000007c: 00 ; i64 literal +000007d: 34 ; i64.store +000007e: 02 ; alignment +000007f: 00 ; store offset +0000080: 10 ; i32.const +0000081: 00 ; i32 literal +0000082: 11 ; i64.const +0000083: 00 ; i64 literal +0000084: 34 ; i64.store +0000085: 03 ; alignment +0000086: 00 ; store offset +0000087: 0f ; end +0000015: 72 ; FIXUP func body size +0000013: 74 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a74 0172 0010 0010 002e 0000 1000 -0000020: 1000 2f00 0010 0010 002f 0100 1000 1000 -0000030: 3300 0010 0010 0033 0100 1000 1000 3302 -0000040: 0010 0011 0030 0000 1000 1100 3100 0010 -0000050: 0011 0031 0100 1000 1100 3200 0010 0011 -0000060: 0032 0100 1000 1100 3202 0010 0011 0034 -0000070: 0000 1000 1100 3401 0010 0011 0034 0200 -0000080: 1000 1100 3403 000f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a74 0172 0010 0010 002e 0000 1000 +0000020: 1000 2f00 0010 0010 002f 0100 1000 1000 +0000030: 3300 0010 0010 0033 0100 1000 1000 3302 +0000040: 0010 0011 0030 0000 1000 1100 3100 0010 +0000050: 0011 0031 0100 1000 1100 3200 0010 0011 +0000060: 0032 0100 1000 1100 3202 0010 0011 0034 +0000070: 0000 1000 1100 3401 0010 0011 0034 0200 +0000080: 1000 1100 3403 000f ;;; STDOUT ;;) diff --git a/test/dump/store.txt b/test/dump/store.txt index afc4bdc6..07cca682 100644 --- a/test/dump/store.txt +++ b/test/dump/store.txt @@ -11,102 +11,102 @@ (f32.store (i32.const 0) (f32.const 0)) (f64.store (i32.const 0) (f64.const 0)))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 2e ; i32.store8 -000001c: 00 ; alignment -000001d: 00 ; store offset -000001e: 10 ; i32.const -000001f: 00 ; i32 literal -0000020: 10 ; i32.const -0000021: 00 ; i32 literal -0000022: 2f ; i32.store16 -0000023: 01 ; alignment -0000024: 00 ; store offset -0000025: 10 ; i32.const -0000026: 00 ; i32 literal -0000027: 10 ; i32.const -0000028: 00 ; i32 literal -0000029: 33 ; i32.store -000002a: 02 ; alignment -000002b: 00 ; store offset -000002c: 10 ; i32.const -000002d: 00 ; i32 literal -000002e: 11 ; i64.const -000002f: 00 ; i64 literal -0000030: 34 ; i64.store -0000031: 03 ; alignment -0000032: 00 ; store offset -0000033: 10 ; i32.const -0000034: 00 ; i32 literal -0000035: 11 ; i64.const -0000036: 00 ; i64 literal -0000037: 30 ; i64.store8 -0000038: 00 ; alignment -0000039: 00 ; store offset -000003a: 10 ; i32.const -000003b: 00 ; i32 literal -000003c: 11 ; i64.const -000003d: 00 ; i64 literal -000003e: 31 ; i64.store16 -000003f: 01 ; alignment -0000040: 00 ; store offset -0000041: 10 ; i32.const -0000042: 00 ; i32 literal -0000043: 11 ; i64.const -0000044: 00 ; i64 literal -0000045: 32 ; i64.store32 -0000046: 02 ; alignment -0000047: 00 ; store offset -0000048: 10 ; i32.const -0000049: 00 ; i32 literal -000004a: 13 ; f32.const -000004b: 0000 0000 ; f32 literal -000004f: 35 ; f32.store -0000050: 02 ; alignment -0000051: 00 ; store offset -0000052: 10 ; i32.const -0000053: 00 ; i32 literal -0000054: 12 ; f64.const -0000055: 0000 0000 0000 0000 ; f64 literal -000005d: 36 ; f64.store -000005e: 03 ; alignment -000005f: 00 ; store offset -0000060: 0f ; end -0000015: 4b ; FIXUP func body size -0000013: 4d ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 2e ; i32.store8 +000001c: 00 ; alignment +000001d: 00 ; store offset +000001e: 10 ; i32.const +000001f: 00 ; i32 literal +0000020: 10 ; i32.const +0000021: 00 ; i32 literal +0000022: 2f ; i32.store16 +0000023: 01 ; alignment +0000024: 00 ; store offset +0000025: 10 ; i32.const +0000026: 00 ; i32 literal +0000027: 10 ; i32.const +0000028: 00 ; i32 literal +0000029: 33 ; i32.store +000002a: 02 ; alignment +000002b: 00 ; store offset +000002c: 10 ; i32.const +000002d: 00 ; i32 literal +000002e: 11 ; i64.const +000002f: 00 ; i64 literal +0000030: 34 ; i64.store +0000031: 03 ; alignment +0000032: 00 ; store offset +0000033: 10 ; i32.const +0000034: 00 ; i32 literal +0000035: 11 ; i64.const +0000036: 00 ; i64 literal +0000037: 30 ; i64.store8 +0000038: 00 ; alignment +0000039: 00 ; store offset +000003a: 10 ; i32.const +000003b: 00 ; i32 literal +000003c: 11 ; i64.const +000003d: 00 ; i64 literal +000003e: 31 ; i64.store16 +000003f: 01 ; alignment +0000040: 00 ; store offset +0000041: 10 ; i32.const +0000042: 00 ; i32 literal +0000043: 11 ; i64.const +0000044: 00 ; i64 literal +0000045: 32 ; i64.store32 +0000046: 02 ; alignment +0000047: 00 ; store offset +0000048: 10 ; i32.const +0000049: 00 ; i32 literal +000004a: 13 ; f32.const +000004b: 0000 0000 ; f32 literal +000004f: 35 ; f32.store +0000050: 02 ; alignment +0000051: 00 ; store offset +0000052: 10 ; i32.const +0000053: 00 ; i32 literal +0000054: 12 ; f64.const +0000055: 0000 0000 0000 0000 ; f64 literal +000005d: 36 ; f64.store +000005e: 03 ; alignment +000005f: 00 ; store offset +0000060: 0f ; end +0000015: 4b ; FIXUP func body size +0000013: 4d ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a4d 014b 0010 0010 002e 0000 1000 -0000020: 1000 2f01 0010 0010 0033 0200 1000 1100 -0000030: 3403 0010 0011 0030 0000 1000 1100 3101 -0000040: 0010 0011 0032 0200 1000 1300 0000 0035 -0000050: 0200 1000 1200 0000 0000 0000 0036 0300 -0000060: 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a4d 014b 0010 0010 002e 0000 1000 +0000020: 1000 2f01 0010 0010 0033 0200 1000 1100 +0000030: 3403 0010 0011 0030 0000 1000 1100 3101 +0000040: 0010 0011 0032 0200 1000 1300 0000 0035 +0000050: 0200 1000 1200 0000 0000 0000 0036 0300 +0000060: 0f ;;; STDOUT ;;) diff --git a/test/dump/string-escape.txt b/test/dump/string-escape.txt index a7a1613a..7e2d4a8d 100644 --- a/test/dump/string-escape.txt +++ b/test/dump/string-escape.txt @@ -1,48 +1,48 @@ ;;; FLAGS: -dv (module (func) (export "tab:\t newline:\n slash:\\ quote:\' double:\"" (func 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "EXPORT" (7) -0000012: 07 ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num exports -0000015: 28 ; string length +0000012: 07 ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num exports +0000015: 28 ; string length 0000016: 7461 623a 0920 6e65 776c 696e 653a 0a20 tab:. newline:. 0000026: 736c 6173 683a 5c20 7175 6f74 653a 2720 slash:\ quote:' 0000036: 646f 7562 6c65 3a22 double:" ; export name -000003e: 00 ; export kind -000003f: 00 ; export func index -0000013: 2c ; FIXUP section size +000003e: 00 ; export kind +000003f: 00 ; export func index +0000013: 2c ; FIXUP section size ; section "CODE" (10) -0000040: 0a ; section code -0000041: 00 ; section size (guess) -0000042: 01 ; num functions +0000040: 0a ; section code +0000041: 00 ; section size (guess) +0000042: 01 ; num functions ; function body 0 -0000043: 00 ; func body size (guess) -0000044: 00 ; local decl count -0000045: 0f ; end -0000043: 02 ; FIXUP func body size -0000041: 04 ; FIXUP section size +0000043: 00 ; func body size (guess) +0000044: 00 ; local decl count +0000045: 0f ; end +0000043: 02 ; FIXUP func body size +0000041: 04 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 072c 0128 7461 623a 0920 6e65 776c -0000020: 696e 653a 0a20 736c 6173 683a 5c20 7175 -0000030: 6f74 653a 2720 646f 7562 6c65 3a22 0000 -0000040: 0a04 0102 000f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 072c 0128 7461 623a 0920 6e65 776c +0000020: 696e 653a 0a20 736c 6173 683a 5c20 7175 +0000030: 6f74 653a 2720 646f 7562 6c65 3a22 0000 +0000040: 0a04 0102 000f ;;; STDOUT ;;) diff --git a/test/dump/string-hex.txt b/test/dump/string-hex.txt index c25e23e9..81c29367 100644 --- a/test/dump/string-hex.txt +++ b/test/dump/string-hex.txt @@ -1,44 +1,44 @@ ;;; FLAGS: -dv (module (func) (export "foo\ba\dc\0d\ee" (func 0))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "EXPORT" (7) -0000012: 07 ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num exports -0000015: 07 ; string length +0000012: 07 ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num exports +0000015: 07 ; string length 0000016: 666f 6fba dc0d ee foo.... ; export name -000001d: 00 ; export kind -000001e: 00 ; export func index -0000013: 0b ; FIXUP section size +000001d: 00 ; export kind +000001e: 00 ; export func index +0000013: 0b ; FIXUP section size ; section "CODE" (10) -000001f: 0a ; section code -0000020: 00 ; section size (guess) -0000021: 01 ; num functions +000001f: 0a ; section code +0000020: 00 ; section size (guess) +0000021: 01 ; num functions ; function body 0 -0000022: 00 ; func body size (guess) -0000023: 00 ; local decl count -0000024: 0f ; end -0000022: 02 ; FIXUP func body size -0000020: 04 ; FIXUP section size +0000022: 00 ; func body size (guess) +0000023: 00 ; local decl count +0000024: 0f ; end +0000022: 02 ; FIXUP func body size +0000020: 04 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 070b 0107 666f 6fba dc0d ee00 000a -0000020: 0401 0200 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 070b 0107 666f 6fba dc0d ee00 000a +0000020: 0401 0200 0f ;;; STDOUT ;;) diff --git a/test/dump/table.txt b/test/dump/table.txt index f17046a9..c0a2f853 100644 --- a/test/dump/table.txt +++ b/test/dump/table.txt @@ -6,88 +6,88 @@ (func (result f64) (f64.const 0)) (table anyfunc (elem 0 0 1 2))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 03 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 03 ; num types ; type 0 -000000b: 40 ; function form -000000c: 01 ; num params -000000d: 01 ; param type -000000e: 00 ; num results +000000b: 40 ; function form +000000c: 01 ; num params +000000d: 01 ; param type +000000e: 00 ; num results ; type 1 -000000f: 40 ; function form -0000010: 02 ; num params -0000011: 01 ; param type -0000012: 02 ; param type -0000013: 00 ; num results +000000f: 40 ; function form +0000010: 02 ; num params +0000011: 01 ; param type +0000012: 02 ; param type +0000013: 00 ; num results ; type 2 -0000014: 40 ; function form -0000015: 00 ; num params -0000016: 01 ; num results -0000017: 04 ; result type -0000009: 0e ; FIXUP section size +0000014: 40 ; function form +0000015: 00 ; num params +0000016: 01 ; num results +0000017: 04 ; result type +0000009: 0e ; FIXUP section size ; section "FUNCTION" (3) -0000018: 03 ; section code -0000019: 00 ; section size (guess) -000001a: 03 ; num functions -000001b: 00 ; function 0 signature index -000001c: 01 ; function 1 signature index -000001d: 02 ; function 2 signature index -0000019: 04 ; FIXUP section size +0000018: 03 ; section code +0000019: 00 ; section size (guess) +000001a: 03 ; num functions +000001b: 00 ; function 0 signature index +000001c: 01 ; function 1 signature index +000001d: 02 ; function 2 signature index +0000019: 04 ; FIXUP section size ; section "TABLE" (4) -000001e: 04 ; section code -000001f: 00 ; section size (guess) -0000020: 01 ; num tables +000001e: 04 ; section code +000001f: 00 ; section size (guess) +0000020: 01 ; num tables ; table 0 -0000021: 20 ; table elem type -0000022: 01 ; table flags -0000023: 04 ; table initial elems -0000024: 04 ; table max elems -000001f: 05 ; FIXUP section size +0000021: 20 ; table elem type +0000022: 01 ; table flags +0000023: 04 ; table initial elems +0000024: 04 ; table max elems +000001f: 05 ; FIXUP section size ; section "ELEM" (9) -0000025: 09 ; section code -0000026: 00 ; section size (guess) -0000027: 01 ; num elem segments +0000025: 09 ; section code +0000026: 00 ; section size (guess) +0000027: 01 ; num elem segments ; elem segment header 0 -0000028: 00 ; table index -0000029: 10 ; i32.const -000002a: 00 ; i32 literal -000002b: 0f ; end -000002c: 04 ; num function indices -000002d: 00 ; function index -000002e: 00 ; function index -000002f: 01 ; function index -0000030: 02 ; function index -0000026: 0a ; FIXUP section size +0000028: 00 ; table index +0000029: 10 ; i32.const +000002a: 00 ; i32 literal +000002b: 0f ; end +000002c: 04 ; num function indices +000002d: 00 ; function index +000002e: 00 ; function index +000002f: 01 ; function index +0000030: 02 ; function index +0000026: 0a ; FIXUP section size ; section "CODE" (10) -0000031: 0a ; section code -0000032: 00 ; section size (guess) -0000033: 03 ; num functions +0000031: 0a ; section code +0000032: 00 ; section size (guess) +0000033: 03 ; num functions ; function body 0 -0000034: 00 ; func body size (guess) -0000035: 00 ; local decl count -0000036: 0f ; end -0000034: 02 ; FIXUP func body size +0000034: 00 ; func body size (guess) +0000035: 00 ; local decl count +0000036: 0f ; end +0000034: 02 ; FIXUP func body size ; function body 1 -0000037: 00 ; func body size (guess) -0000038: 00 ; local decl count -0000039: 0f ; end -0000037: 02 ; FIXUP func body size +0000037: 00 ; func body size (guess) +0000038: 00 ; local decl count +0000039: 0f ; end +0000037: 02 ; FIXUP func body size ; function body 2 -000003a: 00 ; func body size (guess) -000003b: 00 ; local decl count -000003c: 12 ; f64.const -000003d: 0000 0000 0000 0000 ; f64 literal -0000045: 0f ; end -000003a: 0b ; FIXUP func body size -0000032: 13 ; FIXUP section size +000003a: 00 ; func body size (guess) +000003b: 00 ; local decl count +000003c: 12 ; f64.const +000003d: 0000 0000 0000 0000 ; f64 literal +0000045: 0f ; end +000003a: 0b ; FIXUP func body size +0000032: 13 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 010e 0340 0101 0040 -0000010: 0201 0200 4000 0104 0304 0300 0102 0405 -0000020: 0120 0104 0409 0a01 0010 000f 0400 0001 -0000030: 020a 1303 0200 0f02 000f 0b00 1200 0000 -0000040: 0000 0000 000f +0000000: 0061 736d 0c00 0000 010e 0340 0101 0040 +0000010: 0201 0200 4000 0104 0304 0300 0102 0405 +0000020: 0120 0104 0409 0a01 0010 000f 0400 0001 +0000030: 020a 1303 0200 0f02 000f 0b00 1200 0000 +0000040: 0000 0000 000f ;;; STDOUT ;;) diff --git a/test/dump/tee_local.txt b/test/dump/tee_local.txt index 4629f7b6..4707291f 100644 --- a/test/dump/tee_local.txt +++ b/test/dump/tee_local.txt @@ -5,41 +5,41 @@ (drop (tee_local 0 (i32.const 0))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 01 ; local decl count -0000017: 01 ; local type count -0000018: 01 ; WASM_TYPE_I32 -0000019: 10 ; i32.const -000001a: 00 ; i32 literal -000001b: 19 ; tee_local -000001c: 00 ; local index -000001d: 0b ; drop -000001e: 0f ; end -0000015: 09 ; FIXUP func body size -0000013: 0b ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 01 ; local decl count +0000017: 01 ; local type count +0000018: 01 ; WASM_TYPE_I32 +0000019: 10 ; i32.const +000001a: 00 ; i32 literal +000001b: 19 ; tee_local +000001c: 00 ; local index +000001d: 0b ; drop +000001e: 0f ; end +0000015: 09 ; FIXUP func body size +0000013: 0b ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a0b 0109 0101 0110 0019 000b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a0b 0109 0101 0110 0019 000b 0f ;;; STDOUT ;;) diff --git a/test/dump/unary.txt b/test/dump/unary.txt index 417680e7..9c3fc8eb 100644 --- a/test/dump/unary.txt +++ b/test/dump/unary.txt @@ -30,70 +30,70 @@ (f64.trunc (f64.nearest (f64.const 0))))))))))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 10 ; i32.const -0000018: 00 ; i32 literal -0000019: 59 ; i32.popcnt -000001a: 58 ; i32.ctz -000001b: 57 ; i32.clz -000001c: 5a ; i32.eqz -000001d: 0b ; drop -000001e: 11 ; i64.const -000001f: 00 ; i64 literal -0000020: 74 ; i64.popcnt -0000021: 73 ; i64.ctz -0000022: 72 ; i64.clz -0000023: 0b ; drop -0000024: 13 ; f32.const -0000025: 0000 0000 ; f32 literal -0000029: 81 ; f32.nearest -000002a: 80 ; f32.trunc -000002b: 7f ; f32.floor -000002c: 7e ; f32.ceil -000002d: 82 ; f32.sqrt -000002e: 7b ; f32.abs -000002f: 7c ; f32.neg -0000030: 0b ; drop -0000031: 12 ; f64.const -0000032: 0000 0000 0000 0000 ; f64 literal -000003a: 95 ; f64.nearest -000003b: 94 ; f64.trunc -000003c: 93 ; f64.floor -000003d: 92 ; f64.ceil -000003e: 96 ; f64.sqrt -000003f: 8f ; f64.abs -0000040: 90 ; f64.neg -0000041: 0b ; drop -0000042: 0f ; end -0000015: 2d ; FIXUP func body size -0000013: 2f ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 10 ; i32.const +0000018: 00 ; i32 literal +0000019: 59 ; i32.popcnt +000001a: 58 ; i32.ctz +000001b: 57 ; i32.clz +000001c: 5a ; i32.eqz +000001d: 0b ; drop +000001e: 11 ; i64.const +000001f: 00 ; i64 literal +0000020: 74 ; i64.popcnt +0000021: 73 ; i64.ctz +0000022: 72 ; i64.clz +0000023: 0b ; drop +0000024: 13 ; f32.const +0000025: 0000 0000 ; f32 literal +0000029: 81 ; f32.nearest +000002a: 80 ; f32.trunc +000002b: 7f ; f32.floor +000002c: 7e ; f32.ceil +000002d: 82 ; f32.sqrt +000002e: 7b ; f32.abs +000002f: 7c ; f32.neg +0000030: 0b ; drop +0000031: 12 ; f64.const +0000032: 0000 0000 0000 0000 ; f64 literal +000003a: 95 ; f64.nearest +000003b: 94 ; f64.trunc +000003c: 93 ; f64.floor +000003d: 92 ; f64.ceil +000003e: 96 ; f64.sqrt +000003f: 8f ; f64.abs +0000040: 90 ; f64.neg +0000041: 0b ; drop +0000042: 0f ; end +0000015: 2d ; FIXUP func body size +0000013: 2f ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a2f 012d 0010 0059 5857 5a0b 1100 -0000020: 7473 720b 1300 0000 0081 807f 7e82 7b7c -0000030: 0b12 0000 0000 0000 0000 9594 9392 968f -0000040: 900b 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a2f 012d 0010 0059 5857 5a0b 1100 +0000020: 7473 720b 1300 0000 0081 807f 7e82 7b7c +0000030: 0b12 0000 0000 0000 0000 9594 9392 968f +0000040: 900b 0f ;;; STDOUT ;;) diff --git a/test/dump/unreachable.txt b/test/dump/unreachable.txt index e9f21978..d612b11f 100644 --- a/test/dump/unreachable.txt +++ b/test/dump/unreachable.txt @@ -3,35 +3,35 @@ (func (unreachable))) (;; STDOUT ;;; -0000000: 0061 736d ; WASM_BINARY_MAGIC -0000004: 0c00 0000 ; WASM_BINARY_VERSION +0000000: 0061 736d ; WASM_BINARY_MAGIC +0000004: 0c00 0000 ; WASM_BINARY_VERSION ; section "TYPE" (1) -0000008: 01 ; section code -0000009: 00 ; section size (guess) -000000a: 01 ; num types +0000008: 01 ; section code +0000009: 00 ; section size (guess) +000000a: 01 ; num types ; type 0 -000000b: 40 ; function form -000000c: 00 ; num params -000000d: 00 ; num results -0000009: 04 ; FIXUP section size +000000b: 40 ; function form +000000c: 00 ; num params +000000d: 00 ; num results +0000009: 04 ; FIXUP section size ; section "FUNCTION" (3) -000000e: 03 ; section code -000000f: 00 ; section size (guess) -0000010: 01 ; num functions -0000011: 00 ; function 0 signature index -000000f: 02 ; FIXUP section size +000000e: 03 ; section code +000000f: 00 ; section size (guess) +0000010: 01 ; num functions +0000011: 00 ; function 0 signature index +000000f: 02 ; FIXUP section size ; section "CODE" (10) -0000012: 0a ; section code -0000013: 00 ; section size (guess) -0000014: 01 ; num functions +0000012: 0a ; section code +0000013: 00 ; section size (guess) +0000014: 01 ; num functions ; function body 0 -0000015: 00 ; func body size (guess) -0000016: 00 ; local decl count -0000017: 00 ; unreachable -0000018: 0f ; end -0000015: 03 ; FIXUP func body size -0000013: 05 ; FIXUP section size +0000015: 00 ; func body size (guess) +0000016: 00 ; local decl count +0000017: 00 ; unreachable +0000018: 0f ; end +0000015: 03 ; FIXUP func body size +0000013: 05 ; FIXUP section size ;; dump -0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 -0000010: 0100 0a05 0103 0000 0f +0000000: 0061 736d 0c00 0000 0104 0140 0000 0302 +0000010: 0100 0a05 0103 0000 0f ;;; STDOUT ;;) |