Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index 40747c868c36751f0b76c105bbf0c2abf972683b..ded69e9349a59454c4c5bc6237524dd87c172311 100644 |
--- a/src/arm/lithium-codegen-arm.cc |
+++ b/src/arm/lithium-codegen-arm.cc |
@@ -5818,6 +5818,21 @@ void LCodeGen::DoLoadFieldByIndex(LLoadFieldByIndex* instr) { |
} |
+void LCodeGen::DoStoreFrameContext(LStoreFrameContext* instr) { |
+ Register context = ToRegister(instr->context()); |
+ __ str(context, MemOperand(fp, StandardFrameConstants::kContextOffset)); |
+} |
+ |
+ |
+void LCodeGen::DoAllocateBlockContext(LAllocateBlockContext* instr) { |
+ Handle<ScopeInfo> scope_info = instr->scope_info(); |
+ __ Push(scope_info); |
+ __ push(ToRegister(instr->function())); |
+ CallRuntime(Runtime::kHiddenPushBlockContext, 2, instr); |
+ RecordSafepoint(Safepoint::kNoLazyDeopt); |
+} |
+ |
+ |
#undef __ |
} } // namespace v8::internal |