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

Issue 7343005: Support scope information and evaluation in optimized frames (Closed)

Created:
9 years, 5 months ago by Søren Thygesen Gjesse
Modified:
9 years, 5 months ago
Reviewers:
Sven Panne
CC:
v8-dev
Visibility:
Public.

Description

Support scope information and evaluation in optimized frames R=svenpanne@chromium.org BUG=v8:1140 TEST=test/mjsunit/debug-evaluate-locals-optimized.js,test/mjsunit/debug-evaluate-locals-optimized-double.js Committed: http://code.google.com/p/v8/source/detail?r=8633

Patch Set 1 #

Total comments: 2

Patch Set 2 : Refactored #

Patch Set 3 : Minor fix #

Total comments: 2

Patch Set 4 : Addressed review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+222 lines, -96 lines) Patch
M src/mirror-debugger.js View 6 chunks +25 lines, -10 lines 0 comments Download
M src/runtime.h View 2 chunks +2 lines, -2 lines 0 comments Download
M src/runtime.cc View 1 2 3 29 chunks +126 lines, -67 lines 0 comments Download
M test/mjsunit/debug-evaluate-locals-optimized.js View 1 2 chunks +34 lines, -6 lines 0 comments Download
M test/mjsunit/debug-evaluate-locals-optimized-double.js View 2 chunks +35 lines, -11 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Sven Panne
http://codereview.chromium.org/7343005/diff/1/src/deoptimizer.h File src/deoptimizer.h (right): http://codereview.chromium.org/7343005/diff/1/src/deoptimizer.h#newcode723 src/deoptimizer.h:723: class ScopedDeoptimizedFrameInfo { This class looks a bits strange: ...
9 years, 5 months ago (2011-07-12 13:40:32 UTC) #1
Søren Thygesen Gjesse
http://codereview.chromium.org/7343005/diff/1/src/deoptimizer.h File src/deoptimizer.h (right): http://codereview.chromium.org/7343005/diff/1/src/deoptimizer.h#newcode723 src/deoptimizer.h:723: class ScopedDeoptimizedFrameInfo { On 2011/07/12 13:40:32, Sven wrote: > ...
9 years, 5 months ago (2011-07-12 14:20:36 UTC) #2
Søren Thygesen Gjesse
Sven, please take a look now.
9 years, 5 months ago (2011-07-13 10:45:13 UTC) #3
Sven Panne
LGTM apart from a minor problem understanding the code (see comment) http://codereview.chromium.org/7343005/diff/7001/src/runtime.cc File src/runtime.cc (right): ...
9 years, 5 months ago (2011-07-13 10:53:46 UTC) #4
Søren Thygesen Gjesse
9 years, 5 months ago (2011-07-13 11:12:37 UTC) #5
http://codereview.chromium.org/7343005/diff/7001/src/runtime.cc
File src/runtime.cc (right):

http://codereview.chromium.org/7343005/diff/7001/src/runtime.cc#newcode10024
src/runtime.cc:10024: void set_frame(JavaScriptFrame* frame) {
On 2011/07/13 10:53:46, Sven wrote:
> Is it OK (or even intended for correct execution of the code below) that
frame_
> and deoptimized_frame_ are "out of sync" after this call? I don't understand
> enough details to decide this. If it *is* OK, perhaps a comment about this
might
> be helpful.

Well, this is somewhat odd. The issue is that when inspecting a JavaScript frame
(not inlined) it always have the correct number of arguments. If the provided
parameters are different the frame below holds the provided arguments. And as a
JavaScriptFrameIterator can only expose one JavaScriptFrame it is replaced. I
will elaborate the comment and narrow down the usage of this.

An even better solution might be to have the FrameInspector control the
JavaScriptFrameIterator, but that will be a separate change.

Powered by Google App Engine
This is Rietveld 408576698