[Frontend] Remove unused includes (NFC) (#116927)
[llvm-project.git] / llvm / test / Analysis / CtxProfAnalysis / load-unapplicable.ll
blob09d2e150fbcef6462302fd3194d62fc9e9dbe72f
1 ; REQUIRES: x86_64-linux
3 ; Check that, if none of the roots in the profile are defined in the module, the
4 ; profile is treated as empty (i.e. "none provided")
6 ; RUN: rm -rf %t
7 ; RUN: split-file %s %t
8 ; RUN: llvm-ctxprof-util fromJSON --input=%t/profile.json --output=%t/profile.ctxprofdata
9 ; RUN: opt -passes='require<ctx-prof-analysis>,print<ctx-prof-analysis>' -ctx-profile-printer-level=everything \
10 ; RUN:   %t/example.ll -S 2>&1 | FileCheck %s
12 ; CHECK: No contextual profile was provided
14 ; This is the reference profile, laid out in the format the json formatter will
15 ; output it from opt. Note that the root GUIDs - 12341 and 34234 - are different from
16 ; the GUID present in the module, which is otherwise present in the profile, but not
17 ; as a root.
18 ;--- profile.json
20   {
21     "Counters": [
22       9
23     ],
24     "Guid": 12341
25   },
26   {
27     "Counters": [
28       5
29     ],
30     "Guid": 1000
31   },
32   {
33     "Callsites": [
34       [
35         {
36           "Counters": [
37             6,
38             7
39           ],
40           "Guid": 1000
41         }
42       ]
43     ],
44     "Counters": [
45       1
46     ],
47     "Guid": 34234
48   }
50 ;--- example.ll
51 declare void @bar()
53 define void @an_entrypoint(i32 %a) !guid !0 {
54   %t = icmp eq i32 %a, 0
55   br i1 %t, label %yes, label %no
57 yes:
58   call void @bar()
59   ret void
60 no:
61   ret void
64 attributes #0 = { noinline }
65 !0 = !{ i64 1000 }