Index: src/arm64/lithium-codegen-arm64.cc |
diff --git a/src/arm64/lithium-codegen-arm64.cc b/src/arm64/lithium-codegen-arm64.cc |
index 00a8748fb72f865db97a74ed0163e1a589770ed4..5b0388c6e920fb7965f8b8b6b308ef4598d98f08 100644 |
--- a/src/arm64/lithium-codegen-arm64.cc |
+++ b/src/arm64/lithium-codegen-arm64.cc |
@@ -6039,4 +6039,21 @@ void LCodeGen::DoLoadFieldByIndex(LLoadFieldByIndex* instr) { |
__ Bind(&done); |
} |
+ |
+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); |
+} |
+ |
+ |
+ |
} } // namespace v8::internal |