1 # RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown -o %t.o %s
2 # RUN: wasm-ld --relocatable -o %t.wasm %t.o
3 # RUN: obj2yaml %t.wasm | FileCheck %s
5 .globaltype __stack_pointer, i32
9 .functype _start () -> (i32)
10 global.get __stack_pointer
18 # CHECK-NEXT: FileHeader:
19 # CHECK-NEXT: Version: 0x1
20 # CHECK-NEXT: Sections:
21 # CHECK-NEXT: - Type: TYPE
22 # CHECK-NEXT: Signatures:
23 # CHECK-NEXT: - Index: 0
24 # CHECK-NEXT: ParamTypes:
25 # CHECK-NEXT: ReturnTypes:
27 # CHECK-NEXT: - Type: IMPORT
28 # CHECK-NEXT: Imports:
29 # CHECK-NEXT: - Module: env
30 # CHECK-NEXT: Field: __stack_pointer
31 # CHECK-NEXT: Kind: GLOBAL
32 # CHECK-NEXT: GlobalType: I32
33 # CHECK-NEXT: GlobalMutable: true
34 # CHECK-NEXT: - Type: FUNCTION
35 # CHECK-NEXT: FunctionTypes: [ 0 ]
36 # CHECK-NEXT: - Type: MEMORY
37 # CHECK-NEXT: Memories:
38 # CHECK-NEXT: - Minimum: 0x0
39 # CHECK-NEXT: - Type: CODE
40 # CHECK-NEXT: Relocations:
41 # CHECK-NEXT: - Type: R_WASM_GLOBAL_INDEX_LEB
42 # CHECK-NEXT: Index: 1
43 # CHECK-NEXT: Offset: 0x4
44 # CHECK-NEXT: Functions:
45 # CHECK-NEXT: - Index: 0
47 # CHECK-NEXT: Body: 23808080800041106B1A41000B
48 # CHECK-NEXT: - Type: CUSTOM
49 # CHECK-NEXT: Name: linking
50 # CHECK-NEXT: Version: 2
51 # CHECK-NEXT: SymbolTable:
52 # CHECK-NEXT: - Index: 0
53 # CHECK-NEXT: Kind: FUNCTION
54 # CHECK-NEXT: Name: _start
55 # CHECK-NEXT: Flags: [ ]
56 # CHECK-NEXT: Function: 0
57 # CHECK-NEXT: - Index: 1
58 # CHECK-NEXT: Kind: GLOBAL
59 # CHECK-NEXT: Name: __stack_pointer
60 # CHECK-NEXT: Flags: [ UNDEFINED ]
61 # CHECK-NEXT: Global: 0
62 # CHECK-NEXT: - Type: CUSTOM
63 # CHECK-NEXT: Name: name
64 # CHECK-NEXT: FunctionNames:
65 # CHECK-NEXT: - Index: 0
66 # CHECK-NEXT: Name: _start
67 # CHECK-NEXT: GlobalNames:
68 # CHECK-NEXT: - Index: 0
69 # CHECK-NEXT: Name: __stack_pointer