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

Issue 1588903002: [Interpreter] Fixes VisitObjectLiteral to reserve consecutive registers in innerscope. (Closed)

Created:
4 years, 11 months ago by mythria
Modified:
4 years, 11 months ago
Reviewers:
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] Fixes VisitObjectLiteral to reserve consecutive registers in innerscope. VisitObjectLiteral has two parts. First it creates a literal and then sets properties or accessor properties. Setting properties requires a runtime call and it expects the literal object which was created in the first part is contiguous with other registers it allocates. Since these are allocated in a different scope they are not always contiguous. This causes problems with mjsunit/setter-on-constructor-prototype.js. This cl fixes by allocating contiguous registers in the inner scope. Literal value is copied into the newly allocated register so that all the required registers are always contiguous. BUG=v8:4280 LOG=N Committed: https://crrev.com/8ae9fb69c2363a40917364c0a22b7c09cb6dbc3c Cr-Commit-Position: refs/heads/master@{#33371}

Patch Set 1 #

Total comments: 5

Patch Set 2 : Changes it to allocate contiguous registers in the inner scope. #

Patch Set 3 : rebased the patch. #

Total comments: 12

Patch Set 4 : Fixed comments from Ross. #

Patch Set 5 : Rebased the patch. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+211 lines, -202 lines) Patch
M src/interpreter/bytecode-generator.cc View 1 2 3 4 8 chunks +37 lines, -38 lines 0 comments Download
M test/cctest/interpreter/test-bytecode-generator.cc View 1 2 3 4 25 chunks +174 lines, -160 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 4 chunks +0 lines, -4 lines 0 comments Download

Messages

Total messages: 36 (18 generated)
mythria
PTAL, Thanks, Mythri https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc#newcode950 src/interpreter/bytecode-generator.cc:950: temporary_register_scope.PrepareForConsecutiveAllocations(5); This increases the number of ...
4 years, 11 months ago (2016-01-14 10:08:56 UTC) #2
rmcilroy
https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc#newcode932 src/interpreter/bytecode-generator.cc:932: Register literal; As discussed offline, let's just always put ...
4 years, 11 months ago (2016-01-14 14:04:23 UTC) #3
mythria
PTAL, Thanks, Mythri https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1588903002/diff/1/src/interpreter/bytecode-generator.cc#newcode932 src/interpreter/bytecode-generator.cc:932: Register literal; On 2016/01/14 14:04:23, rmcilroy ...
4 years, 11 months ago (2016-01-15 16:48:24 UTC) #5
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/40001
4 years, 11 months ago (2016-01-15 16:48:34 UTC) #7
commit-bot: I haz the power
Dry run: No L-G-T-M from a valid reviewer yet. Only full committers are accepted. Even ...
4 years, 11 months ago (2016-01-15 16:48:35 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/40001
4 years, 11 months ago (2016-01-15 16:54:56 UTC) #12
rmcilroy
LGTM, thanks. https://codereview.chromium.org/1588903002/diff/40001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1588903002/diff/40001/src/interpreter/bytecode-generator.cc#newcode968 src/interpreter/bytecode-generator.cc:968: // Allocate in the outer scope since ...
4 years, 11 months ago (2016-01-15 17:15:10 UTC) #13
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-15 17:15:36 UTC) #15
mythria
Thanks for the review. Fixed all comments. https://codereview.chromium.org/1588903002/diff/40001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1588903002/diff/40001/src/interpreter/bytecode-generator.cc#newcode968 src/interpreter/bytecode-generator.cc:968: // Allocate ...
4 years, 11 months ago (2016-01-18 11:34:05 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/60001
4 years, 11 months ago (2016-01-18 11:34:14 UTC) #18
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-18 11:55:44 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/60001
4 years, 11 months ago (2016-01-18 13:31:32 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: v8_presubmit on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_presubmit/builds/9870)
4 years, 11 months ago (2016-01-18 13:33:20 UTC) #25
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/80001
4 years, 11 months ago (2016-01-18 15:53:22 UTC) #27
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-18 16:15:23 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1588903002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1588903002/80001
4 years, 11 months ago (2016-01-18 16:17:23 UTC) #32
commit-bot: I haz the power
Committed patchset #5 (id:80001)
4 years, 11 months ago (2016-01-18 17:18:23 UTC) #34
commit-bot: I haz the power
4 years, 11 months ago (2016-01-18 17:18:59 UTC) #36
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/8ae9fb69c2363a40917364c0a22b7c09cb6dbc3c
Cr-Commit-Position: refs/heads/master@{#33371}

Powered by Google App Engine
This is Rietveld 408576698