xref: /llvm-project/lld/test/ELF/lto/archive.ll (revision 7b1d793713cf9ed9ab719f33b332f9c66a1fc5cc)
1; REQUIRES: x86
2; RUN: llvm-as %S/Inputs/archive.ll -o %t1.o
3; RUN: rm -f %t.a
4; RUN: llvm-ar rcs %t.a %t1.o
5; RUN: llvm-as %s -o %t2.o
6; RUN: ld.lld %t2.o %t.a -o %t3 -shared
7; RUN: llvm-readobj --symbols %t3 | FileCheck %s
8; RUN: ld.lld %t2.o --whole-archive %t.a -o %t3 -shared
9; RUN: llvm-readobj --symbols %t3 | FileCheck %s
10
11; CHECK:      Name: g (
12; CHECK-NEXT: Value:
13; CHECK-NEXT: Size:
14; CHECK-NEXT: Binding: Global
15; CHECK-NEXT: Type: Function
16; CHECK-NEXT: Other: 0
17; CHECK-NEXT: Section: .text
18
19; CHECK:      Name: f (
20; CHECK-NEXT: Value:
21; CHECK-NEXT: Size:
22; CHECK-NEXT: Binding: Global
23; CHECK-NEXT: Type: Function
24; CHECK-NEXT: Other: 0
25; CHECK-NEXT: Section: .text
26
27target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
28target triple = "x86_64-unknown-linux-gnu"
29
30define void @g() {
31  call void @f()
32  ret void
33}
34
35declare void @f()
36
37