[llvm] r223253 - R600/SI: Move SIInsertWaits into AMDGPUPassConfig::addPreSched2()
Tom Stellard
thomas.stellard at amd.com
Wed Dec 3 10:27:08 PST 2014
Author: tstellar
Date: Wed Dec 3 12:27:08 2014
New Revision: 223253
URL: http://llvm.org/viewvc/llvm-project?rev=223253&view=rev
Log:
R600/SI: Move SIInsertWaits into AMDGPUPassConfig::addPreSched2()
This pass needs to be run after PrologEpilogInserter, because
that pass may inserter spill code which reads or writes memory.
Modified:
llvm/trunk/lib/Target/R600/AMDGPUTargetMachine.cpp
Modified: llvm/trunk/lib/Target/R600/AMDGPUTargetMachine.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/R600/AMDGPUTargetMachine.cpp?rev=223253&r1=223252&r2=223253&view=diff
==============================================================================
--- llvm/trunk/lib/Target/R600/AMDGPUTargetMachine.cpp (original)
+++ llvm/trunk/lib/Target/R600/AMDGPUTargetMachine.cpp Wed Dec 3 12:27:08 2014
@@ -190,7 +190,6 @@ bool AMDGPUPassConfig::addPostRegAlloc()
if (ST.getGeneration() > AMDGPUSubtarget::NORTHERN_ISLANDS) {
addPass(createSIShrinkInstructionsPass());
- addPass(createSIInsertWaits(*TM));
}
return false;
}
@@ -204,6 +203,9 @@ bool AMDGPUPassConfig::addPreSched2() {
addPass(&IfConverterID);
if (ST.getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
addPass(createR600ClauseMergePass(*TM));
+ if (ST.getGeneration() >= AMDGPUSubtarget::SOUTHERN_ISLANDS) {
+ addPass(createSIInsertWaits(*TM));
+ }
return false;
}
More information about the llvm-commits
mailing list