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

Issue 335293004: New try: Parser: Delay internalizing strings and values (Closed)

Created:
6 years, 6 months ago by marja
Modified:
6 years, 6 months ago
Reviewers:
rossberg
CC:
v8-dev, Paweł Hajdan Jr.
Visibility:
Public.

Description

New try: Parser: Delay internalizing strings and values This is a reincarnation of r21841. The previous try was https://codereview.chromium.org/314603004/ but it regressed JSBench and morejs. BUG= R=rossberg@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=21972

Patch Set 1 : This is just the revert (fixes will be separate patch sets on top) #

Patch Set 2 : cons string fix (don't create so long strings) #

Patch Set 3 : variable renaming + passing const & #

Total comments: 4

Patch Set 4 : don't hash twice (more an elegancy fix than efficiency fix) #

Patch Set 5 : efficiency fix: create string constants on demand #

Total comments: 6

Patch Set 6 : rebased (trivial) #

Patch Set 7 : code review (rossberg@) #

Patch Set 8 : More code review (rossberg@) #

Total comments: 2

Patch Set 9 : Code review (rossberg@) #

Patch Set 10 : a trivial fix for a silly bug. #

Patch Set 11 : rebased (trivial) #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1580 lines, -631 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M include/v8.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M src/ast.h View 1 2 3 4 5 6 7 8 45 chunks +159 lines, -81 lines 0 comments Download
M src/ast.cc View 1 2 3 4 5 6 7 8 7 chunks +14 lines, -20 lines 0 comments Download
A src/ast-value-factory.h View 1 2 3 4 5 6 7 8 1 chunk +340 lines, -0 lines 0 comments Download
A src/ast-value-factory.cc View 1 2 3 4 5 6 7 8 9 1 chunk +409 lines, -0 lines 0 comments Download
M src/compiler.h View 3 chunks +11 lines, -0 lines 0 comments Download
M src/compiler.cc View 1 2 3 4 5 6 7 8 5 chunks +13 lines, -4 lines 0 comments Download
M src/func-name-inferrer.h View 1 2 3 4 5 6 7 8 4 chunks +13 lines, -11 lines 0 comments Download
M src/func-name-inferrer.cc View 1 2 3 4 5 6 7 8 4 chunks +20 lines, -23 lines 0 comments Download
M src/heap.h View 1 2 3 4 5 3 chunks +0 lines, -12 lines 0 comments Download
M src/hydrogen.cc View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M src/interface.h View 1 2 3 4 5 6 7 8 4 chunks +7 lines, -5 lines 0 comments Download
M src/interface.cc View 1 2 3 4 5 6 7 8 4 chunks +9 lines, -15 lines 0 comments Download
M src/objects.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +2 lines, -39 lines 0 comments Download
M src/parser.h View 1 2 3 4 5 6 7 8 15 chunks +67 lines, -56 lines 0 comments Download
M src/parser.cc View 1 2 3 4 5 6 7 8 106 chunks +255 lines, -227 lines 0 comments Download
M src/preparser.h View 1 2 3 4 5 12 chunks +20 lines, -16 lines 0 comments Download
M src/prettyprinter.h View 1 2 3 4 5 6 7 8 2 chunks +3 lines, -2 lines 0 comments Download
M src/prettyprinter.cc View 1 2 3 4 5 6 7 8 6 chunks +10 lines, -4 lines 0 comments Download
M src/rewriter.cc View 3 chunks +8 lines, -4 lines 0 comments Download
M src/scanner.h View 1 2 3 4 5 6 7 8 2 chunks +4 lines, -3 lines 0 comments Download
M src/scanner.cc View 1 2 3 4 5 6 7 8 2 chunks +9 lines, -15 lines 0 comments Download
M src/scopeinfo.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/scopes.h View 1 2 3 4 5 6 7 8 13 chunks +25 lines, -19 lines 0 comments Download
M src/scopes.cc View 1 2 3 4 5 6 7 8 36 chunks +78 lines, -64 lines 0 comments Download
M src/utils.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +30 lines, -0 lines 0 comments Download
M src/utils.cc View 1 chunk +20 lines, -0 lines 0 comments Download
M src/variables.h View 1 2 3 4 5 6 7 8 4 chunks +5 lines, -3 lines 0 comments Download
M src/variables.cc View 1 2 3 4 5 6 7 8 2 chunks +1 line, -3 lines 0 comments Download
M test/cctest/test-ast.cc View 1 chunk +1 line, -1 line 0 comments Download
M test/cctest/test-parsing.cc View 1 2 3 4 5 6 7 3 chunks +23 lines, -1 line 0 comments Download
M tools/gyp/v8.gyp View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M tools/parser-shell.cc View 2 chunks +15 lines, -1 line 0 comments Download

Messages

Total messages: 13 (0 generated)
marja
rossberg@, ptal Here's a new try of https://codereview.chromium.org/314603004 (I reverted the previous try). For your ...
6 years, 6 months ago (2014-06-20 08:41:24 UTC) #1
marja
Additional fix (patch set 4) - Don't hash strings twice, and get rid of the ...
6 years, 6 months ago (2014-06-20 14:11:46 UTC) #2
marja
And the final efficiency fix: - Create the string constants on demand. This is important, ...
6 years, 6 months ago (2014-06-20 14:57:38 UTC) #3
rossberg
Great work, I like it. Some comments, though. https://codereview.chromium.org/335293004/diff/80001/src/ast-value-factory.h File src/ast-value-factory.h (right): https://codereview.chromium.org/335293004/diff/80001/src/ast-value-factory.h#newcode281 src/ast-value-factory.h:281: const ...
6 years, 6 months ago (2014-06-23 09:44:27 UTC) #4
marja
Thanks for comments! One additional fix: I made AstString ctors private, since they're only meant ...
6 years, 6 months ago (2014-06-23 11:46:45 UTC) #5
marja
https://codereview.chromium.org/335293004/diff/130035/test/cctest/test-parsing.cc File test/cctest/test-parsing.cc (right): https://codereview.chromium.org/335293004/diff/130035/test/cctest/test-parsing.cc#newcode801 test/cctest/test-parsing.cc:801: i::AstValueFactory ast_value_factory(&zone, 0); On 2014/06/23 11:46:45, marja wrote: > ...
6 years, 6 months ago (2014-06-23 12:16:18 UTC) #6
rossberg
Thanks, like it, though I'm not so sure about the naming... https://codereview.chromium.org/335293004/diff/80001/src/ast-value-factory.h File src/ast-value-factory.h (right): ...
6 years, 6 months ago (2014-06-23 13:30:53 UTC) #7
marja
The only changes in the patch set: - Renaming: AstString -> AstRawString, AstStringBase->AstString - clang-formatting ...
6 years, 6 months ago (2014-06-23 14:56:42 UTC) #8
rossberg
LGTM, up to the one comment below that you probably missed. :) https://codereview.chromium.org/335293004/diff/230001/src/ast-value-factory.cc File src/ast-value-factory.cc ...
6 years, 6 months ago (2014-06-23 15:02:32 UTC) #9
marja
On 2014/06/23 15:02:32, rossberg wrote: > LGTM, up to the one comment below that you ...
6 years, 6 months ago (2014-06-23 15:29:42 UTC) #10
danno
On 2014/06/23 15:29:42, marja wrote: > On 2014/06/23 15:02:32, rossberg wrote: > > LGTM, up ...
6 years, 6 months ago (2014-06-23 16:08:49 UTC) #11
marja
Committed patchset #11 manually as r21972 (presubmit successful).
6 years, 6 months ago (2014-06-24 14:04:48 UTC) #12
marja
6 years, 6 months ago (2014-06-24 14:08:12 UTC) #13
Message was sent while issue was closed.
The committed patch set contains a trivial fix in
AstRawStringInternalizationKey. rossberg@, you don't necessarily need to have a
look at it, unless you want to see how silly code I wrote.

Powered by Google App Engine
This is Rietveld 408576698