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

Issue 1531273002: [Interpreter] Allocates new temporary register outside the reservation for consecutive registers. (Closed)

Created:
5 years ago by mythria
Modified:
5 years ago
Reviewers:
oth, rmcilroy
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[Interpreter] Allocates new temporary register outside the reservation for consecutive registers. Consecutive registers are allocated in two passes. First we "reserve" a set of registers and these get allocated when we actually use them. If we request for a temporary register before we use all the consecutive registers, the earlier implementation does not gaurantee that it allocates outside the reservation for consecutive registers. This could cause problems for example, in call_func(a, b++, c). This cl fixes TemporaryRegisterScope::NewRegister, to return a new temporary register outside the reservation for consecutive registers. BUG=v8:4280 LOG=N Committed: https://crrev.com/e7373f42859cff71f2a64780dcab35244f1ce343 Cr-Commit-Position: refs/heads/master@{#33005}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Added checks to ensure innerscopes don't have a reservation for consecutive registers. #

Patch Set 3 : "Allocates a new unallocted temporary register for allocations outside current or outer contexts" #

Total comments: 2

Patch Set 4 : "Addressed review comments." #

Patch Set 5 : Updated mjsunit.status. #

Patch Set 6 : Updated mjsunit.status for Debug mode. #

Patch Set 7 : Fixing mjsunit.status again. one test is failing on bots. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+102 lines, -13 lines) Patch
M src/interpreter/bytecode-array-builder.h View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M src/interpreter/bytecode-array-builder.cc View 1 2 3 2 chunks +43 lines, -1 line 0 comments Download
M src/interpreter/bytecode-generator.cc View 1 2 3 1 chunk +16 lines, -1 line 0 comments Download
M test/cctest/interpreter/test-bytecode-generator.cc View 1 2 1 chunk +4 lines, -4 lines 0 comments Download
M test/cctest/interpreter/test-interpreter.cc View 1 2 3 1 chunk +34 lines, -0 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 5 6 6 chunks +0 lines, -6 lines 0 comments Download
M test/test262/test262.status View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 15 (4 generated)
mythria
This is to fix the following case: call(a, b++, c) 1. Call reserves 3 consecutive ...
5 years ago (2015-12-17 15:59:16 UTC) #2
rmcilroy
On 2015/12/17 15:59:16, mythria wrote: > This is to fix the following case: call(a, b++, ...
5 years ago (2015-12-17 18:53:01 UTC) #3
oth
Very nice! One comment, but a good fix. lgtm https://codereview.chromium.org/1531273002/diff/1/src/interpreter/bytecode-array-builder.cc File src/interpreter/bytecode-array-builder.cc (right): https://codereview.chromium.org/1531273002/diff/1/src/interpreter/bytecode-array-builder.cc#newcode995 src/interpreter/bytecode-array-builder.cc:995: ...
5 years ago (2015-12-18 07:33:29 UTC) #4
oth
https://codereview.chromium.org/1531273002/diff/1/src/interpreter/bytecode-array-builder.cc File src/interpreter/bytecode-array-builder.cc (right): https://codereview.chromium.org/1531273002/diff/1/src/interpreter/bytecode-array-builder.cc#newcode1424 src/interpreter/bytecode-array-builder.cc:1424: allocated = builder_->BorrowTemporaryRegisterNotInRange( We might want to think about: ...
5 years ago (2015-12-18 07:46:43 UTC) #5
mythria
Could you please take a look. I addressed comments and also changed the implementation to ...
5 years ago (2015-12-21 12:18:36 UTC) #6
mythria
On 2015/12/17 18:53:01, rmcilroy wrote: > On 2015/12/17 15:59:16, mythria wrote: > > This is ...
5 years ago (2015-12-21 12:23:43 UTC) #7
oth
Like it - there are a couple of minor comments, but overall super. Will wait ...
5 years ago (2015-12-21 12:48:21 UTC) #8
mythria
finally got all the bots working :). I Updated mjsunit.status. Thanks, Mythri
5 years ago (2015-12-22 09:23:10 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1531273002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1531273002/120001
5 years ago (2015-12-22 09:24:49 UTC) #12
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years ago (2015-12-22 09:26:10 UTC) #13
commit-bot: I haz the power
5 years ago (2015-12-22 09:26:29 UTC) #15
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/e7373f42859cff71f2a64780dcab35244f1ce343
Cr-Commit-Position: refs/heads/master@{#33005}

Powered by Google App Engine
This is Rietveld 408576698