diff --git a/src/arch/hsail/insts/branch.hh b/src/arch/hsail/insts/branch.hh index 89bcc1277f..3a520b216f 100644 --- a/src/arch/hsail/insts/branch.hh +++ b/src/arch/hsail/insts/branch.hh @@ -133,7 +133,6 @@ namespace HsailISA // Rpc and execution mask remain the same w->pc(getTargetPc()); } - w->discardFetch(); } class BrnDirectInst : public BrnInstBase @@ -293,7 +292,6 @@ namespace HsailISA w->pushToReconvergenceStack(true_pc, rpc, true_mask); } assert(w->pc() != curr_pc); - w->discardFetch(); } @@ -405,7 +403,6 @@ namespace HsailISA // Rpc and execution mask remain the same w->pc(getTargetPc()); } - w->discardFetch(); } class BrDirectInst : public BrInstBase diff --git a/src/gpu-compute/wavefront.cc b/src/gpu-compute/wavefront.cc index caeed85a7d..96f0d0e963 100644 --- a/src/gpu-compute/wavefront.cc +++ b/src/gpu-compute/wavefront.cc @@ -675,6 +675,8 @@ Wavefront::exec() } else { instructionBuffer.pop_front(); } + } else { + discardFetch(); } if (computeUnit->shader->hsail_mode==Shader::SIMT) {