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

Issue 17568015: New array bounds check elimination pass (focused on induction variables and bitwise operations). (Closed)

Created:
7 years, 6 months ago by Massi
Modified:
7 years, 5 months ago
Reviewers:
titzer, Jakob Kummerow
CC:
v8-dev
Visibility:
Public.

Description

New array bounds check elimination pass (focused on induction variables and bitwise operations). R=titzer@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=15866

Patch Set 1 #

Total comments: 17

Patch Set 2 : Addressed review comments. #

Total comments: 27

Patch Set 3 : Addressed review comments (3). #

Total comments: 16

Patch Set 4 : Addressed review comments (4). #

Patch Set 5 : Actually removed a method, and applied a small fix. #

Total comments: 15

Patch Set 6 : Addressed review comments (5). #

Patch Set 7 : Recursive traversal implementation. #

Total comments: 21

Patch Set 8 : Reimplemented path scanning with dominator tree traversal (Thamks Ben!). #

Total comments: 9

Patch Set 9 : Addressed all comments but the one about counters (and added the real dominator tree traversal!). #

Patch Set 10 : Fixed counters. #

Patch Set 11 : Reimplemented CheckHoistability with no recursive calls. #

Total comments: 1

Patch Set 12 : Rebased on master. #

Patch Set 13 : Renamed phase and implemented it properly. #

Patch Set 14 : Switched flag to false by default. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1204 lines, -14 lines) Patch
M src/arm/lithium-codegen-arm.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +14 lines, -1 line 0 comments Download
M src/flag-definitions.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +2 lines, -0 lines 0 comments Download
M src/hydrogen.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +21 lines, -0 lines 0 comments Download
M src/hydrogen.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +4 lines, -0 lines 0 comments Download
M src/hydrogen-bce.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +4 lines, -0 lines 0 comments Download
A src/hydrogen-bch.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +408 lines, -0 lines 0 comments Download
M src/hydrogen-instructions.h View 1 2 3 4 5 6 7 8 9 10 11 7 chunks +249 lines, -4 lines 0 comments Download
M src/hydrogen-instructions.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +447 lines, -1 line 0 comments Download
M src/ia32/lithium-codegen-ia32.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +19 lines, -3 lines 0 comments Download
M src/mips/lithium-codegen-mips.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +3 lines, -2 lines 0 comments Download
M src/token.h View 2 chunks +11 lines, -2 lines 0 comments Download
M src/v8-counters.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +2 lines, -0 lines 0 comments Download
M src/x64/lithium-codegen-x64.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +15 lines, -1 line 0 comments Download
M tools/gyp/v8.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 15 (0 generated)
Massi
7 years, 6 months ago (2013-06-24 10:56:16 UTC) #1
titzer
https://codereview.chromium.org/17568015/diff/1/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://codereview.chromium.org/17568015/diff/1/src/hydrogen-instructions.cc#newcode1953 src/hydrogen-instructions.cc:1953: InductionVariableData* InductionVariableData::New(HPhi* phi) { This method really isn't a ...
7 years, 6 months ago (2013-06-24 14:03:29 UTC) #2
Massi
https://codereview.chromium.org/17568015/diff/1/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://codereview.chromium.org/17568015/diff/1/src/hydrogen-instructions.cc#newcode1953 src/hydrogen-instructions.cc:1953: InductionVariableData* InductionVariableData::New(HPhi* phi) { On 2013/06/24 14:03:30, titzer wrote: ...
7 years, 5 months ago (2013-07-01 13:10:48 UTC) #3
titzer
https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc File src/bounds-check-elimination.cc (right): https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc#newcode1 src/bounds-check-elimination.cc:1: // Copyright 2013 the V8 project authors. All rights ...
7 years, 5 months ago (2013-07-02 13:45:05 UTC) #4
Massi
https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc File src/bounds-check-elimination.cc (right): https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc#newcode1 src/bounds-check-elimination.cc:1: // Copyright 2013 the V8 project authors. All rights ...
7 years, 5 months ago (2013-07-08 11:55:07 UTC) #5
titzer
https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc File src/bounds-check-elimination.cc (right): https://codereview.chromium.org/17568015/diff/8001/src/bounds-check-elimination.cc#newcode1 src/bounds-check-elimination.cc:1: // Copyright 2013 the V8 project authors. All rights ...
7 years, 5 months ago (2013-07-10 16:34:18 UTC) #6
Massi
https://codereview.chromium.org/17568015/diff/21001/src/hydrogen-bounds-check-removal.cc File src/hydrogen-bounds-check-removal.cc (right): https://codereview.chromium.org/17568015/diff/21001/src/hydrogen-bounds-check-removal.cc#newcode101 src/hydrogen-bounds-check-removal.cc:101: */ On 2013/07/10 16:34:18, titzer wrote: > It is ...
7 years, 5 months ago (2013-07-11 11:15:22 UTC) #7
titzer
https://codereview.chromium.org/17568015/diff/31001/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://codereview.chromium.org/17568015/diff/31001/src/hydrogen-instructions.cc#newcode1979 src/hydrogen-instructions.cc:1979: * (base - constant_offset) & constant_and_mask Why do we ...
7 years, 5 months ago (2013-07-11 16:39:10 UTC) #8
Massi
https://codereview.chromium.org/17568015/diff/31001/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://codereview.chromium.org/17568015/diff/31001/src/hydrogen-instructions.cc#newcode1979 src/hydrogen-instructions.cc:1979: * (base - constant_offset) & constant_and_mask On 2013/07/11 16:39:10, ...
7 years, 5 months ago (2013-07-12 08:20:24 UTC) #9
titzer
https://codereview.chromium.org/17568015/diff/44001/src/hydrogen-bounds-check-removal.cc File src/hydrogen-bounds-check-removal.cc (right): https://codereview.chromium.org/17568015/diff/44001/src/hydrogen-bounds-check-removal.cc#newcode48 src/hydrogen-bounds-check-removal.cc:48: * InitializeLoop() sets up the table for a given ...
7 years, 5 months ago (2013-07-18 12:22:57 UTC) #10
titzer
https://codereview.chromium.org/17568015/diff/55001/src/hydrogen-bounds-check-removal.cc File src/hydrogen-bounds-check-removal.cc (right): https://codereview.chromium.org/17568015/diff/55001/src/hydrogen-bounds-check-removal.cc#newcode101 src/hydrogen-bounds-check-removal.cc:101: if (!next->is_in_loop()) { This code is now redundant with ...
7 years, 5 months ago (2013-07-22 13:03:10 UTC) #11
Massi
There are only two things on the todo list (for now): - rewrite CheckHoistability in ...
7 years, 5 months ago (2013-07-23 07:57:50 UTC) #12
Massi
Addressed all current comments.
7 years, 5 months ago (2013-07-23 11:53:23 UTC) #13
titzer
LGTM https://codereview.chromium.org/17568015/diff/67001/src/flag-definitions.h File src/flag-definitions.h (right): https://codereview.chromium.org/17568015/diff/67001/src/flag-definitions.h#newcode257 src/flag-definitions.h:257: DEFINE_bool(abcd_ivars, true, "eliminate bounds checks on induction variables") ...
7 years, 5 months ago (2013-07-24 09:33:17 UTC) #14
Massi
7 years, 5 months ago (2013-07-25 06:37:36 UTC) #15
Message was sent while issue was closed.
Committed patchset #14 manually as r15866 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698