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

Issue 1321993004: Vector ICs: ObjectLiteral refactoring for Oracle feedback (Closed)

Created:
5 years, 3 months ago by mvstanton
Modified:
5 years, 3 months ago
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Vector ICs: The Oracle needs to report feedback for the object literals and the count operation. The refactoring is because it's awkward and error-prone to deterimine which IC slot an ObjectLiteralProperty uses for feedback. The fix is for each one to know it's own slot. In the numbering pass, we allocate slots for the ObjectLiteral, then hand out those slots into the properties. It adds one word to the ObjectLiteralProperty expression - I'm investigating if thats a problem. This changes makes compiling the object literal cleaner across the three compilers. Also, the slot allocation logic in ObjectLiteral::ComputeFeedbackRequirements() was refactoring to mimic the style in full-codegen. This is useful since it must remain in sync with FullCodegen::VisitObjectLiteral(). Committed: https://crrev.com/752b0308df72461bfeb644bf6dd8dd331fcdb722 Cr-Commit-Position: refs/heads/master@{#30686}

Patch Set 1 #

Patch Set 2 : REBASE. #

Patch Set 3 : ObjectLiteral refactorin. #

Total comments: 7

Patch Set 4 : Comments. #

Total comments: 8

Patch Set 5 : Comments and ports. #

Patch Set 6 : Webkit test found a bug with renumbering. #

Patch Set 7 : One more small fix. #

Patch Set 8 : REBASE, turned off flag. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+482 lines, -440 lines) Patch
M src/ast.h View 1 2 3 4 5 9 chunks +45 lines, -38 lines 0 comments Download
M src/ast.cc View 1 2 3 4 5 4 chunks +86 lines, -52 lines 0 comments Download
M src/ast-numbering.cc View 1 2 3 4 5 6 7 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/ast-graph-builder.h View 1 2 3 2 chunks +7 lines, -2 lines 0 comments Download
M src/compiler/ast-graph-builder.cc View 1 2 3 4 5 6 7 11 chunks +29 lines, -40 lines 0 comments Download
M src/full-codegen/arm/full-codegen-arm.cc View 1 2 3 4 5 6 7 12 chunks +45 lines, -46 lines 0 comments Download
M src/full-codegen/arm64/full-codegen-arm64.cc View 1 2 3 4 5 6 7 12 chunks +43 lines, -45 lines 0 comments Download
M src/full-codegen/full-codegen.h View 1 2 3 4 5 6 7 3 chunks +7 lines, -5 lines 0 comments Download
M src/full-codegen/full-codegen.cc View 1 2 1 chunk +2 lines, -12 lines 0 comments Download
M src/full-codegen/ia32/full-codegen-ia32.cc View 1 2 3 4 5 6 7 11 chunks +44 lines, -48 lines 0 comments Download
M src/full-codegen/mips/full-codegen-mips.cc View 1 2 3 4 5 6 7 13 chunks +46 lines, -47 lines 0 comments Download
M src/full-codegen/mips64/full-codegen-mips64.cc View 1 2 3 4 5 6 7 12 chunks +45 lines, -46 lines 0 comments Download
M src/full-codegen/x64/full-codegen-x64.cc View 1 2 3 4 5 6 7 12 chunks +45 lines, -46 lines 0 comments Download
M src/hydrogen.cc View 1 2 3 4 5 6 7 4 chunks +2 lines, -7 lines 0 comments Download
M src/type-info.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M src/type-info.cc View 1 2 3 chunks +18 lines, -3 lines 0 comments Download
M src/typing.cc View 1 2 2 chunks +14 lines, -3 lines 0 comments Download

Messages

Total messages: 12 (4 generated)
Michael Starzinger
Conceptually I like this change, if memory footprint is acceptable. https://codereview.chromium.org/1321993004/diff/40001/src/ast.h File src/ast.h (right): https://codereview.chromium.org/1321993004/diff/40001/src/ast.h#newcode1429 ...
5 years, 3 months ago (2015-09-07 08:31:13 UTC) #2
mvstanton
Hi Michi, hi Jakob, PTAL. Jakob - General Michi - Turbofan Thanks, --Michael
5 years, 3 months ago (2015-09-07 09:59:47 UTC) #4
Michael Starzinger
LGTM on TurboFan, only nits, didn't look at the rest. https://codereview.chromium.org/1321993004/diff/60001/src/ast.h File src/ast.h (right): https://codereview.chromium.org/1321993004/diff/60001/src/ast.h#newcode1510 ...
5 years, 3 months ago (2015-09-07 11:11:51 UTC) #5
mvstanton
Hi guys, Addressed Michi's comments, did ports, fixed a bug. Thanks much, --Michael https://codereview.chromium.org/1321993004/diff/40001/src/ast.h File ...
5 years, 3 months ago (2015-09-07 13:36:10 UTC) #6
Jakob Kummerow
lgtm
5 years, 3 months ago (2015-09-07 14:09:02 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1321993004/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1321993004/140001
5 years, 3 months ago (2015-09-10 14:36:54 UTC) #10
commit-bot: I haz the power
Committed patchset #8 (id:140001)
5 years, 3 months ago (2015-09-10 15:02:27 UTC) #11
commit-bot: I haz the power
5 years, 3 months ago (2015-09-10 15:02:46 UTC) #12
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/752b0308df72461bfeb644bf6dd8dd331fcdb722
Cr-Commit-Position: refs/heads/master@{#30686}

Powered by Google App Engine
This is Rietveld 408576698