xref: /llvm-project/llvm/test/Transforms/ThinLTOBitcodeWriter/function-alias.ll (revision 9950ea66203849df25352b8db8f4ea108ef47a5a)
1; RUN: opt -thinlto-bc -thinlto-split-lto-unit -o %t %s
2; RUN: llvm-modextract -n 1 -o - %t | llvm-dis | FileCheck --check-prefix=CHECK1 %s
3
4target triple = "x86_64-unknown-linux-gnu"
5
6define hidden void @Func() !type !0 {
7  ret void
8}
9
10; CHECK1: !aliases = !{![[A1:[0-9]+]], ![[A2:[0-9]+]], ![[A3:[0-9]+]]}
11
12; CHECK1: ![[A1]] = !{!"Alias", !"Func", i8 1, i8 0}
13; CHECK1: ![[A2]] = !{!"Hidden_Alias", !"Func", i8 1, i8 0}
14; CHECK1: ![[A3]] = !{!"Weak_Alias", !"Func", i8 0, i8 1}
15@Alias = hidden alias void (), ptr @Func
16@Hidden_Alias = hidden alias void (), ptr @Func
17@Weak_Alias = weak alias void (), ptr @Func
18
19@Variable = global i32 0
20
21; Only generate summary alias information for aliases to functions
22; CHECK1-NOT: Variable_Alias
23@Variable_Alias = alias i32, ptr @Variable
24
25!0 = !{i64 0, !"_ZTSFvvE"}
26