Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1398)

Unified Diff: runtime/vm/stub_code_x64.cc

Issue 2357343003: Fix lazy deoptimization in the presence of exceptions (Closed)
Patch Set: Ensure space for patching on ARM/MIPS archs Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/stub_code_mips.cc ('k') | tests/language/vm/lazy_deopt_with_exception_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/stub_code_x64.cc
diff --git a/runtime/vm/stub_code_x64.cc b/runtime/vm/stub_code_x64.cc
index 0c01d6882497e926e3602eee32ba206aad002fb5..032fbfbb3d131553e1323c7f2ff97fb29fe99993 100644
--- a/runtime/vm/stub_code_x64.cc
+++ b/runtime/vm/stub_code_x64.cc
@@ -1874,6 +1874,9 @@ void StubCode::GenerateJumpToExceptionHandlerStub(Assembler* assembler) {
// Clear top exit frame.
__ movq(Address(THR, Thread::top_exit_frame_info_offset()),
Immediate(0));
+ // Restore the pool pointer.
+ __ RestoreCodePointer();
+ __ LoadPoolPointer(PP);
__ jmp(CallingConventions::kArg1Reg); // Jump to the exception handler code.
}
« no previous file with comments | « runtime/vm/stub_code_mips.cc ('k') | tests/language/vm/lazy_deopt_with_exception_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698