- 28 Mar, 2017 1 commit
-
-
Michael Starzinger authored
R=machenbach@chromium.org BUG=v8:6127 Change-Id: I19092232bc0de728ec37fa9188998ec9dbd94bed Reviewed-on: https://chromium-review.googlesource.com/459498 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44170}
-
- 16 Feb, 2017 1 commit
-
-
jgruber authored
@@replace has a pretty complex implementation, taking different paths for various situations (e.g.: global/nonglobal regexp, functional/string replace argument, etc.). Each of these paths must implement similar logic for calling into the RegExpBuiltinExec spec operation, and many paths get this subtly wrong. This CL fixes a couple of issues related to the way @@replace handles lastIndex: * All paths now respect lastIndex when calling into exec (some used to assume 0). * lastIndex is now advanced after a successful match for sticky regexps. * lastIndex is now only reset to 0 on failure for sticky regexps. BUG=v8:5361 Review-Url: https://codereview.chromium.org/2685183003 Cr-Commit-Position: refs/heads/master@{#43234}
-
- 17 Nov, 2016 1 commit
-
-
eholk authored
With this change, WebAssembly.Memory objects have backing stores allocated as an 8GB region where everything beyond the size of the Wasm heap is inaccessible. GrowMemory is now implemented by changing the protection on the guard regions to make the new portions of the heap accessible. Guard pages are not enabled by default, but this change adds a flag and a test variant to make sure we get test coverage on them. BUG= https://bugs.chromium.org/p/v8/issues/detail?id=5277 Review-Url: https://codereview.chromium.org/2396433008 Cr-Commit-Position: refs/heads/master@{#41089}
-
- 07 Oct, 2016 1 commit
-
-
adamk authored
These tests were marked as NO_VARIANTS under debug, but they were timing out under turbofan_opt as well on the CFI bot (see, e.g.: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20cfi/builds/6765). R=machenbach@chromium.org Review-Url: https://codereview.chromium.org/2400463003 Cr-Commit-Position: refs/heads/master@{#40103}
-
- 23 Sep, 2016 1 commit
-
-
bmeurer authored
The source size is not a real indicator for whether or not to inline a certain function. R=ishell@chromium.org, jarin@chromium.org BUG=v8:3354,v8:5267 Committed: https://chromium.googlesource.com/v8/v8/+/1b33028607637ba8cb2d60433811f825b00a0cc1 Review-Url: https://codereview.chromium.org/2361813002 Cr-Commit-Position: refs/heads/master@{#39681}
-
- 19 Sep, 2016 1 commit
-
-
bradnelson authored
BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203 BUG= https://bugs.chromium.org/p/v8/issues/detail?id=5406 LOG=N R=mstarzinger@chromium.org,machenbach@chromium.org Review-Url: https://codereview.chromium.org/2309833003 Cr-Commit-Position: refs/heads/master@{#39521}
-
- 08 Aug, 2016 1 commit
-
-
machenbach authored
This removes the test-download method for all but promises-aplus. They all only contain legacy code for deleting old archives. Only test262 needs to prepare sources on swarming, which is moved to a new method, called unconditionally. All references to --download-data and --download-data-only in the infrastructure can be removed after this. BUG= Review-Url: https://codereview.chromium.org/2227613002 Cr-Commit-Position: refs/heads/master@{#38439}
-
- 10 May, 2016 1 commit
-
-
mstarzinger authored
This implements declaration of lookup slots for variables and functions within optimized code. Such a declaration only appears with top-level eval code, which we only recently started handling in TurboFan. R=jarin@chromium.org Review-Url: https://codereview.chromium.org/1962723002 Cr-Commit-Position: refs/heads/master@{#36125}
-
- 04 May, 2016 1 commit
-
-
mstarzinger authored
This allows for top-level eval code to be parsed properly before doing optimization. It uses the same kind of re-parsing we already perform when compiling code for debugging. R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/1884143003 Cr-Commit-Position: refs/heads/master@{#36014}
-
- 29 Apr, 2016 2 commits
-
-
machenbach authored
This prepares for pulling chromium's build as dependency for gn. After this, the files in build and gypfiles need to stay in sync until chromium is updated. BUG=chromium:474921 LOG=n Review-Url: https://codereview.chromium.org/1848553003 Cr-Commit-Position: refs/heads/master@{#35898}
-
machenbach authored
Revert of Remove more dead code after Object.observe removal (patchset #5 id:80001 of https://codereview.chromium.org/1904313004/ ) Reason for revert: [Sheriff] Looks like this breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/6442 Original issue's description: > Remove more dead code after Object.observe removal > > This moves __{define,lookup}{Getter,Setter}__ to builtins.cc to free up the JavaScript implementation of DefineOwnProperty for deletion. TBR=verwaest@chromium.org,jkummerow@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/1929293002 Cr-Commit-Position: refs/heads/master@{#35886}
-
- 28 Apr, 2016 1 commit
-
-
jkummerow authored
This moves __{define,lookup}{Getter,Setter}__ to builtins.cc to free up the JavaScript implementation of DefineOwnProperty for deletion. Review-Url: https://codereview.chromium.org/1904313004 Cr-Commit-Position: refs/heads/master@{#35876}
-
- 19 Mar, 2016 1 commit
-
-
adamk authored
This revealed one Mozilla test that depended upon a lack of early error for "with ({}) function ...". The test has been marked as failing. R=littledan@chromium.org Review URL: https://codereview.chromium.org/1814863005 Cr-Commit-Position: refs/heads/master@{#34910}
-
- 16 Mar, 2016 1 commit
-
-
machenbach authored
TBR=jkummerow@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1807883002 Cr-Commit-Position: refs/heads/master@{#34815}
-
- 14 Mar, 2016 1 commit
-
-
littledan authored
test262 "negative" test expectations list which exception is thrown. The ES2017 draft specification is very specific about which exception class is thrown from which path, and V8 works hard to be correct with respect to that spec. Previously, the test262 test runner would accept any nonzero status code, such as from a crash, or a FAIL printed out, for a negative test. This patch makes negative tests check for the right answer using a quick-and-dirty parsing of the exception printing from d8 to find the exception class. It invokes d8 in a way to get a status code of 0 from thrown exceptions so that 'negative' tests aren't actually implemented by negating the output. Amazingly, this didn't catch any test262 failures, but I verified the extra checking interactively by changing a negative test to expect a different type and saw it fail. BUG=v8:4803 R=machenbach LOG=Y Review URL: https://codereview.chromium.org/1766503002 Cr-Commit-Position: refs/heads/master@{#34763}
-
- 03 Mar, 2016 1 commit
-
-
littledan authored
ES2015 generally bans FunctionDeclarations in positions which expect a Statement, as opposed to a StatementListItem, such as a FunctionDeclaration which constitutes the body of a for loop. However, Annex B 3.2 and 3.4 make exceptions for labeled function declarations and function declarations as the body of an if statement in sloppy mode, in the latter case specifying that the semantics are as if the function declaration occurred in a block. Chrome has historically permitted further extensions, for the body of any flow control construct. This patch addresses both the syntactic and semantic mismatches between V8 and the spec. For the semantic mismatch, function declarations as the body of if statements change from unconditionally hoisting in certain cases to acquiring the sloppy mode function in block semantics (based on Annex B 3.3). For the extra syntax permitted, this patch adds a flag, --harmony-restrictive-declarations, which excludes disallowed function declaration cases. A new UseCounter, LegacyFunctionDeclaration, is added to count how often function declarations occur as the body of other constructs in sloppy mode. With this patch, the code generally follows the form of the specification with respect to parsing FunctionDeclarations, rather than allowing them in arbitrary Statement positions, and makes it more clear where our extensions occur. BUG=v8:4647 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1757543003 Cr-Commit-Position: refs/heads/master@{#34470}
-
- 11 Jan, 2016 1 commit
-
-
littledan authored
This patch moves the semantics of 'const' in sloppy mode to match those in strict mode, that is, const makes lexical (let-like) bindings, must have an initializer, and does not create properties of the global object. R=adamk LOG=Y BUG=v8:3305 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1571873004 Cr-Commit-Position: refs/heads/master@{#33218}
-
- 08 Jan, 2016 1 commit
-
-
littledan authored
Reland of Ship ES2015 sloppy-mode function hoisting, let, class (patchset #1 id:1 of https://codereview.chromium.org/1565263002/ ) Reason for revert: Crash fixed by https://codereview.chromium.org/1564923007 Original issue's description: > Revert of Ship ES2015 sloppy-mode function hoisting, let, class (patchset #7 id:120001 of https://codereview.chromium.org/1551443002/ ) > > Reason for revert: > Causes frequent crashes in Canary: chromium:537816 > > Original issue's description: > > Ship ES2015 sloppy-mode function hoisting, let, class > > > > This patch doesn't ship all features of ES2015 variable/scoping > > changes, notably omitting the removal of legacy const. I think > > function hoisting, let and class in sloppy mode can stand to > > themselves as a package, and the legacy const change is much > > riskier and more likely to be reverted, so my intention is to > > pursue those as a separate, follow-on patch. > > > > R=adamk@chromium.org > > BUG=v8:4285,v8:3305 > > LOG=Y > > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > > > Committed: https://crrev.com/fcff8588a5a01587643d6c2507c7b882c78a2957 > > Cr-Commit-Position: refs/heads/master@{#33133} > > TBR=adamk@chromium.org > # Not skipping CQ checks because original CL landed more than 1 days ago. > BUG=v8:4285,v8:3305,chromium:537816 > LOG=Y > > Committed: https://crrev.com/adac5956c6216056a211cfaa460a00ac1500d8f8 > Cr-Commit-Position: refs/heads/master@{#33162} TBR=adamk@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4285,v8:3305,chromium:537816 Review URL: https://codereview.chromium.org/1571793002 Cr-Commit-Position: refs/heads/master@{#33189}
-
- 07 Jan, 2016 1 commit
-
-
littledan authored
Revert of Ship ES2015 sloppy-mode function hoisting, let, class (patchset #7 id:120001 of https://codereview.chromium.org/1551443002/ ) Reason for revert: Causes frequent crashes in Canary: chromium:537816 Original issue's description: > Ship ES2015 sloppy-mode function hoisting, let, class > > This patch doesn't ship all features of ES2015 variable/scoping > changes, notably omitting the removal of legacy const. I think > function hoisting, let and class in sloppy mode can stand to > themselves as a package, and the legacy const change is much > riskier and more likely to be reverted, so my intention is to > pursue those as a separate, follow-on patch. > > R=adamk@chromium.org > BUG=v8:4285,v8:3305 > LOG=Y > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/fcff8588a5a01587643d6c2507c7b882c78a2957 > Cr-Commit-Position: refs/heads/master@{#33133} TBR=adamk@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:4285,v8:3305,chromium:537816 LOG=Y Review URL: https://codereview.chromium.org/1565263002 Cr-Commit-Position: refs/heads/master@{#33162}
-
- 06 Jan, 2016 1 commit
-
-
littledan authored
This patch doesn't ship all features of ES2015 variable/scoping changes, notably omitting the removal of legacy const. I think function hoisting, let and class in sloppy mode can stand to themselves as a package, and the legacy const change is much riskier and more likely to be reverted, so my intention is to pursue those as a separate, follow-on patch. R=adamk@chromium.org BUG=v8:4285,v8:3305 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1551443002 Cr-Commit-Position: refs/heads/master@{#33133}
-
- 25 Nov, 2015 1 commit
-
-
adamk authored
Also fix CheckConflictingVarDeclarations() to properly handle legacy const bindings. Without that change enabling the flag causes code like: function f() { const x; var x; } to throw an early error, rather than wait to throw the error until f is invoked. The previous patch ran into problems with the fuzzer; that crash was fixed (with test coverage added) in https://crrev.com/ceb92ebfdfb561d71038793c02b42aa973f55ec4 BUG=v8:811 LOG=y TBR=rossberg@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1473243006 Cr-Commit-Position: refs/heads/master@{#32306}
-
- 24 Nov, 2015 2 commits
-
-
adamk authored
Revert of Move --harmony-destructuring-bind to shipping (patchset #5 id:80001 of https://codereview.chromium.org/1451843002/ ) Reason for revert: Fails on V8 Fuzzer: https://build.chromium.org/p/client.v8/builders/V8%20Fuzzer/builds/6028 Original issue's description: > Move --harmony-destructuring-bind to shipping > > Also fix CheckConflictingVarDeclarations() to properly handle > legacy const bindings. Without that change enabling the flag > causes code like: > > function f() { const x; var x; } > > to throw an early error, rather than wait to throw the error > until f is invoked. > > BUG=v8:811 > LOG=y > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/515093630a4a925a66d550561e38293d49633f10 > Cr-Commit-Position: refs/heads/master@{#32222} TBR=rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:811 Review URL: https://codereview.chromium.org/1470333002 Cr-Commit-Position: refs/heads/master@{#32226}
-
adamk authored
Also fix CheckConflictingVarDeclarations() to properly handle legacy const bindings. Without that change enabling the flag causes code like: function f() { const x; var x; } to throw an early error, rather than wait to throw the error until f is invoked. BUG=v8:811 LOG=y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1451843002 Cr-Commit-Position: refs/heads/master@{#32222}
-
- 17 Nov, 2015 1 commit
-
-
caitpotter88 authored
Per http://tc39.github.io/ecma262/#sec-identifiers-static-semantics-early-errors (13.2.2), make it a SyntaxError if an Identifier has the same StringValue as a ReservedWord. BUG=v8:2222, v8:1972 LOG=N R=adamk@chromium.org, rossberg@chromium.org, wingo@chromium.org Review URL: https://codereview.chromium.org/1429983002 Cr-Commit-Position: refs/heads/master@{#32052}
-
- 09 Nov, 2015 1 commit
-
-
caitpotter88 authored
Remove some non-standard code that doesn't do anything anyways. While FireFox uses this to set the default value for the multiline flag, it is nonstandard and slated for removal. The matching behaviour has never been implemented in either JSC or V8, so there is little web-compat risk. The only possible risk could be someone depending on the ToBoolean() behaviour of the flag, but this seems unlikely. BUG=v8:3870 LOG=N R=adamk@chromium.org, littledan@chromium.org, yangguo@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1417733012 Cr-Commit-Position: refs/heads/master@{#31882}
-
- 05 Nov, 2015 1 commit
-
-
littledan authored
This patch moves ES2015 ToLength semantics on array operations, etc to from staging to shipping. R=adamk BUG=v8:3087 LOG=Y Review URL: https://codereview.chromium.org/1433473003 Cr-Commit-Position: refs/heads/master@{#31810}
-
- 04 Nov, 2015 1 commit
-
-
mstarzinger authored
This removes special casing for the 'f.arguments' property accessor. Any local 'arguments' variable should not be allowed to influence the value returned by the indirect 'f.arguments' property. That property creates a new object with a separate identity everytime it is read. This is by now consistent with other browsers. R=rossberg@chromium.org TEST=mjsunit/arguments-indirect Review URL: https://codereview.chromium.org/1408983006 Cr-Commit-Position: refs/heads/master@{#31776}
-
- 03 Nov, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org TEST=mozilla/js1_5/Regress/regress-343713 Review URL: https://codereview.chromium.org/1424313007 Cr-Commit-Position: refs/heads/master@{#31749}
-
- 30 Oct, 2015 2 commits
-
-
machenbach authored
Revert of Remove RegExp.multiline accessors. (patchset #3 id:40001 of https://codereview.chromium.org/1410993008/ ) Reason for revert: [Sheriff] Causes layout test failures. Original issue's description: > Remove RegExp.multiline accessors. > > This is non-standard and not even documented on MDN. > > On Firefox, setting RegExp.multiline to true adds the multiline flag to all > newly created RegExp objects (both from constructor and from literal). > > In V8 this has no effect. > > Source archaelogy shows that this is from the initial commit. > > R=bmeurer@chromium.org > > Committed: https://crrev.com/e8f752ce0c2a488e88cd87fe75f3907b4303d0a0 > Cr-Commit-Position: refs/heads/master@{#31673} TBR=bmeurer@chromium.org,yangguo@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1431433004 Cr-Commit-Position: refs/heads/master@{#31679}
-
yangguo authored
This is non-standard and not even documented on MDN. On Firefox, setting RegExp.multiline to true adds the multiline flag to all newly created RegExp objects (both from constructor and from literal). In V8 this has no effect. Source archaelogy shows that this is from the initial commit. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1410993008 Cr-Commit-Position: refs/heads/master@{#31673}
-
- 23 Oct, 2015 1 commit
-
-
neis authored
R=rossberg BUG= Review URL: https://codereview.chromium.org/1423753002 Cr-Commit-Position: refs/heads/master@{#31520}
-
- 20 Oct, 2015 3 commits
-
-
Benedikt Meurer authored
Revert "[turbofan] Stage --turbo-inlining behind --turbo flag." and "[turbofan] Skip more tests that fail with --turbo-inlining." This reverts commit 019f9408, 6ed05f44 and e34c343d. TBR=mstarzinger@chromium.org BUG=v8:4493 LOG=n Review URL: https://codereview.chromium.org/1413183004 . Cr-Commit-Position: refs/heads/master@{#31393}
-
Benedikt Meurer authored
TBR=mstarzinger@chromium.org BUG=v8:4493 LOG=n Review URL: https://codereview.chromium.org/1415843002 . Cr-Commit-Position: refs/heads/master@{#31388}
-
mstarzinger authored
This stages the general purpose inlining mechanism in TurboFan and also disables the remaining tests that still fail. We do this to get test coverage early and to avoid regressing inlining as we go along. R=bmeurer@chromium.org BUG=v8:4493 LOG=n Review URL: https://codereview.chromium.org/1412703002 Cr-Commit-Position: refs/heads/master@{#31386}
-
- 19 Oct, 2015 1 commit
-
-
machenbach authored
BUG=chromium:535160 LOG=n NOTRY=true Review URL: https://codereview.chromium.org/1411213002 Cr-Commit-Position: refs/heads/master@{#31370}
-
- 16 Oct, 2015 1 commit
-
-
machenbach authored
BUG=chromium:535160 LOG=n Review URL: https://codereview.chromium.org/1409113002 Cr-Commit-Position: refs/heads/master@{#31336}
-
- 29 Sep, 2015 1 commit
-
-
dusan.m.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1334793004 Cr-Commit-Position: refs/heads/master@{#31011}
-
- 24 Sep, 2015 1 commit
-
-
machenbach authored
NOTRY=true Review URL: https://codereview.chromium.org/1367933002 Cr-Commit-Position: refs/heads/master@{#30906}
-
- 17 Sep, 2015 2 commits
-
-
jkummerow authored
Now run-tests.py understands "suite/foo/bar" with forward slashes for command-line test selection on all test suites on all platforms. Previously, file-based suites like mjsunit also accepted "mjsunit/foo\bar"; that behavior is sacrificed here in favor of unification. For the cctest suite, OTOH, it wasn't possible on Windows to select specific tests at all. Original review: https://codereview.chromium.org/1348653003/ This reverts commit 5f44a910. NOTRY=true Review URL: https://codereview.chromium.org/1356613002 Cr-Commit-Position: refs/heads/master@{#30798}
-
jkummerow authored
Revert of [test] Fix cctest path separators on Windows (patchset #2 id:20001 of https://codereview.chromium.org/1348653003/ ) Reason for revert: mozilla tests are failing on Windows Original issue's description: > [test] Fix cctest path separators on Windows > > Now run-tests.py understands "suite/foo/bar" with forward slashes for > command-line test selection on all test suites on all platforms. > > Previously, file-based suites like mjsunit also accepted "mjsunit/foo\bar"; > that behavior is sacrificed here in favor of unification. For the cctest > suite, OTOH, it wasn't possible on Windows to select specific tests at all. > > Committed: https://crrev.com/b36cfdb39ae648b49a1396c4f669df9b1f57996c > Cr-Commit-Position: refs/heads/master@{#30794} TBR=machenbach@google.com,machenbach@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1349163002 Cr-Commit-Position: refs/heads/master@{#30795}
-