summaryrefslogtreecommitdiff
path: root/src/arch/arm/isa/templates/pred.isa
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/arm/isa/templates/pred.isa')
-rw-r--r--src/arch/arm/isa/templates/pred.isa3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/arch/arm/isa/templates/pred.isa b/src/arch/arm/isa/templates/pred.isa
index 1029cfaee..b5bdbc40e 100644
--- a/src/arch/arm/isa/templates/pred.isa
+++ b/src/arch/arm/isa/templates/pred.isa
@@ -146,7 +146,8 @@ def template PredOpExecute {{
xc->setPredicate(false);
}
- if (fault == NoFault && machInst.itstateMask != 0) {
+ if (fault == NoFault && machInst.itstateMask != 0&&
+ (!isMicroop() || isLastMicroop())) {
xc->setMiscReg(MISCREG_ITSTATE, machInst.newItstate);
}