| ; RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown %p/Inputs/ret32.s -o %t.ret32.o |
| ; RUN: llc -filetype=obj -o %t.start.o %s |
| ; RUN: wasm-ld -o %t.wasm %t.start.o %t.ret32.o -y ret32 -y _start | FileCheck %s -check-prefix=BOTH |
| ; RUN: wasm-ld -o %t.wasm %t.ret32.o %t.start.o -y ret32 -y _start | FileCheck %s -check-prefix=REVERSED |
| |
| ; check alias |
| ; RUN: wasm-ld -o %t.wasm %t.start.o %t.ret32.o -trace-symbol=_start | FileCheck %s -check-prefixes=JUST-START |
| |
| target triple = "wasm32-unknown-unknown" |
| |
| declare i32 @ret32(float %arg) |
| |
| define void @_start() { |
| entry: |
| %call1 = call i32 @ret32(float 0.0) |
| ret void |
| } |
| |
| ; BOTH: start.o: definition of _start |
| ; BOTH-NEXT: start.o: reference to ret32 |
| ; BOTH-NEXT: ret32.o: definition of ret32 |
| |
| ; REVERSED: ret32.o: definition of ret32 |
| ; REVERSED-NEXT: start.o: definition of _start |
| ; REVERSED-NEXT: start.o: reference to ret32 |
| |
| ; JUST-START: start.o: definition of _start |
| ; JUST-START-NOT: ret32 |