- 11 Feb, 2014 9 commits
-
-
jarin@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/158723006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
BUG=338425 LOG=N R=verwaest@chromium.org Review URL: https://codereview.chromium.org/152923006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19288 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/154283003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19278 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
R=ulan@chromium.org BUG=v8:3126 LOG=N Review URL: https://codereview.chromium.org/156423005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=jarin@chromium.org BUG=v8:3141 LOG=N Review URL: https://codereview.chromium.org/159353003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
If --concurrent-osr is on, it will imply --concurrent-recompilation, even though it's expected to be disabled. R=machenbach@chromium.org Review URL: https://codereview.chromium.org/143183006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=verwaest@chromium.org BUG=v8:3135 LOG=Y Review URL: https://codereview.chromium.org/146623009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
(Second try, with fixes. First try: https://codereview.chromium.org/149913006/ ) The long-term goal is to move all recursive descent functions from Parser and PreParser into ParserBase, but first they need to be unified. Notes: - The functions moved in this CL: ParseIdentifier, ParseIdentifierName, ParseIdentifierNameOrGetOrSet, ParseIdentifierOrStrictReservedWord. - IOW, this CL removes Parser::ParseIdentifier and PreParser::ParseIdentifier and adds ParserBase::ParseIdentifier, etc. - Error reporting used to require virtual funcs; now error reporting is moved to the Traits too, and ParserBase no longer needs to be virtual. - I had to move PreParser::Identifier out of the PreParser class, because otherwise PreParserTraits cannot use it in a typedef. BUG=v8:3126 LOG=N R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/158913003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mvstanton@chromium.org authored
Map collection complicates a test that wants to assert on code opt/deopt because of prototype-chain changes. It can happen that a gc occurs in the stack guard at the start of optimized function foo that deopts function foo because of a map being collected and deoptimizing it's dependent code. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/159653002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Feb, 2014 8 commits
-
-
mvstanton@chromium.org authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/137403009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
plind44@gmail.com authored
NaN value is different on MIPS and x86 architectures, and TEST(NaNx) tests checks the case where a x86 NaN value is serialized into the snapshot on the simulator during cross compilation. BUG= R=plind44@gmail.com Review URL: https://codereview.chromium.org/144473008 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
This reverts commit r19230. Reason: Build failures on NaCl. BUG= TBR=marja@chromium.org,mstarzinger@chromium.org Review URL: https://codereview.chromium.org/158873006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
The long-term goal is to move all recursive descent functions from Parser and PreParser into ParserBase, but first they need to be unified. Notes: - The functions moved in this CL: ParseIdentifier, ParseIdentifierName, ParseIdentifierNameOrGetOrSet, ParseIdentifierOrStrictReservedWord. - IOW, this CL removes Parser::ParseIdentifier and PreParser::ParseIdentifier and adds ParserBase::ParseIdentifier, etc. - Error reporting used to require virtual funcs; now error reporting is moved to the Traits too, and ParserBase no longer needs to be virtual. - I had to move PreParser::Identifier out of the PreParser class, because otherwise PreParserTraits cannot use it in a typedef. BUG=v8:3126 LOG=N R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/149913006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
Reland of r19102: Check elimination improvement: propagation of state through phis is supported, CheckMap narrowing implemented with tests. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/146623006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
This relands r19196 with fixes. BUG=v8:3109 LOG=Y R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/141323007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
Some of the third-party test cases in the mjsunit test suite were originally taken from WebKit and are now fully covered by the equally named test suite. Mapping of test cases: - array-isarray.js -> test/webkit/Array-isArray.js - array-splice-webkit.js -> test/webkit/array-splice.js R=machenbach@chromium.org BUG= Review URL: https://codereview.chromium.org/158803002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
Notes: - This makes Parser and PreParser produce the same errors with the added test cases (this was not the case before). - ParseBlock already does Expect(Token::LBRACE), so no need to check it twice. BUG=v8:3126 LOG=N R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/148233011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19212 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Feb, 2014 11 commits
-
-
rossberg@chromium.org authored
Plenty of test failures on test262, Mozilla, Webkit. Will have to investigate. TBR=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/139983003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
ES6 makes the Function object properties "length" and "name" configurable; switch the implementation over to follow that. Doing so exposed a problem in the handling of non-writable, but configurable properties backed by foreign callback accessors internally. As an optimization, if such an accessor property is re-defined with a new value, its setter was passed the new value directly, keeping the property as an accessor property. However, this is not correct should the property be non-writable, as its setter will then simply ignore the updated value. Adjust the enabling logic for this optimization accordingly, along with adding a test. LOG=N R=rossberg@chromium.org, rossberg BUG=v8:3045 Review URL: https://codereview.chromium.org/116083006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
This reverts r19196. TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/147443008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
This also makes the "delayed strict mode violations" mechanism in PreParser unnecessary. The attached tests didn't pass before this CL but now they do. BUG=v8:3126 LOG=N R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/157453003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
\u0085 (NEL) is now considered a whitespace in accordance to http://www.unicode.org/Public/6.3.0/ucd/PropList.txt R=mstarzinger@chromium.org BUG=v8:3109 LOG=Y Review URL: https://codereview.chromium.org/146983007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Fixed a few more cctests and removed some which were broken for ages and/or tested nothing useful anymore. Note that cctests are now fully LeakSanitized (at least on x64)! R=dcarney@chromium.org Review URL: https://codereview.chromium.org/157463002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
These tests ensure that PreParser doesn't start producing less data when it's getting refactored. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/157373002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19192 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
No special handling for keywords is needed, since the literal ascii strings for them work too (see how Parser did it). BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/152853006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/157243004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Note that according to the System V ABI for AMD64, rbx must be preserved across calls. We actually crash with clang in the x64 assembler tests without that fix, we were lucky with GCC. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/144313017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rafaelw@chromium.org authored
TBR=adamk,rossberg BUG= Review URL: https://codereview.chromium.org/150103012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Feb, 2014 9 commits
-
-
rossberg@chromium.org authored
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-set-object.prototype.__proto__ The __proto__ setter should be reusable on other objects. BUG=v8:2804 LOG=y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/103343005 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19165 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
Still relevant parts of the original commit message: Unify paren handling in Parser and PreParser. It is only needed in (Pre)Parser::ParseExpressionOrLabelledStatement for not recognizing parenthesized identifiers as labels and in (Pre)Parser::ParseSourceElements for not recognizing a parenthesized string as directive prologue. Parser Expressions don't keep track of whether they're parenthesized, so PreParser Expressions shouldn't either. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/148323011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
I have also cleaned up HOptimizedGraphBuilder::GenerateCallFunction to use IfBuilder. R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/131343013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
This reverts r19140. Reason: Octane regression. BUG= TBR=verwaest@chromium.org Review URL: https://codereview.chromium.org/156673002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/156623002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
It is only needed in (Pre)Parser::ParseExpressionOrLabelledStatement for not recognizing parenthesized identifiers as labels and in (Pre)Parser::ParseSourceElements for not recognizing a parenthesized string as directive prologue. Parser Expressions don't keep track of whether they're parenthesized, so PreParser Expressions shouldn't either. In addition, add helper funcs for checking if an Expression is identifier or a given identifier. (PreParser Expressions can do this.) BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/150103004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/132453009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/155913002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Bumped an assembler buffer on the way, it is necessary for some combinations of debugging flags. Note that the allocation profiler still leaks, this is handled in a separate CL. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/152643006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Feb, 2014 3 commits
-
-
marja@chromium.org authored
We used to have error messages which provide context, like "Variable name may not be eval or arguments in strict mode", but for other illegal words we only have non-context specific error messages like "Unexpected reserved word". Providing the context makes the code unnecessarily complex, since every individual place must remember to check for eval or arguments. This CL produces a unified error message ("Unexpected eval or arguments in strict mode"), and puts the error reporting to (Pre)Parser::ParseIdentifier. Notes: - The module feature is so experimental, that I decided to not allow "eval" or "arguments" as module-related identifiers in the strict mode (even though this check wasn't there before). - Unfortunately, there were some inconsistencies, since it was the responsibility of the caller of ParseIdentifier to check "eval" and "arguments" and some places didn't have the check for no good reason. This CL is supposed to keep backward compatibility and *not* introduce any new errors. - ECMA allows "eval" and "arguments" as labels even in strict mode. (Syntax: "LabelledStatement: Identifier : Statement", and no strict mode restrictions on Identifier are listed.) - Tests which compare error message strings will fail, and need to be updated. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/152813005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/146023004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19110 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
We need a way to assert that for a given source code snippet, an error *is* produced or *is not* produced. Otherwise we might accidentally create new errors or start accepting code which was previously not accepted. Just checking that Parser and PreParser produce the same result doesn't cut it. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/154243005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-