aboutsummaryrefslogtreecommitdiff
path: root/vm/compiler/codegen/arm/LocalOptimizations.c
diff options
context:
space:
mode:
Diffstat (limited to 'vm/compiler/codegen/arm/LocalOptimizations.c')
-rw-r--r--vm/compiler/codegen/arm/LocalOptimizations.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/vm/compiler/codegen/arm/LocalOptimizations.c b/vm/compiler/codegen/arm/LocalOptimizations.c
index 5f24b4ca5..6f00b9e4c 100644
--- a/vm/compiler/codegen/arm/LocalOptimizations.c
+++ b/vm/compiler/codegen/arm/LocalOptimizations.c
@@ -139,6 +139,9 @@ static void applyLoadStoreElimination(CompilationUnit *cUnit,
checkLIR->opCode == THUMB2_VLDRD ||
checkLIR->opCode == THUMB2_VSTRD;
+ /* Don't migrate into an IF region */
+ stopHere |= checkLIR->opCode == THUMB2_IT;
+
if (!isPseudoOpCode(checkLIR->opCode)) {
/* Store data is clobbered */