xref: /llvm-project/llvm/test/ThinLTO/X86/llvm-stats-import.ll (revision ef0cb372dc80c9f71a181125e6dca22e5c59ece5)
1; RUN: opt -module-summary %s -o %t1.bc
2; RUN: opt -module-summary %p/Inputs/llvm-stats-import.ll -o %t2.bc
3; RUN: llvm-lto -thinlto-action=thinlink -o %t.index.bc %t1.bc %t2.bc
4
5; RUN: llvm-lto -thinlto-action=import %t1.bc -thinlto-index=%t.index.bc -o - | llvm-dis -o - | FileCheck %s --check-prefix=CHECK-MAIN
6; RUN: llvm-lto -thinlto-action=import %t2.bc -thinlto-index=%t.index.bc -o - | llvm-dis -o - | FileCheck %s --check-prefix=CHECK-FOO
7
8; CHECK-MAIN: !0 = !{!"main", i64 123}
9; CHECK-MAIN-NOT: !{!"foo", i64 456}
10
11; CHECK-FOO: !0 = !{!"foo", i64 456}
12; CHECK-FOO-NOT: !{!"main", i64 123}
13
14target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
15target triple = "x86_64-unknown-linux-gnu"
16
17define i32 @main() {
18entry:
19  call void (...) @foo()
20  ret i32 0
21}
22
23declare void @foo(...)
24
25attributes #0 = { inaccessiblememonly nounwind willreturn }
26
27!llvm.stats = !{!0}
28!0 = !{!"main", i64 123}
29