Pārlūkot izejas kodu

[PostRAMachineSink] preserve CFG

Summary: Mark CFG is preserved  since this pass do not make any change in CFG.

Reviewers: sebpop, mzolotukhin, mcrosier

Reviewed By: mzolotukhin

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D44845

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@328727 91177308-0d34-0410-b5e6-96231b3b80d8
Jun Bum Lim 7 gadi atpakaļ
vecāks
revīzija
e6597a2a88
2 mainītis faili ar 5 papildinājumiem un 2 dzēšanām
  1. 5 0
      lib/CodeGen/MachineSink.cpp
  2. 0 2
      test/CodeGen/X86/O3-pipeline.ll

+ 5 - 0
lib/CodeGen/MachineSink.cpp

@@ -948,6 +948,11 @@ public:
   PostRAMachineSinking() : MachineFunctionPass(ID) {}
   StringRef getPassName() const override { return "PostRA Machine Sink"; }
 
+  void getAnalysisUsage(AnalysisUsage &AU) const override {
+    AU.setPreservesCFG();
+    MachineFunctionPass::getAnalysisUsage(AU);
+  }
+
 private:
   /// Track which registers have been modified and used.
   BitVector ModifiedRegs, UsedRegs;

+ 0 - 2
test/CodeGen/X86/O3-pipeline.ll

@@ -120,8 +120,6 @@
 ; CHECK-NEXT:       Bundle Machine CFG Edges
 ; CHECK-NEXT:       X86 FP Stackifier
 ; CHECK-NEXT:       PostRA Machine Sink
-; CHECK-NEXT:       MachineDominator Tree Construction
-; CHECK-NEXT:       Machine Natural Loop Construction
 ; CHECK-NEXT:       Machine Block Frequency Analysis
 ; CHECK-NEXT:       MachinePostDominator Tree Construction
 ; CHECK-NEXT:       Shrink Wrapping analysis