blob: 0b2c61da5547f6768c2c9870e47bbed3422e8aa2 [file] [log] [blame]
Sam Clegg2e25e892017-12-08 18:37:44 +00001; RUN: llc -filetype=obj -mtriple=wasm32-unknown-uknown-wasm %p/Inputs/hello.ll -o %t.hello.o
2; RUN: llc -filetype=obj -mtriple=wasm32-unknown-uknown-wasm %s -o %t.o
Sam Clegg2c096ba2017-12-08 17:58:25 +00003; RUN: lld -flavor wasm --emit-relocs --allow-undefined --no-entry -o %t.wasm %t.o %t.hello.o
Sam Cleggc94d3932017-11-17 18:14:09 +00004; RUN: obj2yaml %t.wasm | FileCheck %s
5
Sam Cleggc94d3932017-11-17 18:14:09 +00006@foo = hidden global i32 1, align 4
7@aligned_bar = hidden global i32 3, align 16
8
9@hello_str = external global i8*
10@external_ref = global i8** @hello_str, align 8
11
12; CHECK: - Type: GLOBAL
13; CHECK-NEXT: Globals:
14; CHECK-NEXT: - Type: I32
15; CHECK-NEXT: Mutable: true
Rui Ueyama1ce416c2017-12-12 20:00:30 +000016; CHECK-NEXT: InitExpr:
Sam Cleggc94d3932017-11-17 18:14:09 +000017; CHECK-NEXT: Opcode: I32_CONST
18; CHECK-NEXT: Value: 66608
19; CHECK-NEXT: - Type: I32
20; CHECK-NEXT: Mutable: false
21; CHECK-NEXT: InitExpr:
22; CHECK-NEXT: Opcode: I32_CONST
23; CHECK-NEXT: Value: 1024
24; CHECK-NEXT: - Type: I32
25; CHECK-NEXT: Mutable: false
26; CHECK-NEXT: InitExpr:
27; CHECK-NEXT: Opcode: I32_CONST
28; CHECK-NEXT: Value: 1040
29; CHECK-NEXT: - Type: I32
30; CHECK-NEXT: Mutable: false
31; CHECK-NEXT: InitExpr:
32; CHECK-NEXT: Opcode: I32_CONST
33; CHECK-NEXT: Value: 1048
Sam Clegg3f1fb882017-12-11 21:52:21 +000034; CHECK-NEXT: - Type: I32
35; CHECK-NEXT: Mutable: false
36; CHECK-NEXT: InitExpr:
37; CHECK-NEXT: Opcode: I32_CONST
38; CHECK-NEXT: Value: 1052
Sam Cleggc94d3932017-11-17 18:14:09 +000039
40; CHECK: - Type: DATA
41; CHECK-NEXT: Relocations:
42; CHECK-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_I32
Sam Clegg3f1fb882017-12-11 21:52:21 +000043; CHECK-NEXT: Index: 4
Sam Cleggc94d3932017-11-17 18:14:09 +000044; CHECK-NEXT: Offset: 0x0000001F
45; CHECK-NEXT: Segments:
46; CHECK-NEXT: - SectionOffset: 7
47; CHECK-NEXT: MemoryIndex: 0
48; CHECK-NEXT: Offset:
49; CHECK-NEXT: Opcode: I32_CONST
50; CHECK-NEXT: Value: 1024
51; CHECK-NEXT: Content: 0100000000000000000000000000000003000000000000001C040000
52; CHECK-NEXT: - SectionOffset: 41
53; CHECK-NEXT: MemoryIndex: 0
54; CHECK-NEXT: Offset:
55; CHECK-NEXT: Opcode: I32_CONST
56; CHECK-NEXT: Value: 1052
57; CHECK-NEXT: Content: 68656C6C6F0A00
58
59; CHECK: - Type: CUSTOM
60; CHECK-NEXT: Name: linking
61; CHECK-NEXT: DataSize: 35