[Reland][Runtimes] Merge 'compile_commands.json' files from runtimes build (#116303)
[llvm-project.git] / llvm / test / CodeGen / AArch64 / O0-pipeline.ll
blobe01df9ea03e78b734aa1635aafd5f9db61254108
1 ; RUN: llc --debugify-and-strip-all-safe=0 -mtriple=arm64-- -O0 -debug-pass=Structure < %s -o /dev/null 2>&1 | \
2 ; RUN:     grep -v "Verify generated machine code" | FileCheck %s
4 ; REQUIRES: asserts
6 ; CHECK-LABEL: Pass Arguments:
7 ; CHECK-NEXT: Target Library Information
8 ; CHECK-NEXT: Target Pass Configuration
9 ; CHECK-NEXT: Machine Module Information
10 ; CHECK-NEXT: Target Transform Information
11 ; CHECK-NEXT: Create Garbage Collector Module Metadata
12 ; CHECK-NEXT: Profile summary info
13 ; CHECK-NEXT: Assumption Cache Tracker
14 ; CHECK-NEXT: Machine Branch Probability Analysis
15 ; CHECK-NEXT:   ModulePass Manager
16 ; CHECK-NEXT:     Pre-ISel Intrinsic Lowering
17 ; CHECK-NEXT:     FunctionPass Manager
18 ; CHECK-NEXT:       Expand large div/rem
19 ; CHECK-NEXT:       Expand large fp convert
20 ; CHECK-NEXT:       Expand Atomic instructions
21 ; CHECK-NEXT:       Module Verifier
22 ; CHECK-NEXT:       Lower Garbage Collection Instructions
23 ; CHECK-NEXT:       Shadow Stack GC Lowering
24 ; CHECK-NEXT:       Remove unreachable blocks from the CFG
25 ; CHECK-NEXT:       Instrument function entry/exit with calls to e.g. mcount() (post inlining)
26 ; CHECK-NEXT:       Scalarize Masked Memory Intrinsics
27 ; CHECK-NEXT:       Expand reduction intrinsics
28 ; CHECK-NEXT:     AArch64 Globals Tagging
29 ; CHECK-NEXT:     FunctionPass Manager
30 ; CHECK-NEXT:       Dominator Tree Construction
31 ; CHECK-NEXT:       Natural Loop Information
32 ; CHECK-NEXT:       Lazy Branch Probability Analysis
33 ; CHECK-NEXT:       Lazy Block Frequency Analysis
34 ; CHECK-NEXT:       Optimization Remark Emitter
35 ; CHECK-NEXT:       AArch64 Stack Tagging
36 ; CHECK-NEXT:       SME ABI Pass
37 ; CHECK-NEXT:       Exception handling preparation
38 ; CHECK-NEXT:       Prepare callbr
39 ; CHECK-NEXT:       Safe Stack instrumentation pass
40 ; CHECK-NEXT:       Insert stack protectors
41 ; CHECK-NEXT:       Module Verifier
42 ; CHECK-NEXT:       Analysis containing CSE Info
43 ; CHECK-NEXT:       IRTranslator
44 ; CHECK-NEXT:       Analysis for ComputingKnownBits
45 ; CHECK-NEXT:       AArch64O0PreLegalizerCombiner
46 ; CHECK-NEXT:       Localizer
47 ; CHECK-NEXT:       Analysis containing CSE Info
48 ; CHECK-NEXT:       Analysis for ComputingKnownBits
49 ; CHECK-NEXT:       Legalizer
50 ; CHECK-NEXT:       AArch64PostLegalizerLowering
51 ; CHECK-NEXT:       RegBankSelect
52 ; CHECK-NEXT:       Analysis for ComputingKnownBits
53 ; CHECK-NEXT:       InstructionSelect
54 ; CHECK-NEXT:       ResetMachineFunction
55 ; CHECK-NEXT:       Assignment Tracking Analysis
56 ; CHECK-NEXT:       AArch64 Instruction Selection
57 ; CHECK-NEXT:       Finalize ISel and expand pseudo-instructions
58 ; CHECK-NEXT:       Local Stack Slot Allocation
59 ; CHECK-NEXT:       Eliminate PHI nodes for register allocation
60 ; CHECK-NEXT:       Two-Address instruction pass
61 ; CHECK-NEXT:       Fast Register Allocator
62 ; CHECK-NEXT:       Remove Redundant DEBUG_VALUE analysis
63 ; CHECK-NEXT:       Fixup Statepoint Caller Saved
64 ; CHECK-NEXT:       Lazy Machine Block Frequency Analysis
65 ; CHECK-NEXT:       Machine Optimization Remark Emitter
66 ; CHECK-NEXT:       Prologue/Epilogue Insertion & Frame Finalization
67 ; CHECK-NEXT:       Post-RA pseudo instruction expansion pass
68 ; CHECK-NEXT:       AArch64 pseudo instruction expansion pass
69 ; CHECK-NEXT:       Insert KCFI indirect call checks
70 ; CHECK-NEXT:       AArch64 speculation hardening pass
71 ; CHECK-NEXT:       Analyze Machine Code For Garbage Collection
72 ; CHECK-NEXT:       Insert fentry calls
73 ; CHECK-NEXT:       Insert XRay ops
74 ; CHECK-NEXT:       Implement the 'patchable-function' attribute
75 ; CHECK-NEXT:       Workaround A53 erratum 835769 pass
76 ; CHECK-NEXT:       Contiguously Lay Out Funclets
77 ; CHECK-NEXT:       Remove Loads Into Fake Uses
78 ; CHECK-NEXT:       StackMap Liveness Analysis
79 ; CHECK-NEXT:       Live DEBUG_VALUE analysis
80 ; CHECK-NEXT:       Machine Sanitizer Binary Metadata
81 ; CHECK-NEXT:       AArch64 sls hardening pass
82 ; CHECK-NEXT:       AArch64 Pointer Authentication
83 ; CHECK-NEXT:       AArch64 Branch Targets
84 ; CHECK-NEXT:       Branch relaxation pass
85 ; CHECK-NEXT:       Insert CFI remember/restore state instructions
86 ; CHECK-NEXT:       Lazy Machine Block Frequency Analysis
87 ; CHECK-NEXT:       Machine Optimization Remark Emitter
88 ; CHECK-NEXT:       Stack Frame Layout Analysis
89 ; CHECK-NEXT:       Unpack machine instruction bundles
90 ; CHECK-NEXT:       Lazy Machine Block Frequency Analysis
91 ; CHECK-NEXT:       Machine Optimization Remark Emitter
92 ; CHECK-NEXT:       AArch64 Assembly Printer
93 ; CHECK-NEXT:       Free MachineFunction
95 define void @f() {
96   ret void