- 06 Feb, 2014 8 commits
-
-
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 6 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
-
verwaest@chromium.org authored
Objects can actually be stored into themselves. This fails when no write barrier is needed (eg, the object was just allocated). R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/148733005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
This is what I think is a better solution to the "external strings in old pointer space" problem. Basically, it is an issue because GC scans all fields of objects in old pointer space and if the cached address of the backing store is unaligned, it looks like a heap object, boom. The solution here is to use short external strings when we externalize a string in old pointer space, and when the address is unaligned. Short external strings don't cache the address, so GC has no issues. BUG=268686 LOG=Y R=dcarney@chromium.org Review URL: https://codereview.chromium.org/146183006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/154133002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Feb, 2014 15 commits
-
-
rafaelw@chromium.org authored
R=rossberg@chromium.org, rossberg BUG= Review URL: https://codereview.chromium.org/131413008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
In addition: - Fix: PreParser used to report an unexpected token one token too late when ParsePrimaryExpression failed. - Unified identifier handling (PreParser::GetIdentifier is now like Parser::GetIdentifier). - Fix: PreParser used to produce "unexpected_token YIELD" errors when Parser produced "unexpected_token_identifier"; fixed PreParser to match Parser. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/151103006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
This contains the following fixes: - PreParser was using an error "reserved_word" which doesn't exist in messages.js. Changed it to "unexpected_reserved". BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/153793002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
cvt_l_d() and cvt_d_l() instructions are replaced to cvt_w_d() and ctv_d_w() because kernel FPU emulator generates illegal instruction for double <-> long conversions. BUG= R=jkummerow@chromium.org, plind44@gmail.com Review URL: https://codereview.chromium.org/133363005 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Don't access stack-allocated variable when it is out of scope. Enable Isolate cleanup in cctests again. R=ulan@chromium.org Review URL: https://codereview.chromium.org/146973005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
This contains the following fixes: - We had strict_reserved_word and unexpected_strict_reserved, which one to use was totally mixed in Parser and PreParser. Removed strict_reserved_word. - When we saw a strict future reserved word when expecting something completely different (such as "(" in "function foo interface"), Parser reports unexpected identifier, whereas PreParser used to report unexpected strict reserved word. Fixed PreParser to report unexpected identifier too. - Unified parser and preparser error locations when the name of a function is a strict reserved word. Now both point to the name. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/149253010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=bmeurer@chromium.org, mvstanton@chromium.org Review URL: https://codereview.chromium.org/152813003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alph@chromium.org authored
LOG=Y R=ulan@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/143343006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
In addition: - Fix a bug in parser discovered by the tests (prefix and postfix confused in an error message); the preparser had it right. - Unify the parser and preparser error locations when the name of a function is "eval" or "arguments. Now both point to the name. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/153693002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
Reason: The fixed error message broke some tests. This reverts r19050. BUG= TBR=ulan@chromium.org Review URL: https://codereview.chromium.org/153673002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=danno@chromium.org Review URL: https://codereview.chromium.org/148923003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dslomov@chromium.org authored
R=jkummerow@chromium.org BUG=340125 LOG=Y Review URL: https://codereview.chromium.org/145623009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
In addition: - Fix a bug in parser discovered by the tests (prefix and postfix confused in an error message); the preparser had it right. - Unify the parser and preparser error locations when the name of a function is "eval" or "arguments. Now both point to the name. BUG=3126 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/140543003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Things work locally, only the waterfall is unhappy for some arcane reason. Investigating... TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/133193006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
No measurable change in test running time, we clean up only trivial known things at disposal time and do not walk the heap, run real finalizers, etc. R=ulan@chromium.org Review URL: https://codereview.chromium.org/135153007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Feb, 2014 4 commits
-
-
yangguo@chromium.org authored
R=jkummerow@chromium.org BUG=336148 LOG=Y Review URL: https://codereview.chromium.org/143263022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
BUG=340064 LOG=N R=dcarney@chromium.org Review URL: https://codereview.chromium.org/152603002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= R=yangguo@chromium.org Review URL: https://codereview.chromium.org/146583002 Patch from Weiliang Lin <weiliang.lin@intel.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
* Avoid double-free in cctest/test-api/RegExpInterruption. * Avoid incorrect zone fiddling in cctest/test-strings. R=ulan@chromium.org Review URL: https://codereview.chromium.org/144533005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Feb, 2014 1 commit
-
-
machenbach@chromium.org authored
TBR=jarin@chromium.org Review URL: https://codereview.chromium.org/150853004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 Jan, 2014 6 commits
-
-
verwaest@chromium.org authored
BUG= R=machenbach@chromium.org Review URL: https://codereview.chromium.org/151483004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
BUG= R=dcarney@chromium.org Review URL: https://codereview.chromium.org/148223002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG= TBR=jarin@chromium.org Review URL: https://codereview.chromium.org/148483004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
We do not correctly handle accesses to f.arguments after one of the argument has changed (where f is crankshafted). R=machenbach@chromium.org BUG=v8:2989 LOG=n Review URL: https://codereview.chromium.org/151403003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
TBR=bmeurer@chromium.org BUG=237872 LOG=n Review URL: https://codereview.chromium.org/144533006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG=336820 LOG=n R=bmeurer@chromium.org TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/139923007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-