diff options
-rw-r--r-- | lib/Target/R600/R600ControlFlowFinalizer.cpp | 1 | ||||
-rw-r--r-- | lib/Target/R600/R600EmitClauseMarkers.cpp | 6 |
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/Target/R600/R600ControlFlowFinalizer.cpp b/lib/Target/R600/R600ControlFlowFinalizer.cpp index bd87d74..5c30601 100644 --- a/lib/Target/R600/R600ControlFlowFinalizer.cpp +++ b/lib/Target/R600/R600ControlFlowFinalizer.cpp @@ -144,7 +144,6 @@ public: case AMDGPU::CF_ALU_PUSH_BEFORE: CurrentStack++; MaxStack = std::max(MaxStack, CurrentStack); - case AMDGPU::KILLGT: case AMDGPU::CF_ALU: CfCount++; break; diff --git a/lib/Target/R600/R600EmitClauseMarkers.cpp b/lib/Target/R600/R600EmitClauseMarkers.cpp index 7c7469a..bda3703 100644 --- a/lib/Target/R600/R600EmitClauseMarkers.cpp +++ b/lib/Target/R600/R600EmitClauseMarkers.cpp @@ -61,8 +61,6 @@ private: } bool isALU(const MachineInstr *MI) const { - if (MI->getOpcode() == AMDGPU::KILLGT) - return false; if (TII->isALUInstr(MI->getOpcode())) return true; if (TII->isVector(*MI) || TII->isCubeOp(MI->getOpcode())) @@ -195,6 +193,10 @@ private: AluInstCount ++; continue; } + if (I->getOpcode() == AMDGPU::KILLGT) { + I++; + break; + } if (TII->isALUInstr(I->getOpcode()) && !SubstituteKCacheBank(I, KCacheBanks)) break; |