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

Issue 165230: Eliminate most of the jump target jumping, branching, and binding... (Closed)

Created:
11 years, 4 months ago by Kevin Millikin (Chromium)
Modified:
9 years, 7 months ago
Reviewers:
Erik Corry
CC:
v8-dev
Visibility:
Public.

Description

Eliminate most of the jump target jumping, branching, and binding overhead on the ARM platform. Because virtual frames are always in memory, there is no work to be done for control flow except in the case of breaking or continuing when there is extra statement state on the stack. Committed: http://code.google.com/p/v8/source/detail?r=2655

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+258 lines, -326 lines) Patch
M src/arm/jump-target-arm.cc View 4 chunks +120 lines, -208 lines 4 comments Download
M src/arm/virtual-frame-arm.h View 1 chunk +6 lines, -4 lines 0 comments Download
M src/arm/virtual-frame-arm.cc View 1 chunk +4 lines, -53 lines 0 comments Download
M src/ia32/jump-target-ia32.cc View 1 chunk +64 lines, -0 lines 0 comments Download
M src/jump-target.cc View 2 chunks +0 lines, -61 lines 0 comments Download
M src/x64/jump-target-x64.cc View 1 chunk +64 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Kevin Millikin (Chromium)
11 years, 4 months ago (2009-08-10 08:31:32 UTC) #1
Erik Corry
LGTM http://codereview.chromium.org/165230/diff/1/7 File src/arm/jump-target-arm.cc (right): http://codereview.chromium.org/165230/diff/1/7#newcode65 Line 65: // The predicate is_linked() should now be ...
11 years, 4 months ago (2009-08-10 10:56:45 UTC) #2
Kevin Millikin (Chromium)
11 years, 4 months ago (2009-08-10 11:11:31 UTC) #3
http://codereview.chromium.org/165230/diff/1/7
File src/arm/jump-target-arm.cc (right):

http://codereview.chromium.org/165230/diff/1/7#newcode65
Line 65: // The predicate is_linked() should now be true.  The implementation
On 2009/08/10 10:56:45, Erik Corry wrote:
> This comment doesn't explain itself very well.

Reworded:

"The predicate is_linked() should be made true.  Its implementation detects the
presence of a frame pointer in the reaching_frames_ list."

http://codereview.chromium.org/165230/diff/1/7#newcode166
Line 166: int count = cgen()->frame()->height() - expected_height_;
On 2009/08/10 10:56:45, Erik Corry wrote:
> Should we assert that count is positive?

Yea verily.  Even better it should go in VirtualFrame::Drop.  I've added it for
all platforms.

Powered by Google App Engine
This is Rietveld 408576698