Index: src/arm/full-codegen-arm.cc |
diff --git a/src/arm/full-codegen-arm.cc b/src/arm/full-codegen-arm.cc |
index c221a4835136ba89054a80207a49f07d223636c2..cc45e6da9f9eb73683510219c0d99350e9c0ba7b 100644 |
--- a/src/arm/full-codegen-arm.cc |
+++ b/src/arm/full-codegen-arm.cc |
@@ -2194,12 +2194,20 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, |
__ cmp(r3, Operand(0)); |
__ b(ne, &slow_resume); |
__ ldr(r3, FieldMemOperand(r4, JSFunction::kCodeEntryOffset)); |
+ |
+ ConstantPoolUnavailableScope constant_pool_unavailable(masm_); |
ulan
2014/03/11 13:07:39
Shouldn't this scope be
- at the beginning of the
rmcilroy
2014/03/11 16:14:53
The Constant Pool is unavailable (for this code ob
ulan
2014/03/11 16:19:57
I see, thanks for explaining! What about putting i
rmcilroy
2014/03/11 16:42:23
Good call! Done.
|
+ if (FLAG_enable_ool_constant_pool) { |
+ // Load the new code object's constant pool pointer. |
+ __ ldr(pp, MemOperand(r3, Code::kConstantPoolOffset - Code::kHeaderSize)); |
+ } |
+ |
__ ldr(r2, FieldMemOperand(r1, JSGeneratorObject::kContinuationOffset)); |
__ SmiUntag(r2); |
__ add(r3, r3, r2); |
__ mov(r2, Operand(Smi::FromInt(JSGeneratorObject::kGeneratorExecuting))); |
__ str(r2, FieldMemOperand(r1, JSGeneratorObject::kContinuationOffset)); |
__ Jump(r3); |
+ |
__ bind(&slow_resume); |
} |