| Index: runtime/vm/intermediate_language_arm.cc
|
| diff --git a/runtime/vm/intermediate_language_arm.cc b/runtime/vm/intermediate_language_arm.cc
|
| index 05e9a8c9c52f79b972ebde7537f0a012aafa9be5..cc8c0e9b1bc123e5571031d882bae214e6580877 100644
|
| --- a/runtime/vm/intermediate_language_arm.cc
|
| +++ b/runtime/vm/intermediate_language_arm.cc
|
| @@ -104,8 +104,11 @@ void ReturnInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
|
| __ bkpt(0);
|
| __ Bind(&stack_ok);
|
| #endif
|
| - __ LeaveDartFrame();
|
| + __ LeaveDartFrame(); // Disallows constant pool use.
|
| __ Ret();
|
| + // This ReturnInstr may be emitted out of order by the optimizer. The next
|
| + // block may be a target expecting a properly set constant pool pointer.
|
| + __ set_constant_pool_allowed(true);
|
| }
|
|
|
|
|
|
|