- 11 Aug, 2015 1 commit
-
-
mstarzinger authored
This is the first step of turning the v8.h file into a normal header instead of an include-the-world header. The new rule is that no other header files are allowed to include v8.h, which is enforced by DEPS. Also the number of includes inside the v8.h file has been drastically reduced. Basically the last missing piece is the inclusion of the big objects-inl.h file. This in turn makes many headers follow the IWYU principle. R=bmeurer@chromium.org,hpayer@chromium.org,titzer@chromium.org Review URL: https://codereview.chromium.org/1282503003 Cr-Commit-Position: refs/heads/master@{#30102}
-
- 07 Aug, 2015 1 commit
-
-
rossberg authored
Fixes the use of eval calls in strict parameter lists in particular. R=adamk@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1276273002 Cr-Commit-Position: refs/heads/master@{#30074}
-
- 05 Aug, 2015 4 commits
-
-
adamk authored
It was shipped in V8 4.4. Review URL: https://codereview.chromium.org/1273543002 Cr-Commit-Position: refs/heads/master@{#30038}
-
adamk authored
It was shipped in V8 4.4. Review URL: https://codereview.chromium.org/1271073002 Cr-Commit-Position: refs/heads/master@{#30035}
-
adamk authored
These flags weren't doing any real work, since the decision of whether some source code is a script or module is made outside the parser (currently, by the V8 API). The only behavior change in this patch is to always parse 'import' and 'export' as their Token values, which changes the error message from "Unexpected reserved word" to "Unexpected token import" (which doesn't seem particularly harmful). Review URL: https://codereview.chromium.org/1262913003 Cr-Commit-Position: refs/heads/master@{#30034}
-
rossberg authored
Previously, examples like (({a = x}, x) => {})({}, 0) did not throw a ReferenceError like they should. This CL - Splits up DeclareFormalParameters such that the formals can be recorded first and declared later. - Declaration then takes the complete parameter list into account. If it is not simple, temporaries are introduced for all parameters. - BuildParameterInitializationBlock desugars all parameters from non-simple lists into let-bindings. - Refactored Pre/ParserFormalParameters, so that the arity information is no longer duplicated in Parser. - Rest is currently handled specially, until rest-via-destructuring has landed. R=adamk@chromium.org, littledan@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1259283002 Cr-Commit-Position: refs/heads/master@{#30025}
-
- 04 Aug, 2015 1 commit
-
-
rossberg authored
Store arity in FormalParameters; store name (instead of var) and is_rest flag in individual parameters. Ensure that the arity is always maintained consistently. This is preparation for more parameter destructuring adjustments. In particular, a follow-up CL will separate parameter recording from declaring the variables. R=adamk@chromium.org, littledan@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1259013003 Cr-Commit-Position: refs/heads/master@{#30002}
-
- 03 Aug, 2015 1 commit
-
-
yangguo authored
Otherwise we may choose sloppy const or strict const depending on whether the function is parsed the first time. R=mvstanton@chromium.org BUG=v8:4336 LOG=N Review URL: https://codereview.chromium.org/1260053004 Cr-Commit-Position: refs/heads/master@{#29966}
-
- 25 Jul, 2015 1 commit
-
-
littledan authored
--harmony_sloppy includes behavior to turn on sloppy mode lexical bindings. Before this patch, it also included a way to parse let which is likely web-incompatible (let is disallowed as an identifier). This patch splits off the let parsing from the more general block scoping code, so that block scoping can be developed independently. R=adamk LOG=N BUG=v8:3305 Review URL: https://codereview.chromium.org/1255013002 Cr-Commit-Position: refs/heads/master@{#29855}
-
- 23 Jul, 2015 2 commits
-
-
rossberg authored
In particular, rename FormalParameterParsingState and friends to FormalParameters etc. This should not change any logic, but is a preparatory CL for a bunch of follow-up fixes and clean-ups. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1247443004 Cr-Commit-Position: refs/heads/master@{#29807}
-
rossberg authored
R=adamk@chromium.org BUG=v8:3330 LOG=N Review URL: https://codereview.chromium.org/1244423003 Cr-Commit-Position: refs/heads/master@{#29803}
-
- 16 Jul, 2015 1 commit
-
-
mstarzinger authored
This makes the implicit initializing assignment to 'this' performed after a super constructor call explicit in the AST. It removes the need to handle the special case where a CallExpression behaves like a AssignmentExpression from various AstVisitor implementations. R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1226123010 Cr-Commit-Position: refs/heads/master@{#29705}
-
- 15 Jul, 2015 2 commits
-
-
adamk authored
During parsing, we now keep track of the first spread seen in an array literal (if any), and make use of that information when creating the FixedArray backing store representing the constant elements for array literal materialization. The old code tried to do this by setting the generated JSArray's length in ArrayLiteral::BuildConstantElements(), but that Array length is never read by the rest of the literal materialization code (it always uses the length of the FixedArray backing store). BUG=v8:4298 LOG=n Review URL: https://codereview.chromium.org/1225223004 Cr-Commit-Position: refs/heads/master@{#29684}
-
mvstanton authored
A sloppy mode eval call that establishes strict mode will leak that strictness into the sloppy surrounding scope on recompile. This changes the structure of the type feedback vector for the function and crashes follow. The fix is straightforward. BUG=491536, 503565 LOG=N Review URL: https://codereview.chromium.org/1231343003 Cr-Commit-Position: refs/heads/master@{#29671}
-
- 14 Jul, 2015 1 commit
-
-
littledan authored
For destructuring bind, the parser needs to complain about things which are inappropriate to have on the left-hand side. Previously, regexp literals and template literals were let through the parser inappropriately. This patch turns those into errors. This patch also fixes off-by-one errors in reporting the location of this type of error for strings and numbers. Before the patch, the error would look like: d8> var {x: 3} = {x: 4} (d8):1: SyntaxError: Unexpected number var {x: 3} = {x: 4} ^ SyntaxError: Unexpected number And with the patch, the error is d8> var {x: 3} = {x: 4} (d8):1: SyntaxError: Unexpected number var {x: 3} = {x: 4} ^ SyntaxError: Unexpected number R=rossberg Review URL: https://codereview.chromium.org/1236803003 Cr-Commit-Position: refs/heads/master@{#29661}
-
- 10 Jul, 2015 1 commit
-
-
arv authored
We have to call CheckConflictingVarDeclarations in case we have enabled --harmony-sloppy BUG=v8:4287 LOG=N R=littledan@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1226103002 Cr-Commit-Position: refs/heads/master@{#29578}
-
- 09 Jul, 2015 1 commit
-
-
adamk authored
When running without a snapshot, the GlobalEval function gets lazy compiled. By the time we compile it, its name is "eval", which causes the parser to choke (functions named "eval" aren't allowed in strict mode!). Instead, we now always skip checking the function name when lazy-parsing, as the name has already been checked appropriately by the preparser. Also cleaned up other cases that don't require name checking by introducing FunctionNameValidity enum and passing appropriate values throughout the parser and preparser. This lets us pass an additional 18 test262 tests. BUG=v8:4198 LOG=n Review URL: https://codereview.chromium.org/1227093005 Cr-Commit-Position: refs/heads/master@{#29559}
-
- 08 Jul, 2015 1 commit
-
-
arv authored
Allow let in sloppy mode with --harmony-sloppy Allow ES'15 const in sloppy mode with --harmony-sloppy --no-legacy-const Functions in block are not done yet. They are only let bound in the block at this point. BUG=v8:3305, v8:2198 LOG=N R=littledan@chromium.org, rossberg@chromium.org, adamk@chromium.org Review URL: https://codereview.chromium.org/1219853004 Cr-Commit-Position: refs/heads/master@{#29536}
-
- 07 Jul, 2015 1 commit
-
-
arv authored
This flag is on by default but it will allow us to turn that off in favor of harmony-sloppy in the future. BUG=v8:3305, v8:2198 LOG=N R=littledan@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1218803006 Cr-Commit-Position: refs/heads/master@{#29526}
-
- 29 Jun, 2015 1 commit
-
-
yangguo authored
Only this way we can precisely determine how to allocate let variables inside the scope. R=rossberg@chromium.org BUG=v8:4255 LOG=N Review URL: https://codereview.chromium.org/1216013002 Cr-Commit-Position: refs/heads/master@{#29354}
-
- 26 Jun, 2015 3 commits
-
-
dslomov authored
R=wingo@igalia.com BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1212473002 Cr-Commit-Position: refs/heads/master@{#29337}
-
arv authored
Move class tests to es6 directory BUG=v8:3330 LOG=N R=adamk Review URL: https://codereview.chromium.org/1213813003 Cr-Commit-Position: refs/heads/master@{#29336}
-
arv authored
And move tests to es6 directory BUG=v8:3516 LOG=N R=adamk@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1218473003 Cr-Commit-Position: refs/heads/master@{#29334}
-
- 25 Jun, 2015 1 commit
-
-
wingo authored
BUG=v8:4213 R=arv@chromium.org LOG=N Review URL: https://codereview.chromium.org/1210003003 Cr-Commit-Position: refs/heads/master@{#29299}
-
- 24 Jun, 2015 1 commit
-
-
wingo authored
Some tokens need special messages because their token corresponds to many names. R=arv@chromium.org BUG=v8:4213 LOG=N Review URL: https://codereview.chromium.org/1207743004 Cr-Commit-Position: refs/heads/master@{#29262}
-
- 22 Jun, 2015 3 commits
-
-
dslomov authored
Scoping for initializers is yet incorrect. Defaults are not supported. R=arv@chromium.org,rossberg@chromium.org BUG=v8:811 LOG=N Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70 Cr-Commit-Position: refs/heads/master@{#29184} Review URL: https://codereview.chromium.org/1189743003 Cr-Commit-Position: refs/heads/master@{#29192}
-
machenbach authored
Revert of [destructuring] Implement parameter pattern matching. (patchset #7 id:120001 of https://codereview.chromium.org/1189743003/) Reason for revert: [Sheriff] Breaks tsan: http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/4392 Original issue's description: > [destructuring] Implement parameter pattern matching. > > Scoping for initializers is yet incorrect. Defaults are not supported. > > R=arv@chromium.org,rossberg@chromium.org > BUG=v8:811 > LOG=N > > Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70 > Cr-Commit-Position: refs/heads/master@{#29184} TBR=arv@chromium.org,rossberg@chromium.org,caitpotter88@gmail.com,wingo@igalia.com,dslomov@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:811 Review URL: https://codereview.chromium.org/1195163007 Cr-Commit-Position: refs/heads/master@{#29188}
-
dslomov authored
Scoping for initializers is yet incorrect. Defaults are not supported. R=arv@chromium.org,rossberg@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1189743003 Cr-Commit-Position: refs/heads/master@{#29184}
-
- 19 Jun, 2015 1 commit
-
-
wingo authored
R=rossberg@chromium.org BUG=v8:4194 LOG=N Review URL: https://codereview.chromium.org/1191303002 Cr-Commit-Position: refs/heads/master@{#29153}
-
- 16 Jun, 2015 1 commit
-
-
caitpotter88 authored
BUG=v8:4183 R=arv@chromium.org, rossberg@chromium.org LOG=N Review URL: https://codereview.chromium.org/1184373002 Cr-Commit-Position: refs/heads/master@{#29055}
-
- 15 Jun, 2015 2 commits
-
-
dslomov authored
R=arv@chromium.org,wingo@igalia.com,caitpotter88@gmail.com LOG=N BUG=v8:811 Review URL: https://codereview.chromium.org/1167393005 Cr-Commit-Position: refs/heads/master@{#29029}
-
rossberg authored
R=arv@chromium.org, conradw@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1180943007 Cr-Commit-Position: refs/heads/master@{#29026}
-
- 10 Jun, 2015 1 commit
-
-
wingo authored
R=dslomov@chromium.org, rossberg@chromium.org LOG=Y BUG=v8:2700 Review URL: https://codereview.chromium.org/1178523002 Cr-Commit-Position: refs/heads/master@{#28908}
-
- 09 Jun, 2015 5 commits
-
-
dslomov authored
Pushed the detection logic down to ParseAndClassifyIdentifier in preparation to having patterns in parameter positions. R=arv@chromium.org,rossberg@chromium.org,wingo@igalia.com BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1170153003 Cr-Commit-Position: refs/heads/master@{#28876}
-
wingo authored
The following changeset introduced a regression on CodeLoad of about 3%: https://chromium.googlesource.com/v8/v8/+/e73594c7fb3e6b5834b7ddfe78727fb994bab25f This CL should reduce the regression to 1.5%. R=dslomov@chromium.org LOG=N BUG= Review URL: https://codereview.chromium.org/1163323006 Cr-Commit-Position: refs/heads/master@{#28872}
-
arv authored
Revert of Revert of [es6] Parsing of new.target (patchset #1 id:1 of https://codereview.chromium.org/1170263002/) Reason for revert: The bot needs to be clobbered. Original issue's description: > Revert of [es6] Parsing of new.target (patchset #2 id:20001 of https://codereview.chromium.org/1169853002/) > > Reason for revert: > [Sheriff] fails messages: > http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20custom%20snapshot%20-%20debug/builds/1703 > > Original issue's description: > > [es6] Parsing of new.target > > > > BUG=v8:3887 > > LOG=N > > R=adamk@chromium.org, dslomov@chromium.org > > > > Committed: https://crrev.com/ae06bdde7763d673b39948b710df414217265cce > > Cr-Commit-Position: refs/heads/master@{#28865} > > TBR=adamk@chromium.org,dslomov@chromium.org,arv@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:3887 > > Committed: https://crrev.com/fe97cfccf3faabbeff87b9b5fbacd7ceb8219304 > Cr-Commit-Position: refs/heads/master@{#28868} TBR=adamk@chromium.org,dslomov@chromium.org,machenbach@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3887 Review URL: https://codereview.chromium.org/1168393008 Cr-Commit-Position: refs/heads/master@{#28870}
-
machenbach authored
Revert of [es6] Parsing of new.target (patchset #2 id:20001 of https://codereview.chromium.org/1169853002/) Reason for revert: [Sheriff] fails messages: http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20custom%20snapshot%20-%20debug/builds/1703 Original issue's description: > [es6] Parsing of new.target > > BUG=v8:3887 > LOG=N > R=adamk@chromium.org, dslomov@chromium.org > > Committed: https://crrev.com/ae06bdde7763d673b39948b710df414217265cce > Cr-Commit-Position: refs/heads/master@{#28865} TBR=adamk@chromium.org,dslomov@chromium.org,arv@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3887 Review URL: https://codereview.chromium.org/1170263002 Cr-Commit-Position: refs/heads/master@{#28868}
-
arv authored
BUG=v8:3887 LOG=N R=adamk@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/1169853002 Cr-Commit-Position: refs/heads/master@{#28865}
-
- 08 Jun, 2015 1 commit
-
-
mstarzinger authored
These values were computed by the parser and hence out of sync with any visitor over the AST. Our AST visitor aborts visitation of statement lists as soon as a jump statement has been reached. Now handler tables are guaranteed to be dense and fully populated. R=ishell@chromium.org TEST=mjsunit/regress/regress-crbug-493290 BUG=chromium:493290 LOG=N Review URL: https://codereview.chromium.org/1157213004 Cr-Commit-Position: refs/heads/master@{#28846}
-
- 04 Jun, 2015 1 commit
-
-
arv authored
We used to only store the uses_super_property in the preparse data logger. Let the logger use NeedsHomeObject instead. BUG=v8:3768 LOG=N R=wingo, adamk Review URL: https://codereview.chromium.org/1164073003 Cr-Commit-Position: refs/heads/master@{#28806}
-