;;; TOOL: run-objdump ;;; ARGS0: -r ;;; ARGS1: --headers --details (module (type $t (func (param i32))) (import "__extern" "foo" (func (param i32) (result i32))) (import "__extern" "bar" (func (param i32) (param i32) (result i32))) (global $g i32 (i32.const 0)) (func $f (param i32) (result i32) global.get 0 call 2 call 0 i32.const 1234 i32.const 0 call_indirect (param i32) (param i32) (result i32)) (export "f" (func $f)) (table funcref (elem 1))) (;; STDOUT ;;; relocations.wasm: file format wasm 0x1 Sections: Type start=0x0000000a end=0x0000001a (size=0x00000010) count: 3 Import start=0x0000001c end=0x0000003b (size=0x0000001f) count: 2 Function start=0x0000003d end=0x0000003f (size=0x00000002) count: 1 Table start=0x00000041 end=0x00000046 (size=0x00000005) count: 1 Global start=0x00000048 end=0x0000004e (size=0x00000006) count: 1 Export start=0x00000050 end=0x00000055 (size=0x00000005) count: 1 Elem start=0x00000057 end=0x0000005e (size=0x00000007) count: 1 Code start=0x00000060 end=0x00000086 (size=0x00000026) count: 1 Custom start=0x00000088 end=0x000000a9 (size=0x00000021) "linking" Custom start=0x000000ab end=0x000000c7 (size=0x0000001c) "reloc.Code" Section Details: Type[3]: - type[0] (i32) -> nil - type[1] (i32) -> i32 - type[2] (i32, i32) -> i32 Import[2]: - func[0] sig=1 <__extern.foo> <- __extern.foo - func[1] sig=2 <__extern.bar> <- __extern.bar Function[1]: - func[2] sig=1 Table[1]: - table[0] type=funcref initial=1 max=1 Global[1]: - global[0] i32 mutable=0 - init i32=0 Export[1]: - func[2] -> "f" Elem[1]: - segment[0] flags=0 table=0 count=1 - init i32=0 - elem[0] = ref.func:1 <__extern.bar> Code[1]: - func[2] size=36 Custom: - name: "linking" - symbol table [count=5] - 0: F <__extern.foo> func=0 [ undefined binding=global vis=default ] - 1: F <__extern.bar> func=1 [ undefined binding=global vis=default ] - 2: F func=2 [ exported no_strip binding=global vis=hidden ] - 3: T <> table=0 [ binding=local vis=hidden ] - 4: G global=0 [ binding=global vis=default ] Custom: - name: "reloc.Code" - relocations for section: 7 (Code) [5] - R_WASM_GLOBAL_INDEX_LEB offset=0x000004(file=0x000064) symbol=4 - R_WASM_FUNCTION_INDEX_LEB offset=0x00000a(file=0x00006a) symbol=2 - R_WASM_FUNCTION_INDEX_LEB offset=0x000010(file=0x000070) symbol=0 <__extern.foo> - R_WASM_TYPE_INDEX_LEB offset=0x00001b(file=0x00007b) type=2 - R_WASM_TABLE_NUMBER_LEB offset=0x000020(file=0x000080) symbol=3 <> Code Disassembly: 000062 func[2] : 000063: 23 80 80 80 80 00 | global.get 0 000064: R_WASM_GLOBAL_INDEX_LEB 4 000069: 10 82 80 80 80 00 | call 2 00006a: R_WASM_FUNCTION_INDEX_LEB 2 00006f: 10 80 80 80 80 00 | call 0 <__extern.foo> 000070: R_WASM_FUNCTION_INDEX_LEB 0 <__extern.foo> 000075: 41 d2 09 | i32.const 1234 000078: 41 00 | i32.const 0 00007a: 11 82 80 80 80 00 80 80 80 | call_indirect 0 (type 2) 000083: 80 00 | 00007b: R_WASM_TYPE_INDEX_LEB 2 000085: 0b | end 000080: R_WASM_TABLE_NUMBER_LEB 3 <> ;;; STDOUT ;;)