forked from llvm-mirror/llvm
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[CodeGen] Add an -O0 backend pipeline test. NFC.
This should hopefully makes changes to the O0 pipeline obvious; it's easy to require expensive passes, and this helps make informed decisions. Case in point: in the few weeks separating the time when I initially wrote this patch to the time when I committed, the test regressed as r302103 added another use of DT! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@302608 91177308-0d34-0410-b5e6-96231b3b80d8
- Loading branch information
1 parent
bde17ff
commit 5de619e
Showing
1 changed file
with
71 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
; RUN: llc -mtriple=x86_64-- -O0 -debug-pass=Structure < %s -o /dev/null 2>&1 | FileCheck %s | ||
|
||
; REQUIRES: asserts | ||
|
||
; CHECK-LABEL: Pass Arguments: | ||
; CHECK-NEXT: Target Library Information | ||
; CHECK-NEXT: Target Transform Information | ||
; CHECK-NEXT: Target Pass Configuration | ||
; CHECK-NEXT: Type-Based Alias Analysis | ||
; CHECK-NEXT: Scoped NoAlias Alias Analysis | ||
; CHECK-NEXT: Assumption Cache Tracker | ||
; CHECK-NEXT: Create Garbage Collector Module Metadata | ||
; CHECK-NEXT: Machine Module Information | ||
; CHECK-NEXT: Machine Branch Probability Analysis | ||
; CHECK-NEXT: ModulePass Manager | ||
; CHECK-NEXT: Pre-ISel Intrinsic Lowering | ||
; CHECK-NEXT: FunctionPass Manager | ||
; CHECK-NEXT: Expand Atomic instructions | ||
; CHECK-NEXT: Dominator Tree Construction | ||
; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) | ||
; CHECK-NEXT: Module Verifier | ||
; CHECK-NEXT: Lower Garbage Collection Instructions | ||
; CHECK-NEXT: Shadow Stack GC Lowering | ||
; CHECK-NEXT: Remove unreachable blocks from the CFG | ||
; CHECK-NEXT: Inserts calls to mcount-like functions | ||
; CHECK-NEXT: Rewrite Symbols | ||
; CHECK-NEXT: FunctionPass Manager | ||
; CHECK-NEXT: Dominator Tree Construction | ||
; CHECK-NEXT: Exception handling preparation | ||
; CHECK-NEXT: Dominator Tree Construction | ||
; CHECK-NEXT: Natural Loop Information | ||
; CHECK-NEXT: Scalar Evolution Analysis | ||
; CHECK-NEXT: Safe Stack instrumentation pass | ||
; CHECK-NEXT: Insert stack protectors | ||
; CHECK-NEXT: Module Verifier | ||
; CHECK-NEXT: Dominator Tree Construction | ||
; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) | ||
; CHECK-NEXT: Function Alias Analysis Results | ||
; CHECK-NEXT: X86 DAG->DAG Instruction Selection | ||
; CHECK-NEXT: X86 PIC Global Base Reg Initialization | ||
; CHECK-NEXT: Expand ISel Pseudo-instructions | ||
; CHECK-NEXT: Local Stack Slot Allocation | ||
; CHECK-NEXT: X86 WinAlloca Expander | ||
; CHECK-NEXT: Eliminate PHI nodes for register allocation | ||
; CHECK-NEXT: Two-Address instruction pass | ||
; CHECK-NEXT: Fast Register Allocator | ||
; CHECK-NEXT: Bundle Machine CFG Edges | ||
; CHECK-NEXT: X86 FP Stackifier | ||
; CHECK-NEXT: Prologue/Epilogue Insertion & Frame Finalization | ||
; CHECK-NEXT: Post-RA pseudo instruction expansion pass | ||
; CHECK-NEXT: X86 pseudo instruction expansion pass | ||
; CHECK-NEXT: Analyze Machine Code For Garbage Collection | ||
; CHECK-NEXT: X86 vzeroupper inserter | ||
; CHECK-NEXT: Contiguously Lay Out Funclets | ||
; CHECK-NEXT: StackMap Liveness Analysis | ||
; CHECK-NEXT: Live DEBUG_VALUE analysis | ||
; CHECK-NEXT: Insert fentry calls | ||
; CHECK-NEXT: MachineDominator Tree Construction | ||
; CHECK-NEXT: Machine Natural Loop Construction | ||
; CHECK-NEXT: Insert XRay ops | ||
; CHECK-NEXT: Implement the 'patchable-function' attribute | ||
; CHECK-NEXT: Lazy Machine Block Frequency Analysis | ||
; CHECK-NEXT: Machine Optimization Remark Emitter | ||
; CHECK-NEXT: MachineDominator Tree Construction | ||
; CHECK-NEXT: Machine Natural Loop Construction | ||
; CHECK-NEXT: X86 Assembly Printer | ||
; CHECK-NEXT: Free MachineFunction | ||
|
||
define void @f() { | ||
ret void | ||
} |