Fix missed suspend check.
Change-Id: Id926b6290f2ace12a1e2d36f59303591a896763b
diff --git a/src/compiler/codegen/MethodBitcode.cc b/src/compiler/codegen/MethodBitcode.cc
index ad9b020..f162576 100644
--- a/src/compiler/codegen/MethodBitcode.cc
+++ b/src/compiler/codegen/MethodBitcode.cc
@@ -551,7 +551,7 @@
case Instruction::RETURN_WIDE:
case Instruction::RETURN:
case Instruction::RETURN_OBJECT: {
- if (!cUnit->attrs & METHOD_IS_LEAF) {
+ if (!(cUnit->attrs & METHOD_IS_LEAF)) {
emitSuspendCheck(cUnit);
}
emitPopShadowFrame(cUnit);
@@ -561,7 +561,7 @@
break;
case Instruction::RETURN_VOID: {
- if (!cUnit->attrs & METHOD_IS_LEAF) {
+ if (!(cUnit->attrs & METHOD_IS_LEAF)) {
emitSuspendCheck(cUnit);
}
emitPopShadowFrame(cUnit);
diff --git a/src/compiler/codegen/MethodCodegenDriver.cc b/src/compiler/codegen/MethodCodegenDriver.cc
index a07e569..62939ba 100644
--- a/src/compiler/codegen/MethodCodegenDriver.cc
+++ b/src/compiler/codegen/MethodCodegenDriver.cc
@@ -281,21 +281,21 @@
break;
}
case Instruction::RETURN_VOID:
- if (!cUnit->attrs & METHOD_IS_LEAF) {
+ if (!(cUnit->attrs & METHOD_IS_LEAF)) {
genSuspendTest(cUnit, optFlags);
}
break;
case Instruction::RETURN:
case Instruction::RETURN_OBJECT:
- if (!cUnit->attrs & METHOD_IS_LEAF) {
+ if (!(cUnit->attrs & METHOD_IS_LEAF)) {
genSuspendTest(cUnit, optFlags);
}
storeValue(cUnit, oatGetReturn(cUnit, cUnit->shorty[0] == 'F'), rlSrc[0]);
break;
case Instruction::RETURN_WIDE:
- if (!cUnit->attrs & METHOD_IS_LEAF) {
+ if (!(cUnit->attrs & METHOD_IS_LEAF)) {
genSuspendTest(cUnit, optFlags);
}
storeValueWide(cUnit, oatGetReturnWide(cUnit,