- 24 Jun, 2016 1 commit
-
-
adamk authored
Flags removed (all begin with "harmony-"): function-name instanceof iterator-close unicode-regexps regexp-exec regexp-subclass species BUG=v8:3566, v8:3648, v8:3699, v8:4093, v8:4447, v8:4602 Review-Url: https://codereview.chromium.org/2096933002 Cr-Commit-Position: refs/heads/master@{#37235}
-
- 21 Jun, 2016 1 commit
-
-
zhengxing.li authored
BUG= Review-Url: https://codereview.chromium.org/2080693002 Cr-Commit-Position: refs/heads/master@{#37119}
-
- 31 May, 2016 2 commits
-
-
littledan authored
Async functions are built out of generators, but the SharedFunctionInfo returns false for is_generator. is_resumable is the broader query. This patch fixes many parts of V8 to refer to is_resumable as appropriate. One incidental change is to remove a check for generators extending classes. This is part of a general check for constructors being the only thing which can extend classes, so it is removed here and the error message for the general case is made more accurate. BUG=v8:4483 Review-Url: https://codereview.chromium.org/1996943002 Cr-Commit-Position: refs/heads/master@{#36621}
-
yangguo authored
R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2026643003 Cr-Commit-Position: refs/heads/master@{#36610}
-
- 27 May, 2016 1 commit
-
-
littledan authored
We now have data that 0.011% of websites use the pattern for (var i = 0 in j) { ... } This pattern was banned by ES2015, with the idea to revisit if it presents a web compatibility problem. Informally, after the May 2016 TC39 meeting, the new data was discussed, and there was interest in reversing the decision. Although the specification is not yet updated, it seems likely to come soon. This patch turns off the flag which bans that construct, reenabling it. The change should prevent websites from breaking. BUG=v8:4942 Review-Url: https://codereview.chromium.org/2011223003 Cr-Commit-Position: refs/heads/master@{#36562}
-
- 11 May, 2016 1 commit
-
-
rmcilroy authored
The previous approach taken by FastNew[Sloppy,Strict,Rest]ArgumentsStub looked at the function slot in order to skip stub frames and find the JS frame. However, stub frames do not have a function slot (in fact their fixed frame ends one slot before the JS frame's function slot). Therefore, if this location in the stub frame happens to have the function object the create arguments stubs won't skip this frame correctly. Replace this approach with one where the stub is specialized to either skip a frame if required (since there will only ever be one extra frame on Ignition the loop approach isn't necessary). BUG=v8:4928 LOG=N CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_dbg Review-Url: https://codereview.chromium.org/1949023003 Cr-Commit-Position: refs/heads/master@{#36181}
-
- 02 May, 2016 2 commits
-
-
machenbach authored
BUG=v8:4280 LOG=N TBR=rmcilroy@chromium.org, rmcilroy@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/1934283002 Cr-Commit-Position: refs/heads/master@{#35931}
-
machenbach authored
This adds ignition to the testing variants that are run on all bots. Failing tests can only be skipped with the NO_IGNITION keyword in status files. Existing expectations for the ignition_turbofan variant are all duplicated and use the NO_IGNITION keyword as well now. BUG=v8:4280 LOG=N Committed: https://crrev.com/132c09ed619f23fb7c6d26a4e3552c703389eabd Cr-Commit-Position: refs/heads/master@{#35865} Review-Url: https://codereview.chromium.org/1804003002 Cr-Commit-Position: refs/heads/master@{#35926}
-
- 29 Apr, 2016 1 commit
-
-
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}
-
- 28 Apr, 2016 3 commits
-
-
machenbach authored
Revert of [Ignition] Test ignition on all bots. (patchset #4 id:60001 of https://codereview.chromium.org/1804003002/ ) Reason for revert: Will resubmit with proper fix and more test skips. Original issue's description: > [Ignition] Test ignition on all bots. > > This adds ignition to the testing variants that are run on all > bots. > > Failing tests can only be skipped with the NO_IGNITION > keyword in status files. Existing expectations for the > ignition_turbofan variant are all duplicated and use the > NO_IGNITION keyword as well now. > > BUG=v8:4280 > LOG=N > NOTRY=true TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,yangguo@chromium.org,mythria@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4280 Review-Url: https://codereview.chromium.org/1930943002 Cr-Commit-Position: refs/heads/master@{#35871}
-
rossberg authored
R=hablich@chromium.org BUG=v8:4942 LOG=true Review-Url: https://codereview.chromium.org/1928513004 Cr-Commit-Position: refs/heads/master@{#35868}
-
machenbach authored
This adds ignition to the testing variants that are run on all bots. Failing tests can only be skipped with the NO_IGNITION keyword in status files. Existing expectations for the ignition_turbofan variant are all duplicated and use the NO_IGNITION keyword as well now. BUG=v8:4280 LOG=N NOTRY=true Review-Url: https://codereview.chromium.org/1804003002 Cr-Commit-Position: refs/heads/master@{#35865}
-
- 26 Apr, 2016 1 commit
-
-
machenbach authored
This adds a new ignition_turbofan testing variant that'll allow switching turbofan off in the other ignition variant. The switch will happen in a follow up after reconfiguring the bots. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1922623003 Cr-Commit-Position: refs/heads/master@{#35790}
-
- 21 Apr, 2016 2 commits
-
-
mstarzinger authored
R=machenbach@chromium.org Review URL: https://codereview.chromium.org/1908503003 Cr-Commit-Position: refs/heads/master@{#35710}
-
machenbach authored
BUG=v8:4928 LOG=n NOTRY=true Review URL: https://codereview.chromium.org/1903043006 Cr-Commit-Position: refs/heads/master@{#35688}
-
- 08 Apr, 2016 2 commits
-
-
machenbach authored
TBR=jyan@ca.ibm.com NOTRY=true Review URL: https://codereview.chromium.org/1871893002 Cr-Commit-Position: refs/heads/master@{#35361}
-
adamk authored
These were all on by default in M49 without complaint. R=littledan@chromium.org Review URL: https://codereview.chromium.org/1858943002 Cr-Commit-Position: refs/heads/master@{#35342}
-
- 04 Apr, 2016 1 commit
-
-
littledan authored
- RegExp.prototype.toString() doesn't have any special handling of RegExp instances and simply calls the source and flags getters - Use the original values of global and sticky, rather than based on the current flag getters, as specified in https://github.com/tc39/ecma262/pull/494 R=yangguo@chromium.org,adamk LOG=Y BUG=v8:4602 Review URL: https://codereview.chromium.org/1846303002 Cr-Commit-Position: refs/heads/master@{#35225}
-
- 01 Apr, 2016 1 commit
-
-
littledan authored
Revert of Remove RegExp.prototype.source getter compat workaround (patchset #2 id:20001 of https://codereview.chromium.org/1837843002/ ) Reason for revert: TC39 decided that this compatibility fix should be standardized. Original issue's description: > Remove RegExp.prototype.source getter compat workaround > > The getter RegExp.prototype.source is specified in ES2015 to throw when > called on a non-RegExp instance, such as RegExp.prototype. We had previously > put in a compatibility workaround for all RegExp getters to make them > throw on access specifically with RegExp.prototype as the receiver; however, > we only have evidence that this is needed for properties other than source. > This patch removes the compatibility workaround for get RegExp.prototype.source > and gives it semantics precisely as per the ES2015 specification. > > R=adamk > BUG=chromium:581577,v8:4827 > LOG=Y > > Committed: https://crrev.com/80803aa89e31839b8f73959776fa7e1923c6b461 > Cr-Commit-Position: refs/heads/master@{#35086} R=adamk@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=chromium:581577,v8:4827 LOG=Y Review URL: https://codereview.chromium.org/1847783003 Cr-Commit-Position: refs/heads/master@{#35180}
-
- 28 Mar, 2016 1 commit
-
-
littledan authored
The getter RegExp.prototype.source is specified in ES2015 to throw when called on a non-RegExp instance, such as RegExp.prototype. We had previously put in a compatibility workaround for all RegExp getters to make them throw on access specifically with RegExp.prototype as the receiver; however, we only have evidence that this is needed for properties other than source. This patch removes the compatibility workaround for get RegExp.prototype.source and gives it semantics precisely as per the ES2015 specification. R=adamk BUG=chromium:581577,v8:4827 LOG=Y Review URL: https://codereview.chromium.org/1837843002 Cr-Commit-Position: refs/heads/master@{#35086}
-
- 22 Mar, 2016 2 commits
-
-
adamk authored
Now that ES2015 const has shipped, in Chrome 49, legacy const declarations are no more. This lets us remove a bunch of code from many parts of the codebase. In this patch, I remove parser support for generating legacy const variables from const declarations. This also removes the special "illegal declaration" bit from Scope, which has ripples into all compiler backends. Also gone are any tests which relied on legacy const declarations. Note that we do still generate a Variable in mode CONST_LEGACY in one case: function name bindings in sloppy mode. The likely fix there is to add a new Variable::Kind for this case and handle it appropriately for stores in each backend, but I leave that for a later patch to make this one completely subtractive. Review URL: https://codereview.chromium.org/1819123002 Cr-Commit-Position: refs/heads/master@{#35002}
-
mythria authored
Fixes CopyBytecodeArray to set the interrupt_budget field. BUG=v8:4280,v8:4690 LOG=N Review URL: https://codereview.chromium.org/1809123003 Cr-Commit-Position: refs/heads/master@{#34982}
-
- 21 Mar, 2016 1 commit
-
-
mstarzinger authored
This rebaselines all our internal tests for error messages thrown by the implementation of 'instanceof' to the new ES6 semantics. It also applies a minor rephrasing to the messages in question. R=rossberg@chromium.org BUG=v8:4447 LOG=n Review URL: https://codereview.chromium.org/1822663002 Cr-Commit-Position: refs/heads/master@{#34940}
-
- 18 Mar, 2016 1 commit
-
-
adamk authored
It was never being set to false in production (though it was in test-parsing.cc, due to that test having its own flag-setting logic). Review URL: https://codereview.chromium.org/1815033002 Cr-Commit-Position: refs/heads/master@{#34878}
-
- 16 Mar, 2016 1 commit
-
-
littledan authored
Function declarations were previously permitted by V8 in many locations which no ECMAScript specification allowed; the ECMAScript 2015 spec enumerates a few locations (in blocks, as well as after labels and in conditionals when in sloppy mode). This patch ships the flag to restrict the usage of function declarations to those contexts. R=adamk LOG=Y BUG=v8:4824 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1799233003 Cr-Commit-Position: refs/heads/master@{#34828}
-
- 15 Mar, 2016 2 commits
-
-
littledan authored
src/js/regexp.js was one of the few files that was left in sloppy mode. The ES2017 draft specification requires that writes to lastIndex throw when the property is non-writable, and test262 tests enforce this behavior. This patch puts that file in strict mode. BUG=v8:4504 R=yangguo@chromium.org LOG=Y Review URL: https://codereview.chromium.org/1776883005 Cr-Commit-Position: refs/heads/master@{#34801}
-
machenbach authored
BUG=v8:4280 LOG=n TBR=rmcilroy@chromium.org, mstarzinger@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1799423004 Cr-Commit-Position: refs/heads/master@{#34772}
-
- 14 Mar, 2016 3 commits
-
-
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}
-
mstarzinger authored
This fixes the label binding mechanism that forwards a label to another already bound target label. For source labels that are not being reached by a jump, we should not try to patch jump sites. We still bind the source label to reflect the target position though, just in case this binding method will be used for backwards branches in the future. R=rmcilroy@chromium.org TEST=webkit/fast/js/parser-syntax-check Review URL: https://codereview.chromium.org/1804643002 Cr-Commit-Position: refs/heads/master@{#34759}
-
mstarzinger authored
This also runs the webkit test suite against Ignition. By now most of the tests pass, the failing ones have been blacklisted. R=machenbach@chromium.org TEST=webkit Review URL: https://codereview.chromium.org/1799603003 Cr-Commit-Position: refs/heads/master@{#34749}
-
- 10 Mar, 2016 1 commit
-
-
adamk authored
These flags have been on by default since version 4.9, which has been in stable Chrome for over a week now, demonstrating that they're here to stay. Also moved the tests out of harmony/ and into es6/. Review URL: https://codereview.chromium.org/1776683003 Cr-Commit-Position: refs/heads/master@{#34692}
-
- 02 Mar, 2016 1 commit
-
-
yangguo authored
It used to say "Unexpected token ILLEGAL", now it says "Invalid or unexpected token". R=jkummerow@chromium.org BUG=chromium:257405 LOG=N Review URL: https://codereview.chromium.org/1758663002 Cr-Commit-Position: refs/heads/master@{#34431}
-
- 23 Feb, 2016 1 commit
-
-
littledan authored
It turns out that some old polyfill library uses RegExp.prototype.flags as a way of feature testing. It's not clear how widespread this is. For now, as a minimal workaround, we can return undefined from getters like RegExp.prototype.global when the receiver is RegExp.prototype. This patch implements that strategy but omits a UseCounter to make backports easier. R=adamk CC=yangguo@chromium.org BUG=chromium:581577 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1640803003 Cr-Commit-Position: refs/heads/master@{#34201}
-
- 25 Jan, 2016 1 commit
-
-
littledan authored
A recent ES2015 semantics web compatibility fix changed a WebKit test from a syntax error to a known failure without a syntax error. This confused the fuzzer infrastructure. This patch updates the test expectations to the expected output, based on what the new semantics provide. R=machenbach,adamk BUG=v8:4693 LOG=N Review URL: https://codereview.chromium.org/1628013003 Cr-Commit-Position: refs/heads/master@{#33484}
-
- 18 Jan, 2016 1 commit
-
-
yangguo authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1595403003 Cr-Commit-Position: refs/heads/master@{#33354}
-
- 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}
-
- 22 Dec, 2015 1 commit
-
-
littledan authored
Reland of Add web compat workarounds for ES2015 RegExp semantics (patchset #3 id:40001 of https://codereview.chromium.org/1543723002/ ) Unexpectedly, websites depend on doing feature testing with RegExp.prototype.sticky and browser testing with RegExp.prototype.toString(). ES2015 newly throws exceptions for both of these. In order to enable shipping new ES2015 semantics, this patch puts in narrow workarounds for those two cases, keeping their old behavior. UseCounters are added for how often those particular cases come up, so we can see if it can be deprecated. This reland replaces problematic legacy const usage with var, to avoid issues with nosnap builds. R=yangguo CC=bmeurer BUG=v8:4637,v8:4617 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1545633002 Cr-Commit-Position: refs/heads/master@{#33002}
-