xref: /llvm-project/llvm/test/Analysis/CallGraph/callback-calls.ll (revision 67c8636ec3cb71059de3bd82a534c4fd931380de)
1; RUN: opt < %s -passes=print-callgraph -disable-output 2>&1 | FileCheck %s
2; RUN: opt < %s -passes=print-callgraph -disable-output 2>&1 | FileCheck %s
3
4; CHECK: Call graph node for function: 'caller'
5; CHECK-NEXT:   CS<{{.*}}> calls function 'broker'
6; CHECK-NEXT:   CS<None> calls function 'callback'
7
8define void @caller(ptr %arg) {
9  call void @broker(ptr @callback, ptr %arg)
10  ret void
11}
12
13define void @callback(ptr %arg) {
14  ret void
15}
16
17declare !callback !0 void @broker(ptr, ptr)
18
19!0 = !{!1}
20!1 = !{i64 0, i64 1, i1 false}
21