blob: f6e013cf60796d2f90d88093fcec9174ba0498f7 [file] [log] [blame]
Sam Cleggc94d3932017-11-17 18:14:09 +00001; RUN: llc -filetype=obj %p/Inputs/hello.ll -o %t.hello.o
2; RUN: llc -filetype=obj %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
6target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
7target triple = "wasm32-unknown-unknown-wasm"
8
9@foo = hidden global i32 1, align 4
10@aligned_bar = hidden global i32 3, align 16
11
12@hello_str = external global i8*
13@external_ref = global i8** @hello_str, align 8
14
15; CHECK: - Type: GLOBAL
16; CHECK-NEXT: Globals:
17; CHECK-NEXT: - Type: I32
18; CHECK-NEXT: Mutable: true
19; CHECK-NEXT: InitExpr:
20; CHECK-NEXT: Opcode: I32_CONST
21; CHECK-NEXT: Value: 66608
22; CHECK-NEXT: - Type: I32
23; CHECK-NEXT: Mutable: false
24; CHECK-NEXT: InitExpr:
25; CHECK-NEXT: Opcode: I32_CONST
Sam Clegg74fe0ba2017-12-07 01:51:24 +000026; CHECK-NEXT: Value: 1052
27; CHECK-NEXT: - Type: I32
28; CHECK-NEXT: Mutable: false
29; CHECK-NEXT: InitExpr:
30; CHECK-NEXT: Opcode: I32_CONST
Sam Cleggc94d3932017-11-17 18:14:09 +000031; CHECK-NEXT: Value: 1024
32; CHECK-NEXT: - Type: I32
33; CHECK-NEXT: Mutable: false
34; CHECK-NEXT: InitExpr:
35; CHECK-NEXT: Opcode: I32_CONST
36; CHECK-NEXT: Value: 1040
37; CHECK-NEXT: - Type: I32
38; CHECK-NEXT: Mutable: false
39; CHECK-NEXT: InitExpr:
40; CHECK-NEXT: Opcode: I32_CONST
41; CHECK-NEXT: Value: 1048
Sam Cleggc94d3932017-11-17 18:14:09 +000042
43; CHECK: - Type: DATA
44; CHECK-NEXT: Relocations:
45; CHECK-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_I32
Sam Clegg74fe0ba2017-12-07 01:51:24 +000046; CHECK-NEXT: Index: 1
Sam Cleggc94d3932017-11-17 18:14:09 +000047; CHECK-NEXT: Offset: 0x0000001F
48; CHECK-NEXT: Segments:
49; CHECK-NEXT: - SectionOffset: 7
50; CHECK-NEXT: MemoryIndex: 0
51; CHECK-NEXT: Offset:
52; CHECK-NEXT: Opcode: I32_CONST
53; CHECK-NEXT: Value: 1024
54; CHECK-NEXT: Content: 0100000000000000000000000000000003000000000000001C040000
55; CHECK-NEXT: - SectionOffset: 41
56; CHECK-NEXT: MemoryIndex: 0
57; CHECK-NEXT: Offset:
58; CHECK-NEXT: Opcode: I32_CONST
59; CHECK-NEXT: Value: 1052
60; CHECK-NEXT: Content: 68656C6C6F0A00
61
62; CHECK: - Type: CUSTOM
63; CHECK-NEXT: Name: linking
64; CHECK-NEXT: DataSize: 35