• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; Test to check the callgraph in summary
2; RUN: opt -module-summary %s -o %t.o
3; RUN: llvm-lto -thinlto-action=thinlink -o %t.index.bc %t.o
4; RUN: llvm-bcanalyzer -dump %t.index.bc | FileCheck -allow-deprecated-dag-overlap %s --check-prefix=COMBINED
5
6; COMBINED:       <GLOBALVAL_SUMMARY_BLOCK
7; COMBINED-NEXT:    <VERSION
8; COMBINED-NEXT:    <FLAGS
9; COMBINED-NEXT:    <VALUE_GUID {{.*}} op1=4947176790635855146/>
10; COMBINED-NEXT:    <VALUE_GUID {{.*}} op1=-6591587165810580810/>
11; COMBINED-NEXT:    <VALUE_GUID {{.*}} op1=-4377693495213223786/>
12; COMBINED-DAG:    <COMBINED
13; COMBINED-DAG:    <COMBINED_ORIGINAL_NAME op0=6699318081062747564/>
14; COMBINED-DAG:    <COMBINED_GLOBALVAR_INIT_REFS
15; COMBINED-DAG:    <COMBINED_ORIGINAL_NAME op0=-2012135647395072713/>
16; COMBINED-DAG:    <COMBINED_ALIAS
17; COMBINED-DAG:    <COMBINED_ORIGINAL_NAME op0=-4170563161550796836/>
18; COMBINED-NEXT:  </GLOBALVAL_SUMMARY_BLOCK>
19
20source_filename = "/path/to/source.c"
21
22; ModuleID = 'thinlto-function-summary-callgraph.ll'
23target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
24target triple = "x86_64-unknown-linux-gnu"
25
26@bar = internal global i32 0
27@fooalias = internal alias void (...), bitcast (void ()* @foo to void (...)*)
28
29define internal void @foo() {
30    ret void
31}
32