Index: lib/Target/AMDGPU/AMDGPUSubtarget.cpp =================================================================== --- lib/Target/AMDGPU/AMDGPUSubtarget.cpp +++ lib/Target/AMDGPU/AMDGPUSubtarget.cpp @@ -260,9 +260,7 @@ Policy.OnlyTopDown = false; Policy.OnlyBottomUp = false; - // Enabling ShouldTrackLaneMasks crashes the SI Machine Scheduler. - if (!enableSIScheduler()) - Policy.ShouldTrackLaneMasks = true; + Policy.ShouldTrackLaneMasks = true; } bool SISubtarget::isVGPRSpillingEnabled(const Function& F) const { Index: lib/Target/AMDGPU/SIMachineScheduler.h =================================================================== --- lib/Target/AMDGPU/SIMachineScheduler.h +++ lib/Target/AMDGPU/SIMachineScheduler.h @@ -440,7 +440,7 @@ // To init Block's RPTracker. void initRPTracker(RegPressureTracker &RPTracker) { - RPTracker.init(&MF, RegClassInfo, LIS, BB, RegionBegin, false, false); + RPTracker.init(&MF, RegClassInfo, LIS, BB, RegionBegin, true, false); } MachineBasicBlock *getBB() { return BB; }