Chromium Code Reviews

Unified Diff: src/deoptimizer.cc

Issue 1264483008: [deoptimizer] Fix the frame size calculation for debugger-inspectable frame construction. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « no previous file | test/mjsunit/regress/regress-514362.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/deoptimizer.cc
diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc
index d29cb6056347d63f30ef9643a833dd4f90c6cb59..498a467fb3d064f6f7524851826757cc80d0cf76 100644
--- a/src/deoptimizer.cc
+++ b/src/deoptimizer.cc
@@ -154,8 +154,13 @@ DeoptimizedFrameInfo* Deoptimizer::DebuggerInspectableFrame(
// Always use the actual stack slots when calculating the fp to sp
// delta adding two for the function and context.
unsigned stack_slots = code->stack_slots();
+ DeoptimizationInputData* data =
+ DeoptimizationInputData::cast(code->deoptimization_data());
+ unsigned arguments_stack_height =
+ data->ArgumentsStackHeight(deoptimization_index)->value() * kPointerSize;
Yang 2015/08/03 11:35:14 ComputeOutgoingArgumentSize() contains the same co
Jarin 2015/08/03 11:48:23 Done.
unsigned fp_to_sp_delta = (stack_slots * kPointerSize) +
- StandardFrameConstants::kFixedFrameSizeFromFp;
+ StandardFrameConstants::kFixedFrameSizeFromFp +
+ arguments_stack_height;
Deoptimizer* deoptimizer = new Deoptimizer(isolate,
function,
« no previous file with comments | « no previous file | test/mjsunit/regress/regress-514362.js » ('j') | no next file with comments »

Powered by Google App Engine