platform/upstream/v8.git
10 years agoRemove duplicate third-party test cases.
mstarzinger@chromium.org [Mon, 10 Feb 2014 11:29:59 +0000 (11:29 +0000)]
Remove duplicate third-party test cases.

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

10 years agoUnify BuildLoad/StoreNamedGeneric
verwaest@chromium.org [Mon, 10 Feb 2014 10:23:59 +0000 (10:23 +0000)]
Unify BuildLoad/StoreNamedGeneric

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/155513008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.24.36.
machenbach@chromium.org [Mon, 10 Feb 2014 09:01:10 +0000 (09:01 +0000)]
Prepare push to trunk.  Now working on version 3.24.36.

R=bmeurer@chromium.org
TBR=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/135973011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDrop unused accumulated first time changes/depends.
bmeurer@chromium.org [Mon, 10 Feb 2014 08:59:51 +0000 (08:59 +0000)]
Drop unused accumulated first time changes/depends.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/135503004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUnify (Pre)Parser::ParseTryStatement.
marja@chromium.org [Mon, 10 Feb 2014 08:45:13 +0000 (08:45 +0000)]
Unify (Pre)Parser::ParseTryStatement.

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

10 years agoRevert "Introduce MoveDouble to the X64 MacroAssembler" (r17383)
haitao.feng@intel.com [Sat, 8 Feb 2014 02:16:25 +0000 (02:16 +0000)]
Revert "Introduce MoveDouble to the X64 MacroAssembler" (r17383)

The direction is to use "movl, movq, movp" instead of introducing new
Macro assembler instructions.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/101083002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Make Function.length and Function.name configurable properties."
rossberg@chromium.org [Fri, 7 Feb 2014 15:29:18 +0000 (15:29 +0000)]
Revert "Make Function.length and Function.name configurable properties."

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

10 years agoMake Function.length and Function.name configurable properties.
rossberg@chromium.org [Fri, 7 Feb 2014 14:55:30 +0000 (14:55 +0000)]
Make Function.length and Function.name configurable properties.

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

10 years agoRevert "Fix inconsistencies wrt whitespaces."
yangguo@chromium.org [Fri, 7 Feb 2014 14:13:00 +0000 (14:13 +0000)]
Revert "Fix inconsistencies wrt whitespaces."

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

10 years agoUnify function parameter checking in PreParser and Parser.
marja@chromium.org [Fri, 7 Feb 2014 12:44:45 +0000 (12:44 +0000)]
Unify function parameter checking in PreParser and Parser.

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

10 years agoFix inconsistencies wrt whitespaces.
yangguo@chromium.org [Fri, 7 Feb 2014 12:34:45 +0000 (12:34 +0000)]
Fix inconsistencies wrt whitespaces.

\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

10 years agoMake LeakSanitizer happy, part 3.
svenpanne@chromium.org [Fri, 7 Feb 2014 12:17:45 +0000 (12:17 +0000)]
Make LeakSanitizer happy, part 3.

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

10 years agoAdd basic support for STL containers allocated in Zones
danno@chromium.org [Fri, 7 Feb 2014 11:55:11 +0000 (11:55 +0000)]
Add basic support for STL containers allocated in Zones

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/157443002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUnify function name validation in Parser and PreParser.
marja@chromium.org [Fri, 7 Feb 2014 10:47:01 +0000 (10:47 +0000)]
Unify function name validation in Parser and PreParser.

BUG=3126
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/140183005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd regression tests for PrePreparser.
marja@chromium.org [Fri, 7 Feb 2014 10:28:00 +0000 (10:28 +0000)]
Add regression tests for PrePreparser.

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

10 years agoThe allocation sites scratchpad becomes a heap data structure.
hpayer@chromium.org [Fri, 7 Feb 2014 09:54:52 +0000 (09:54 +0000)]
The allocation sites scratchpad becomes a heap data structure.

BUG=
R=mstarzinger@chromium.org, mvstanton@chromium.org

Review URL: https://codereview.chromium.org/143153008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.24.35.
bmeurer@chromium.org [Fri, 7 Feb 2014 09:10:56 +0000 (09:10 +0000)]
Prepare push to trunk.  Now working on version 3.24.35.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/157343002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19186 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix printing of GVN flags.
bmeurer@chromium.org [Fri, 7 Feb 2014 08:59:20 +0000 (08:59 +0000)]
Fix printing of GVN flags.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/142253003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUnify PreParser::ParseIdentifierName and Parser::ParseIdentifierName.
marja@chromium.org [Fri, 7 Feb 2014 08:45:28 +0000 (08:45 +0000)]
Unify PreParser::ParseIdentifierName and Parser::ParseIdentifierName.

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

10 years agoWin64 fixes.
svenpanne@chromium.org [Fri, 7 Feb 2014 07:44:19 +0000 (07:44 +0000)]
Win64 fixes.

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

10 years ago[Sheriff] Revert "Check elimination temporarily disabled.", "Fix for buildbot failure...
bmeurer@chromium.org [Fri, 7 Feb 2014 07:36:30 +0000 (07:36 +0000)]
[Sheriff] Revert "Check elimination temporarily disabled.", "Fix for buildbot failure after r19102." and "Check elimination improvement: propagation of state through phis is supported, CheckMap narrowing implemented."

This reverts commit r19102, r19105 and r19170 for breaking the
Chrome browser_tests. Will reland once fixed.

R=ishell@chromium.org

Review URL: https://codereview.chromium.org/130053007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake LeakSanitizer happy, part 2. Fixed register usage on the way.
svenpanne@chromium.org [Fri, 7 Feb 2014 07:06:13 +0000 (07:06 +0000)]
Make LeakSanitizer happy, part 2. Fixed register usage on the way.

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

10 years agoUse StackArgumentsAccessor to access receiver on stack, use kPCOnStackSize to
haitao.feng@intel.com [Fri, 7 Feb 2014 02:21:18 +0000 (02:21 +0000)]
Use StackArgumentsAccessor to access receiver on stack, use kPCOnStackSize to
access stack argument and use movq instead of movp to operate return address
on stack for x64

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/156663002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19177 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Implement Microtask Delivery Queue"
rafaelw@chromium.org [Fri, 7 Feb 2014 01:08:50 +0000 (01:08 +0000)]
Revert "Implement Microtask Delivery Queue"

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

10 years agoMIPS: Avoid embedding x86 NaN constant in MacroAssembler code when snapshot is created.
plind44@gmail.com [Fri, 7 Feb 2014 00:55:04 +0000 (00:55 +0000)]
MIPS: Avoid embedding x86 NaN constant in MacroAssembler code when snapshot is created.

BUG=
TEST=test262/15.4.4.15-8-b-ii-4
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/156803003

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19175 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCheck elimination temporarily disabled.
ishell@chromium.org [Thu, 6 Feb 2014 17:31:00 +0000 (17:31 +0000)]
Check elimination temporarily disabled.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/149523004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: swap in global proxy on accessors.
plind44@gmail.com [Thu, 6 Feb 2014 16:45:50 +0000 (16:45 +0000)]
MIPS: swap in global proxy on accessors.

Port r19142 (087bc3e)

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/140893011

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoES6: Remove __proto__ setter poison pill
rossberg@chromium.org [Thu, 6 Feb 2014 16:09:45 +0000 (16:09 +0000)]
ES6: Remove __proto__ setter poison pill

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

10 years agoAdd support to automatically search for corresponding architecture ports in merge...
palfia@homejinni.com [Thu, 6 Feb 2014 15:34:46 +0000 (15:34 +0000)]
Add support to automatically search for corresponding architecture ports in merge-to-branch.sh.

BUG=
R=jkummerow@chromium.org, plind44@gmail.com

Review URL: https://codereview.chromium.org/152343011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19163 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMerge Parser::ReportUnexpectedToken and PreParser::ReportUnexpectedToken.
marja@chromium.org [Thu, 6 Feb 2014 15:10:21 +0000 (15:10 +0000)]
Merge Parser::ReportUnexpectedToken and PreParser::ReportUnexpectedToken.

(I.e., move ReportUnexpectedToken to ParserBase.)

Because of the recent unifications, they now do the same thing.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/153743006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19161 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoOptimized stores of smis on x64 temporarily disabled.
ishell@chromium.org [Thu, 6 Feb 2014 13:16:44 +0000 (13:16 +0000)]
Optimized stores of smis on x64 temporarily disabled.

BUG=338425
LOG=N
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/132753008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19155 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRedo r19140 with better efficiency.
marja@chromium.org [Thu, 6 Feb 2014 13:12:10 +0000 (13:12 +0000)]
Redo r19140 with better efficiency.

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

10 years agoRemove special ArrayLength handling already covered by JSObjectFieldAccessors
verwaest@chromium.org [Thu, 6 Feb 2014 13:01:38 +0000 (13:01 +0000)]
Remove special ArrayLength handling already covered by JSObjectFieldAccessors

R=dslomov@chromium.org

Review URL: https://codereview.chromium.org/153743005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTest and fix for _CallFunction intrinsic deoptimization.
jarin@chromium.org [Thu, 6 Feb 2014 12:42:26 +0000 (12:42 +0000)]
Test and fix for _CallFunction intrinsic deoptimization.

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

10 years agoCosmetic cleanup for GVN.
bmeurer@chromium.org [Thu, 6 Feb 2014 12:35:17 +0000 (12:35 +0000)]
Cosmetic cleanup for GVN.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/153563006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19150 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFixed space leak in DebuggerAgentSession.
svenpanne@chromium.org [Thu, 6 Feb 2014 12:09:08 +0000 (12:09 +0000)]
Fixed space leak in DebuggerAgentSession.

Ownership in this part is still very convoluted and should probably be
cleaned up, this is only the minimal CL needed to fix the leak.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/153623009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Unify paren handling in Parser and PreParser."
marja@chromium.org [Thu, 6 Feb 2014 11:59:16 +0000 (11:59 +0000)]
Revert "Unify paren handling in Parser and PreParser."

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

10 years agoJust calculate pretenuring ratio when needed.
hpayer@chromium.org [Thu, 6 Feb 2014 11:27:08 +0000 (11:27 +0000)]
Just calculate pretenuring ratio when needed.

BUG=
R=mvstanton@chromium.org

Review URL: https://codereview.chromium.org/153863005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoswap in global proxy on accessors
dcarney@chromium.org [Thu, 6 Feb 2014 10:50:07 +0000 (10:50 +0000)]
swap in global proxy on accessors

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

10 years agoCleanup allocation site pretenuring tracing, added new flag --trace-pretenuring-stati...
hpayer@chromium.org [Thu, 6 Feb 2014 10:30:13 +0000 (10:30 +0000)]
Cleanup allocation site pretenuring tracing, added new flag --trace-pretenuring-statistics.

BUG=
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/153273003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUnify paren handling in Parser and PreParser.
marja@chromium.org [Thu, 6 Feb 2014 10:30:02 +0000 (10:30 +0000)]
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.

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

10 years agoFixed space leak in Interface class.
svenpanne@chromium.org [Thu, 6 Feb 2014 10:23:22 +0000 (10:23 +0000)]
Fixed space leak in Interface class.

The exports_ hash map itself should live in the zone, too, not only
its entries.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/156643002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFollow-up to r19112.
marja@chromium.org [Thu, 6 Feb 2014 10:16:25 +0000 (10:16 +0000)]
Follow-up to r19112.

There's only one error message for "eval" and "arguments", so no need to pass it
to PreParser::StrictModeIdentifierViolation.

BUG=3126
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/139713005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19137 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReduce memory usage due to fixpoint iteration of GVN.
bmeurer@chromium.org [Thu, 6 Feb 2014 09:54:59 +0000 (09:54 +0000)]
Reduce memory usage due to fixpoint iteration of GVN.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/153533003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoBinary operation deoptimization fix.
jarin@chromium.org [Thu, 6 Feb 2014 09:36:55 +0000 (09:36 +0000)]
Binary operation deoptimization fix.

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

10 years agoinline api setters in crankshaft
dcarney@chromium.org [Thu, 6 Feb 2014 07:31:08 +0000 (07:31 +0000)]
inline api setters in crankshaft

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

10 years agoMake LeakSanitizer happy, part 1.
svenpanne@chromium.org [Thu, 6 Feb 2014 07:16:41 +0000 (07:16 +0000)]
Make LeakSanitizer happy, part 1.

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

10 years agoFix allocation tracker leaks.
svenpanne@chromium.org [Thu, 6 Feb 2014 07:10:59 +0000 (07:10 +0000)]
Fix allocation tracker leaks.

R=yangguo@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/155513004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Fixes for patch sites if long branches are emitted.
plind44@gmail.com [Thu, 6 Feb 2014 01:10:06 +0000 (01:10 +0000)]
MIPS: Fixes for patch sites if long branches are emitted.

This resolves many mjsunit failures if long branches are forced to be emitted.

TEST=
BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/153983002

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.24.34.
machenbach@chromium.org [Thu, 6 Feb 2014 01:05:58 +0000 (01:05 +0000)]
Prepare push to trunk.  Now working on version 3.24.34.

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/152483005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Move failing ASSERT to a more sane place.
palfia@homejinni.com [Wed, 5 Feb 2014 22:31:24 +0000 (22:31 +0000)]
MIPS: Move failing ASSERT to a more sane place.

Port r19095 (caf48ad)

Original commit message:
Objects can actually be stored into themselves. This fails when no write
barrier is needed (eg, the object was just allocated).

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/149343003

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Fix crashes after profile entry hook calls.
plind44@gmail.com [Wed, 5 Feb 2014 22:28:46 +0000 (22:28 +0000)]
MIPS: Fix crashes after profile entry hook calls.

The call to C++ function has to be done through t9 register for
the position independent code.

The crashes occur only for shared library build.

TEST=cctest/test-api/SetFunctionEntryHook
BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/132113009

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Avoid embedding x86 NaN constant in code when snapshot is created.
plind44@gmail.com [Wed, 5 Feb 2014 18:58:16 +0000 (18:58 +0000)]
MIPS: Avoid embedding x86 NaN constant in code when snapshot is created.

Due to a different NaN representation on MIPS, the canonical nan
constant embedded in generated code that comes from snapshot will differ from
the one used on MIPS hardware.

TEST=mozilla/ecma/Array/15.4.4.2.js
BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/150663009

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPerform a fix point iteration for GVN.
hpayer@chromium.org [Wed, 5 Feb 2014 17:21:34 +0000 (17:21 +0000)]
Perform a fix point iteration for GVN.

BUG=
R=danno@chromium.org

Review URL: https://codereview.chromium.org/149573014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake strict more error messages about "eval" and "arguments" less specific.
marja@chromium.org [Wed, 5 Feb 2014 16:26:48 +0000 (16:26 +0000)]
Make strict more error messages about "eval" and "arguments" less specific.

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

10 years agoinline api getters in crankshaft
dcarney@chromium.org [Wed, 5 Feb 2014 15:52:31 +0000 (15:52 +0000)]
inline api getters in crankshaft

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

10 years agoMerge named part of BuildLoad and BuildStore
verwaest@chromium.org [Wed, 5 Feb 2014 15:44:20 +0000 (15:44 +0000)]
Merge named part of BuildLoad and BuildStore

BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/149803007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMerge BuildLoad/StoreMonomorphic
verwaest@chromium.org [Wed, 5 Feb 2014 15:43:33 +0000 (15:43 +0000)]
Merge BuildLoad/StoreMonomorphic

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/137263021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoBetter tests for the Parser / Preparser unification.
marja@chromium.org [Wed, 5 Feb 2014 15:30:01 +0000 (15:30 +0000)]
Better tests for the Parser / Preparser unification.

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

10 years agoMerge polymorphic load/store handling
verwaest@chromium.org [Wed, 5 Feb 2014 15:28:57 +0000 (15:28 +0000)]
Merge polymorphic load/store handling

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/150573010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19106 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix for buildbot failure after r19102.
ishell@chromium.org [Wed, 5 Feb 2014 15:22:54 +0000 (15:22 +0000)]
Fix for buildbot failure after r19102.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/149093011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19105 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCheck elimination improvement: propagation of state through phis is supported, CheckM...
ishell@chromium.org [Wed, 5 Feb 2014 13:39:55 +0000 (13:39 +0000)]
Check elimination improvement: propagation of state through phis is supported, CheckMap narrowing implemented.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/141653009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix %OptimizeFunctionOnNextCall wrt concurrent compilation.
yangguo@chromium.org [Wed, 5 Feb 2014 12:19:29 +0000 (12:19 +0000)]
Fix %OptimizeFunctionOnNextCall wrt concurrent compilation.

If a function is marked or queued for concurrent compilation,
%OptimizeFunctionOnNextCall becomes a no-op. That can be wrong
if concurrent recompilation does not complete at the time we
expect the function to have been optimized.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/151343006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUse mutex in PostponeInterruptScope.
yangguo@chromium.org [Wed, 5 Feb 2014 11:28:55 +0000 (11:28 +0000)]
Use mutex in PostponeInterruptScope.

To avoid race with e.g. StackGuard::RequestInstallCode called from another
thread when both access postpone_interrupts_nesting_.

R=mvstanton@chromium.org
BUG=290964
LOG=N

Review URL: https://codereview.chromium.org/138833006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMove failing ASSERT on ARM to a more sane place.
verwaest@chromium.org [Wed, 5 Feb 2014 10:12:14 +0000 (10:12 +0000)]
Move failing ASSERT on ARM to a more sane place.
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

10 years agoOptimize redundant HCompareMap instructions with known successors.
bmeurer@chromium.org [Wed, 5 Feb 2014 09:30:53 +0000 (09:30 +0000)]
Optimize redundant HCompareMap instructions with known successors.

R=ishell@chromium.org

Review URL: https://codereview.chromium.org/150663005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAllow externalizing strings in old pointer space.
yangguo@chromium.org [Wed, 5 Feb 2014 09:29:04 +0000 (09:29 +0000)]
Allow externalizing strings in old pointer space.

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

10 years agoTest for miscellaneous (pre)parse errors.
marja@chromium.org [Wed, 5 Feb 2014 08:38:26 +0000 (08:38 +0000)]
Test for miscellaneous (pre)parse errors.

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

10 years agoPrepare push to trunk. Now working on version 3.24.33.
machenbach@chromium.org [Wed, 5 Feb 2014 03:04:35 +0000 (03:04 +0000)]
Prepare push to trunk.  Now working on version 3.24.33.

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/153973003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoExplicitly disallow stores to JSObjectAccessors (for now).
verwaest@chromium.org [Tue, 4 Feb 2014 22:46:53 +0000 (22:46 +0000)]
Explicitly disallow stores to JSObjectAccessors (for now).
TBR=dcarney@chromium.org

Review URL: https://codereview.chromium.org/154873002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUse PropertyAccessInfo to compute stores in crankshaft.
verwaest@chromium.org [Tue, 4 Feb 2014 22:23:26 +0000 (22:23 +0000)]
Use PropertyAccessInfo to compute stores in crankshaft.
BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/153933002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImplement Microtask Delivery Queue
rafaelw@chromium.org [Tue, 4 Feb 2014 19:58:49 +0000 (19:58 +0000)]
Implement Microtask Delivery Queue

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

10 years agoTests for (pre)parse errors when "yield" is found in inappropriate places.
marja@chromium.org [Tue, 4 Feb 2014 18:16:45 +0000 (18:16 +0000)]
Tests for (pre)parse errors when "yield" is found in inappropriate places.

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

10 years agoTests and fixes for (pre)parse errors related to future reserved words.
marja@chromium.org [Tue, 4 Feb 2014 16:38:47 +0000 (16:38 +0000)]
Tests and fixes for (pre)parse errors related to future reserved words.

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

10 years agoMIPS: Fix test-assembler-mips/MIPS10 test.
palfia@homejinni.com [Tue, 4 Feb 2014 14:05:46 +0000 (14:05 +0000)]
MIPS: Fix test-assembler-mips/MIPS10 test.

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

10 years agoCleanup: Unify CodeGenerator class across platforms
jkummerow@chromium.org [Tue, 4 Feb 2014 13:53:41 +0000 (13:53 +0000)]
Cleanup: Unify CodeGenerator class across platforms

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/134643026

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTemporarily mark reserved-words-as-property as possibly failing.
marja@chromium.org [Tue, 4 Feb 2014 13:37:34 +0000 (13:37 +0000)]
Temporarily mark reserved-words-as-property as possibly failing.

V8 is changing an error message and Blink will disable this test temporarily,
too. This CL will keep the tree green until Blink is rolled into V8.

BUG=3126
LOG=N
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/152863004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUse Type* in crankshaft rather than HeapType.
verwaest@chromium.org [Tue, 4 Feb 2014 12:44:15 +0000 (12:44 +0000)]
Use Type* in crankshaft rather than HeapType.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/152863002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDon't access stack-allocated variable when it is out of scope. Enable Isolate cleanup...
svenpanne@chromium.org [Tue, 4 Feb 2014 12:23:30 +0000 (12:23 +0000)]
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

10 years agoTests and fixes for (pre)parse errors related to strict reserved words.
marja@chromium.org [Tue, 4 Feb 2014 12:19:53 +0000 (12:19 +0000)]
Tests and fixes for (pre)parse errors related to strict reserved words.

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

10 years agoAdded a test which installs a poisonous memento right after the new space top pointer.
hpayer@chromium.org [Tue, 4 Feb 2014 12:10:30 +0000 (12:10 +0000)]
Added a test which installs a poisonous memento right after the new space top pointer.

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

10 years agoAdd Box object to heap profiler.
alph@chromium.org [Tue, 4 Feb 2014 11:43:19 +0000 (11:43 +0000)]
Add Box object to heap profiler.

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

10 years agoTests for (pre)parse errors when "eval" and "arguments" are found in inappropriate...
marja@chromium.org [Tue, 4 Feb 2014 11:26:19 +0000 (11:26 +0000)]
Tests for (pre)parse errors when "eval" and "arguments" are found in inappropriate places.

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

10 years agoFix in array instance type initialization.
ishell@chromium.org [Tue, 4 Feb 2014 10:59:40 +0000 (10:59 +0000)]
Fix in array instance type initialization.

R=dslomov@chromium.org

Review URL: https://codereview.chromium.org/134713004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19058 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemake of the load elimination fix made earlier (r18884).
ishell@chromium.org [Tue, 4 Feb 2014 10:48:49 +0000 (10:48 +0000)]
Remake of the load elimination fix made earlier (r18884).

R=titzer@chromium.org, verwaest@chromium.org

Review URL: https://codereview.chromium.org/149063010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoJust initialize elements pointer in fast literal when pre-tenuring.
hpayer@chromium.org [Tue, 4 Feb 2014 10:41:16 +0000 (10:41 +0000)]
Just initialize elements pointer in fast literal when pre-tenuring.

BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/148253004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove unused AllocationSpace paramenter from CollectGarbage.
hpayer@chromium.org [Tue, 4 Feb 2014 10:30:36 +0000 (10:30 +0000)]
Remove unused AllocationSpace paramenter from CollectGarbage.

BUG=
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/148943004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Tests for (pre)parse errors when "eval" and "arguments" are found in inapprop...
marja@chromium.org [Tue, 4 Feb 2014 10:00:36 +0000 (10:00 +0000)]
Revert "Tests for (pre)parse errors when "eval" and "arguments" are found in inappropriate places."

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

10 years agoAdd per-file OWNERS for MIPS-specific cctests
jkummerow@chromium.org [Tue, 4 Feb 2014 09:53:26 +0000 (09:53 +0000)]
Add per-file OWNERS for MIPS-specific cctests

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

10 years agoCheck the offset argument of TypedArray.set for fitting into Smi.
dslomov@chromium.org [Tue, 4 Feb 2014 09:53:05 +0000 (09:53 +0000)]
Check the offset argument of TypedArray.set for fitting into Smi.

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

10 years agoTests for (pre)parse errors when "eval" and "arguments" are found in inappropriate...
marja@chromium.org [Tue, 4 Feb 2014 09:47:30 +0000 (09:47 +0000)]
Tests for (pre)parse errors when "eval" and "arguments" are found in inappropriate places.

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

10 years agoRevert "Dispose Isolate at end of cctest."
svenpanne@chromium.org [Tue, 4 Feb 2014 09:41:21 +0000 (09:41 +0000)]
Revert "Dispose Isolate at end of cctest."

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

10 years agoDispose Isolate at end of cctest.
svenpanne@chromium.org [Tue, 4 Feb 2014 08:30:35 +0000 (08:30 +0000)]
Dispose Isolate at end of cctest.

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

10 years agoPrepare push to trunk. Now working on version 3.24.32.
machenbach@chromium.org [Tue, 4 Feb 2014 07:54:03 +0000 (07:54 +0000)]
Prepare push to trunk.  Now working on version 3.24.32.

R=bmeurer@chromium.org
TBR=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/138303004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Unroll push loop in r19040 and other push optimizations.
palfia@homejinni.com [Tue, 4 Feb 2014 00:06:44 +0000 (00:06 +0000)]
MIPS: Unroll push loop in r19040 and other push optimizations.

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/145973015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: let load and store api callbacks use global proxy as receiver.
plind44@gmail.com [Mon, 3 Feb 2014 18:44:23 +0000 (18:44 +0000)]
MIPS: let load and store api callbacks use global proxy as receiver.

Port r19033 (c31b3e7)

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/152943002

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agolet load and store api callbacks use global proxy as receiver
dcarney@chromium.org [Mon, 3 Feb 2014 15:19:38 +0000 (15:19 +0000)]
let load and store api callbacks use global proxy as receiver

R=verwaest@chromium.org

BUG=

Review URL: https://codereview.chromium.org/151063003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix short-circuiting logical and/or in HOptimizedGraphBuilder.
yangguo@chromium.org [Mon, 3 Feb 2014 14:29:34 +0000 (14:29 +0000)]
Fix short-circuiting logical and/or in HOptimizedGraphBuilder.

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

10 years agoElements field of newly allocated JSArray could be left uninitialized in some cases...
ishell@chromium.org [Mon, 3 Feb 2014 13:33:26 +0000 (13:33 +0000)]
Elements field of newly allocated JSArray could be left uninitialized in some cases (fast literal case).

BUG=340124
LOG=Y
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/152673004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake memento checks more stable. Add filler at the end of new space and check if...
hpayer@chromium.org [Mon, 3 Feb 2014 12:20:15 +0000 (12:20 +0000)]
Make memento checks more stable. Add filler at the end of new space and check if object and memento are on the same new space page.

BUG=
R=bmeurer@chromium.org, mvstanton@chromium.org

Review URL: https://codereview.chromium.org/152613002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00