1; RUN: llc -filetype=obj %p/Inputs/ret32.ll -o %t.ret32.o
2; RUN: llc -filetype=obj -o %t.start.o %s
3; RUN: wasm-ld -o %t.wasm %t.start.o %t.ret32.o -y ret32 -y _start | FileCheck %s -check-prefix=BOTH
4; RUN: wasm-ld -o %t.wasm %t.ret32.o %t.start.o -y ret32 -y _start | FileCheck %s -check-prefix=REVERSED
5
6; check alias
7; RUN: wasm-ld -o %t.wasm %t.start.o %t.ret32.o -trace-symbol=_start | FileCheck %s -check-prefixes=JUST-START
8
9target triple = "wasm32-unknown-unknown"
10
11declare i32 @ret32(float %arg)
12
13define void @_start() {
14entry:
15  %call1 = call i32 @ret32(float 0.0)
16  ret void
17}
18
19; BOTH:          start.o: definition of _start
20; BOTH-NEXT:     start.o: reference to ret32
21; BOTH-NEXT:     ret32.o: definition of ret32
22
23; REVERSED:      ret32.o: definition of ret32
24; REVERSED-NEXT: start.o: definition of _start
25; REVERSED-NEXT: start.o: reference to ret32
26
27; JUST-START: start.o: definition of _start
28; JUST-START-NOT: ret32
29