blob: f77ed381e09fb49c9241a6efc2f97185b717fe97 [file] [log] [blame]
Sam Clegg70683b22018-01-24 03:29:47 +00001; RUN: llc -filetype=obj %s -o %t.o
2
3target triple = "wasm32-unknown-unknown-wasm"
Sam Cleggc94d3932017-11-17 18:14:09 +00004
Sam Clegg0f0a4282018-01-20 01:44:45 +00005define hidden void @entry() local_unnamed_addr #0 {
Sam Cleggc94d3932017-11-17 18:14:09 +00006entry:
7 ret void
8}
9
Sam Clegg0f0a4282018-01-20 01:44:45 +000010; RUN: lld -flavor wasm -e entry -o %t1.wasm %t.o
11; RUN: obj2yaml %t1.wasm | FileCheck %s
12; RUN: lld -flavor wasm --entry=entry -o %t2.wasm %t.o
13; RUN: obj2yaml %t2.wasm | FileCheck %s
14
15; CHECK: - Type: EXPORT
16; CHECK-NEXT: Exports:
17; CHECK-NEXT: - Name: memory
18; CHECK-NEXT: Kind: MEMORY
19; CHECK-NEXT: Index: 0
20; CHECK-NEXT: - Name: entry
21; CHECK-NEXT: Kind: FUNCTION
22; CHECK-NEXT: Index: 0
23
24; The __wasm_call_ctors is somewhat special. Make sure we can use it
25; as the entry point if we choose
26; RUN: lld -flavor wasm --entry=__wasm_call_ctors -o %t3.wasm %t.o
27; RUN: obj2yaml %t3.wasm | FileCheck %s -check-prefix=CHECK-CTOR
28
29; CHECK-CTOR: - Type: EXPORT
30; CHECK-CTOR-NEXT: Exports:
31; CHECK-CTOR-NEXT: - Name: memory
32; CHECK-CTOR-NEXT: Kind: MEMORY
33; CHECK-CTOR-NEXT: Index: 0
34; CHECK-CTOR-NEXT: - Name: __wasm_call_ctors
35; CHECK-CTOR-NEXT: Kind: FUNCTION
36; CHECK-CTOR-NEXT: Index: 1