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

Issue 2632373004: [turbofan] Regalloc was assuming "blocked" register can't be "used" (Closed)

Created:
3 years, 11 months ago by Mircea Trofin
Modified:
3 years, 11 months ago
CC:
v8-reviews_googlegroups.com, ahaas, Michael Hablich
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[turbofan] Regalloc was assuming "blocked" register can't be "used" When attempting to allocate a blocked register, in the absence of aliasing, it was possible to assume that a register that was blocked - by either belonging to an active fixed register, or to an active unspillable range - could not have possibly be allocated to another active range (because there'd be an interference otherwise). With aliasing, that changes. The range we're trying to allocate may be a double, while the 2 or more active ranges in the paragraph above may be singles aliasing to the same double slot. Opportunistically refactored for readability an optimization, and added some comments. BUG=681529 Review-Url: https://codereview.chromium.org/2632373004 Cr-Commit-Position: refs/heads/master@{#42474} Committed: https://chromium.googlesource.com/v8/v8/+/970d90767dce7fa13e0f0aa5b4eaea83af710e65

Patch Set 1 #

Total comments: 4

Patch Set 2 : DCHECKS #

Unified diffs Side-by-side diffs Delta from patch set Stats (+14 lines, -5 lines) Patch
M src/compiler/register-allocator.cc View 1 4 chunks +14 lines, -5 lines 0 comments Download

Messages

Total messages: 30 (21 generated)
Mircea Trofin
PTAL Verified fix locally. Opened 5856 to track testing for aliasing. Splitting the fix this ...
3 years, 11 months ago (2017-01-18 00:34:10 UTC) #5
bbudge
https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc File src/compiler/register-allocator.cc (right): https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc#newcode3198 src/compiler/register-allocator.cc:3198: range->NextLifetimePositionRegisterIsBeneficial(current->Start())); Is this necessary here, since there is either ...
3 years, 11 months ago (2017-01-18 00:45:13 UTC) #8
Mircea Trofin
https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc File src/compiler/register-allocator.cc (right): https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc#newcode3198 src/compiler/register-allocator.cc:3198: range->NextLifetimePositionRegisterIsBeneficial(current->Start())); On 2017/01/18 00:45:13, bbudge wrote: > Is this ...
3 years, 11 months ago (2017-01-18 01:10:12 UTC) #9
bbudge
LGTM https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc File src/compiler/register-allocator.cc (right): https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc#newcode3198 src/compiler/register-allocator.cc:3198: range->NextLifetimePositionRegisterIsBeneficial(current->Start())); On 2017/01/18 01:10:12, Mircea Trofin wrote: > ...
3 years, 11 months ago (2017-01-18 01:14:52 UTC) #10
Mircea Trofin
https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc File src/compiler/register-allocator.cc (right): https://codereview.chromium.org/2632373004/diff/1/src/compiler/register-allocator.cc#newcode3198 src/compiler/register-allocator.cc:3198: range->NextLifetimePositionRegisterIsBeneficial(current->Start())); On 2017/01/18 01:14:51, bbudge wrote: > On 2017/01/18 ...
3 years, 11 months ago (2017-01-18 06:51:25 UTC) #13
Mircea Trofin
ping (I need a "compiler" OWNERS reviewer)
3 years, 11 months ago (2017-01-18 16:48:47 UTC) #22
titzer
lgtm
3 years, 11 months ago (2017-01-18 18:52:11 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2632373004/40001
3 years, 11 months ago (2017-01-18 18:54:07 UTC) #27
commit-bot: I haz the power
3 years, 11 months ago (2017-01-18 19:01:17 UTC) #30
Message was sent while issue was closed.
Committed patchset #2 (id:40001) as
https://chromium.googlesource.com/v8/v8/+/970d90767dce7fa13e0f0aa5b4eaea83af7...

Powered by Google App Engine
This is Rietveld 408576698