1 ; RUN: llc -filetype=obj %s -o %t.o
3 target triple = "wasm32-unknown-unknown"
5 define hidden void @entry() local_unnamed_addr #0 {
10 ; RUN: wasm-ld -e entry -o %t1.wasm %t.o
11 ; RUN: obj2yaml %t1.wasm | FileCheck %s
12 ; RUN: wasm-ld --entry=entry -o %t2.wasm %t.o
13 ; RUN: obj2yaml %t2.wasm | FileCheck %s
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: __heap_base
21 ; CHECK-NEXT: Kind: GLOBAL
22 ; CHECK-NEXT: Index: 1
23 ; CHECK-NEXT: - Name: __data_end
24 ; CHECK-NEXT: Kind: GLOBAL
25 ; CHECK-NEXT: Index: 2
26 ; CHECK-NEXT: - Name: entry
27 ; CHECK-NEXT: Kind: FUNCTION
28 ; CHECK-NEXT: Index: 1
31 ; The __wasm_call_ctors is somewhat special since its created by the linker.
32 ; Make sure we can use it as the entry point if we choose
33 ; RUN: wasm-ld --entry=__wasm_call_ctors -o %t3.wasm %t.o
34 ; RUN: obj2yaml %t3.wasm | FileCheck %s -check-prefix=CHECK-CTOR
36 ; CHECK-CTOR: - Type: EXPORT
37 ; CHECK-CTOR-NEXT: Exports:
38 ; CHECK-CTOR-NEXT: - Name: memory
39 ; CHECK-CTOR-NEXT: Kind: MEMORY
40 ; CHECK-CTOR-NEXT: Index: 0
41 ; CHECK-CTOR-NEXT: - Name: __wasm_call_ctors
42 ; CHECK-CTOR-NEXT: Kind: FUNCTION
43 ; CHECK-CTOR-NEXT: Index: 0
44 ; CHECK-CTOR-NEXT: - Name: __heap_base
45 ; CHECK-CTOR-NEXT: Kind: GLOBAL
46 ; CHECK-CTOR-NEXT: Index: 1
47 ; CHECK-CTOR-NEXT: - Name: __data_end
48 ; CHECK-CTOR-NEXT: Kind: GLOBAL
49 ; CHECK-CTOR-NEXT: Index: 2
50 ; CHECK-CTOR-NEXT: - Type: