blob: c22956f2759e406af4c3b07e756815addd8ea1a0 [file] [log] [blame] [edit]
; RUN: llc -filetype=obj -o %t.o %s
; RUN: llc -filetype=obj %p/Inputs/explicit-section.ll -o %t2.o
; RUN: wasm-ld --export=get_start --export=get_end --export=foo --export=var1 %t.o %t2.o -o %t.wasm
; RUN: obj2yaml %t.wasm | FileCheck %s
; RUN: llvm-objdump -d --no-show-raw-insn %t.wasm | FileCheck %s --check-prefix=ASM
target triple = "wasm32-unknown-unknown"
@foo = global i32 3, section "mysection", align 4
@bar = global i32 4, section "mysection", align 4
@__start_mysection = external global ptr
@__stop_mysection = external global ptr
define ptr @get_start() {
ret ptr @__start_mysection
}
define ptr @get_end() {
ret ptr @__stop_mysection
}
define void @_start() {
entry:
ret void
}
; CHECK: - Type: DATA
; CHECK-NEXT: Segments:
; CHECK-NEXT: - SectionOffset: 8
; CHECK-NEXT: InitFlags: 0
; CHECK-NEXT: Offset:
; CHECK-NEXT: Opcode: I32_CONST
; CHECK-NEXT: Value: 65536
; CHECK-NEXT: Content: 03000000040000002A0000002B000000
; ASM: 00000070 <get_start>:
; ASM-EMPTY:
; ASM-NEXT: 72: i32.const 65536
; ASM-NEXT: 78: end
; ASM: 00000079 <get_end>:
; ASM-EMPTY:
; ASM-NEXT: 7b: i32.const 65552
; ASM-NEXT: 81: end