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

Issue 7307035: Add inspection of whether frame is a construct frame to 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

Add inspection of whether frame is a construct frame to optimized frames Also avoid that calling Debug::IsBreakAtReturn causes a full doptimization when there are no break points set. The full deoptimization is caused by Debug::IsBreakAtReturn calling Debug::EnsureDebugInfo which will assume that a break point is now set. R=svenpanne@chromium.org BUG=v8:1140 TEST=test/mjsunit/debug-evaluate-locals-optimized.js,test/mjsunit/debug- evaluate-locals-optimized-doubles.js Committed: http://code.google.com/p/v8/source/detail?r=8573

Patch Set 1 #

Total comments: 2

Patch Set 2 : Addressed review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+31 lines, -6 lines) Patch
M src/debug.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M src/runtime.cc View 1 1 chunk +4 lines, -2 lines 0 comments Download
M test/mjsunit/debug-evaluate-locals-optimized.js View 3 chunks +10 lines, -2 lines 0 comments Download
M test/mjsunit/debug-evaluate-locals-optimized-double.js View 3 chunks +10 lines, -2 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Søren Thygesen Gjesse
9 years, 5 months ago (2011-07-07 14:52:11 UTC) #1
Sven Panne
LGTM apart from the small readability issue. http://codereview.chromium.org/7307035/diff/1/src/runtime.cc File src/runtime.cc (right): http://codereview.chromium.org/7307035/diff/1/src/runtime.cc#newcode10069 src/runtime.cc:10069: } This ...
9 years, 5 months ago (2011-07-08 08:17:37 UTC) #2
Søren Thygesen Gjesse
9 years, 5 months ago (2011-07-08 08:43:09 UTC) #3
http://codereview.chromium.org/7307035/diff/1/src/runtime.cc
File src/runtime.cc (right):

http://codereview.chromium.org/7307035/diff/1/src/runtime.cc#newcode10069
src/runtime.cc:10069: }
On 2011/07/08 08:17:37, Sven wrote:
> This is a bit hard to read, perhaps:
> 
> bool inlined_frame = it.frame()->is_optimized() && deoptimized_frame_index !=
0;
> bool constructor = !inlined_frame && it.frame()->IsConstructor();
> 
> http://www.refactoring.com/catalog/introduceExplainingVariable.html ;-)
> 
> Or even better: Can this be moved into IsConstructor? It's a bit hard for me
to
> judge from its uses.

Done. It cannot go into IsConstructor as IsConstructor is a method on the "real"
stack frame for the optimized function containing inlined functions.

Powered by Google App Engine
This is Rietveld 408576698