1# REQUIRES: x86
2
3# RUN: echo '.globl a; .type a, @function; .type a, @function; a: ret' | \
4# RUN:   llvm-mc -filetype=obj -triple=x86_64-unknown-linux - -o %ta.o
5# RUN: ld.lld %ta.o --shared --soname=a.so -o %ta.so
6
7# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
8# RUN: ld.lld %t.o --as-needed %ta.so -o %t
9# RUN: llvm-readelf -d %t | FileCheck %s
10# RUN: ld.lld %t.o --as-needed %ta.so --gc-sections -o %t
11# RUN: llvm-readelf -d %t | FileCheck %s
12
13# The order of %ta.so and %t.o does not matter.
14
15# RUN: ld.lld --as-needed %ta.so %t.o -o %t
16# RUN: llvm-readelf -d %t | FileCheck %s
17# RUN: ld.lld --as-needed %ta.so %t.o --gc-sections -o %t
18# RUN: llvm-readelf -d %t | FileCheck %s
19
20# CHECK: a.so
21
22.global _start
23_start:
24  jmp a@PLT
25