@@ -338,12 +338,6 @@ static cl::opt<bool> EnableScalarIRPasses(
338
338
cl::init(true ),
339
339
cl::Hidden);
340
340
341
- static cl::opt<bool , true > EnableStructurizerWorkarounds (
342
- " amdgpu-enable-structurizer-workarounds" ,
343
- cl::desc (" Enable workarounds for the StructurizeCFG pass" ),
344
- cl::location(AMDGPUTargetMachine::EnableStructurizerWorkarounds),
345
- cl::init(true ), cl::Hidden);
346
-
347
341
static cl::opt<bool , true > EnableLowerModuleLDS (
348
342
" amdgpu-enable-lower-module-lds" , cl::desc(" Enable lower module lds pass" ),
349
343
cl::location(AMDGPUTargetMachine::EnableLowerModuleLDS), cl::init(true ),
@@ -615,7 +609,6 @@ AMDGPUTargetMachine::AMDGPUTargetMachine(const Target &T, const Triple &TT,
615
609
616
610
bool AMDGPUTargetMachine::EnableFunctionCalls = false ;
617
611
bool AMDGPUTargetMachine::EnableLowerModuleLDS = true ;
618
- bool AMDGPUTargetMachine::EnableStructurizerWorkarounds = true ;
619
612
620
613
AMDGPUTargetMachine::~AMDGPUTargetMachine () = default ;
621
614
@@ -1231,10 +1224,8 @@ bool GCNPassConfig::addPreISel() {
1231
1224
// Merge divergent exit nodes. StructurizeCFG won't recognize the multi-exit
1232
1225
// regions formed by them.
1233
1226
addPass (&AMDGPUUnifyDivergentExitNodesID);
1234
- if (EnableStructurizerWorkarounds) {
1235
- addPass (createFixIrreduciblePass ());
1236
- addPass (createUnifyLoopExitsPass ());
1237
- }
1227
+ addPass (createFixIrreduciblePass ());
1228
+ addPass (createUnifyLoopExitsPass ());
1238
1229
addPass (createStructurizeCFGPass (false )); // true -> SkipUniformRegions
1239
1230
1240
1231
addPass (createAMDGPUAnnotateUniformValuesLegacy ());
@@ -1853,8 +1844,6 @@ void AMDGPUCodeGenPassBuilder::addCodeGenPrepare(AddIRPass &addPass) const {
1853
1844
}
1854
1845
1855
1846
void AMDGPUCodeGenPassBuilder::addPreISel (AddIRPass &addPass) const {
1856
- const bool EnableStructurizerWorkarounds =
1857
- AMDGPUTargetMachine::EnableStructurizerWorkarounds;
1858
1847
1859
1848
if (TM.getOptLevel () > CodeGenOptLevel::None)
1860
1849
addPass (FlattenCFGPass ());
@@ -1868,12 +1857,8 @@ void AMDGPUCodeGenPassBuilder::addPreISel(AddIRPass &addPass) const {
1868
1857
// regions formed by them.
1869
1858
1870
1859
addPass (AMDGPUUnifyDivergentExitNodesPass ());
1871
-
1872
- if (EnableStructurizerWorkarounds) {
1873
- addPass (FixIrreduciblePass ());
1874
- addPass (UnifyLoopExitsPass ());
1875
- }
1876
-
1860
+ addPass (FixIrreduciblePass ());
1861
+ addPass (UnifyLoopExitsPass ());
1877
1862
addPass (StructurizeCFGPass (/* SkipUniformRegions=*/ false ));
1878
1863
1879
1864
addPass (AMDGPUAnnotateUniformValuesPass ());
0 commit comments