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

Issue 9769: Add state to track the individual elements of the virtual frame.... (Closed)

Created:
12 years, 1 month ago by Kevin Millikin (Chromium)
Modified:
3 years, 11 months ago
Reviewers:
Erik Corry
CC:
v8-dev
Visibility:
Public.

Description

Add state to track the individual elements of the virtual frame. Currently, all elements are eagerly pushed to and popped from the actual frame, so they are always in memory. The code still passes all the v8 and mozilla tests (in debug mode, asserting that frames match at every CFG merge point). This change has not yet been ported to ARM. Committed: http://code.google.com/p/v8/source/detail?r=731

Patch Set 1 #

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+241 lines, -223 lines) Patch
M src/codegen-ia32.cc View 22 chunks +27 lines, -28 lines 2 comments Download
M src/jump-target-ia32.cc View 4 chunks +4 lines, -4 lines 0 comments Download
M src/virtual-frame-ia32.h View 1 5 chunks +73 lines, -33 lines 8 comments Download
M src/virtual-frame-ia32.cc View 1 2 chunks +137 lines, -11 lines 2 comments Download
D src/virtual-frame-ia32-inl.h View 1 chunk +0 lines, -147 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Kevin Millikin (Chromium)
12 years, 1 month ago (2008-11-11 09:28:37 UTC) #1
Erik Corry
LGTM http://codereview.chromium.org/9769/diff/206/11 File src/codegen-ia32.cc (right): http://codereview.chromium.org/9769/diff/206/11#newcode158 Line 158: frame_->AllocateLocals(scope_->num_stack_slots()); Should AllocateLocals be called AllocateStackSlots now? ...
12 years, 1 month ago (2008-11-11 10:47:05 UTC) #2
Kevin Millikin (Chromium)
12 years, 1 month ago (2008-11-11 11:37:31 UTC) #3
http://codereview.chromium.org/9769/diff/206/11
File src/codegen-ia32.cc (right):

http://codereview.chromium.org/9769/diff/206/11#newcode158
Line 158: frame_->AllocateLocals(scope_->num_stack_slots());
On 2008/11/11 10:47:05, Erik Corry wrote:
> Should AllocateLocals be called AllocateStackSlots now?

Probably.  Changed.

http://codereview.chromium.org/9769/diff/206/8
File src/virtual-frame-ia32.cc (right):

http://codereview.chromium.org/9769/diff/206/8#newcode43
Line 43: elements_(cgen->scope()->num_parameters() + 5),
On 2008/11/11 10:47:05, Erik Corry wrote:
> 5?

You think that needs some explanation :)

http://codereview.chromium.org/9769/diff/206/9
File src/virtual-frame-ia32.h (right):

http://codereview.chromium.org/9769/diff/206/9#newcode76
Line 76: void Adjust(int count);
On 2008/11/11 10:47:05, Erik Corry wrote:
> The name Adjust seems mighty generic.  Perhaps AdjustHeight?

Perhaps.  Eventually its use will be minimized: externally it is "magic" and
shouldn't be needed, internally its overused right now because it happens to
work for pushes that are materialized.

http://codereview.chromium.org/9769/diff/206/9#newcode79
Line 79: void Forget(int count);
On 2008/11/11 10:47:05, Erik Corry wrote:
> ForgetElements?

Maybe.  It will also be minimized, so I'll hold off on trying to find the right
name for it.

http://codereview.chromium.org/9769/diff/206/9#newcode108
Line 108: ASSERT(0 <= index && index < local_count_);
On 2008/11/11 10:47:05, Erik Corry wrote:
> 2 different asserts is nicer here if one is triggered.

Agreed.  Changed.

http://codereview.chromium.org/9769/diff/206/9#newcode150
Line 150: // emit code to effect the physical frame.  Does not clobber any
registers
On 2008/11/11 10:47:05, Erik Corry wrote:
> effect -> affect

Embarassing.

Powered by Google App Engine
This is Rietveld 408576698