platform/upstream/v8.git
10 years agoPrepare switch from a64 to arm64
jochen@chromium.org [Fri, 21 Mar 2014 08:47:03 +0000 (08:47 +0000)]
Prepare switch from a64 to arm64

BUG=354405
R=machenbach@chromium.org
LOG=n

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

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

10 years agoJSObject::NormalizeElements() handlified.
ishell@chromium.org [Fri, 21 Mar 2014 08:44:40 +0000 (08:44 +0000)]
JSObject::NormalizeElements() handlified.

R=verwaest@chromium.org

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

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

10 years agoJSArray::SetContent() handlified.
ishell@chromium.org [Fri, 21 Mar 2014 08:30:42 +0000 (08:30 +0000)]
JSArray::SetContent() handlified.

R=yangguo@chromium.org

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

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

10 years agoRemove unused color declarations in the a64 simulator
jochen@chromium.org [Fri, 21 Mar 2014 08:23:16 +0000 (08:23 +0000)]
Remove unused color declarations in the a64 simulator

They're now all defined globally

BUG=none
R=svenpanne@chromium.org
LOG=n

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

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

10 years agoArrayUnshift builtin handlified.
ishell@chromium.org [Fri, 21 Mar 2014 08:12:16 +0000 (08:12 +0000)]
ArrayUnshift builtin handlified.

R=yangguo@chromium.org

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

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

10 years agoRevert "Use constant length for memcpy on A64 simulator."
svenpanne@chromium.org [Fri, 21 Mar 2014 08:03:26 +0000 (08:03 +0000)]
Revert "Use constant length for memcpy on A64 simulator."

This reverts commit r20141 which broke the build with some GCC versions. The
reason behind that is GCC emits a warning about code which can never be reached,
but GCC can't figure that out.

The right approach would be using template specialization instead of these
runtime if/then/else cascades, which would be nicer from a SW engineering
perspective, too.

TBR=yangguo@chromium.org

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

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

10 years agoUse constant length for memcpy on A64 simulator.
svenpanne@chromium.org [Fri, 21 Mar 2014 07:08:08 +0000 (07:08 +0000)]
Use constant length for memcpy on A64 simulator.

Compiler can't optimize away variable length memcpy.
About a 18% boost.

Before - 5:40

Richards: 75.2
DeltaBlue: 105
Crypto: 64.0
RayTrace: 188
EarleyBoyer: 146
RegExp: 23.8
Splay: 96.2
NavierStokes: 91.9
----
Score (version 7): 85.7

After - 4:39

Richards: 90.8
DeltaBlue: 134
Crypto: 81.7
RayTrace: 227
EarleyBoyer: 177
RegExp: 29.7
Splay: 126
NavierStokes: 108
----
Score (version 7): 106

R=rodolph.perfetta@gmail.com, svenpanne@chromium.org

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

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

10 years agoIntroduce addp, idivp, imulp and subp for x64 port
haitao.feng@intel.com [Fri, 21 Mar 2014 02:42:10 +0000 (02:42 +0000)]
Introduce addp, idivp, imulp and subp for x64 port

R=verwaest@chromium.org

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

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

10 years agoMIPS: Fix register usage of r20076.
plind44@gmail.com [Thu, 20 Mar 2014 19:12:08 +0000 (19:12 +0000)]
MIPS: Fix register usage of r20076.

BUG=
R=plind44@gmail.com

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

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

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

10 years agoFix missing access check in Runtime_SetPrototype.
mstarzinger@chromium.org [Thu, 20 Mar 2014 18:14:33 +0000 (18:14 +0000)]
Fix missing access check in Runtime_SetPrototype.

R=rossberg@chromium.org
BUG=chromium:354123
TEST=cctest/test-api/Regress354123
LOG=y

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

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

10 years agoFix polymorphic hydrogen handling of SLOPPY_ARGUMENTS_ELEMENTS
jkummerow@chromium.org [Thu, 20 Mar 2014 16:25:24 +0000 (16:25 +0000)]
Fix polymorphic hydrogen handling of SLOPPY_ARGUMENTS_ELEMENTS

BUG=chromium:354391
LOG=y
R=verwaest@chromium.org

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

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

10 years agoReland "Implement ES6 symbol registry and predefined symbols"
rossberg@chromium.org [Thu, 20 Mar 2014 16:13:09 +0000 (16:13 +0000)]
Reland "Implement ES6 symbol registry and predefined symbols"

Only change relative to original CL is the updated assertion condition at objects-inl.h:2119

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoMIPS: Implement flooring division by a constant via truncating division by a constant.
plind44@gmail.com [Thu, 20 Mar 2014 16:04:51 +0000 (16:04 +0000)]
MIPS: Implement flooring division by a constant via truncating division by a constant.

Port r20123 (31ab416)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoAllow to push arbitrary revisions when pushing to trunk.
machenbach@chromium.org [Thu, 20 Mar 2014 15:44:30 +0000 (15:44 +0000)]
Allow to push arbitrary revisions when pushing to trunk.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoA64: Restore the stack limit protection to 1KB.
alexandre.rames@arm.com [Thu, 20 Mar 2014 15:25:27 +0000 (15:25 +0000)]
A64: Restore the stack limit protection to 1KB.

R=ulan@chromium.org

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

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

10 years agoFix assertions wrt concurrent OSR.
yangguo@chromium.org [Thu, 20 Mar 2014 15:23:31 +0000 (15:23 +0000)]
Fix assertions wrt concurrent OSR.

R=ulan@chromium.org

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

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

10 years agoRemove outdated OOM tests.
yangguo@chromium.org [Thu, 20 Mar 2014 14:12:06 +0000 (14:12 +0000)]
Remove outdated OOM tests.

R=ishell@chromium.org

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

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

10 years agoCallers of JSArray::SetContent() handlified.
ishell@chromium.org [Thu, 20 Mar 2014 13:40:08 +0000 (13:40 +0000)]
Callers of JSArray::SetContent() handlified.

R=yangguo@chromium.org

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

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

10 years agoFix for performance issue 353661 - 23% regression in dromaeo.
mvstanton@chromium.org [Thu, 20 Mar 2014 13:38:08 +0000 (13:38 +0000)]
Fix for performance issue 353661 - 23% regression in dromaeo.

The issue was that a previous fix to avoid a logic error was not
targeted enough: it allowed non-transitioning stores to fall
into a code path meant to preserve monomorphic state in the
case of a transitioning store.

BUG=353661
LOG=N
R=verwaest@chromium.org

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

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

10 years agoIncrease the "local variables in a function" limit.
marja@chromium.org [Thu, 20 Mar 2014 13:37:26 +0000 (13:37 +0000)]
Increase the "local variables in a function" limit.

The limit was originally added to avoid having large user-controlled constants
(variable indexes) in the code generated by full-codegen.

History behind this change:

The original CL for adding the limit was https://codereview.chromium.org/7003030
and at that time, the limit was 32767.

Reason for adding the limit (in CL comments): "The motivation behind this change
is to avoid large user controlled constants in the code. The slot_operand used
in the IA32 full code generator uses a relative load where the local index is an
(negative) immediate."

The limit was then bumped to 65535 by https://codereview.chromium.org/10965063
and to 131071 by https://codereview.chromium.org/11099063.

R=dcarney@chromium.org, svenpanne@chromium.org, jkummerow@chromium.org, rossberg@chromium.org
BUG=v8:3205
LOG=Y

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

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

10 years agoMake PreParser track valid left hand sides.
marja@chromium.org [Thu, 20 Mar 2014 13:18:15 +0000 (13:18 +0000)]
Make PreParser track valid left hand sides.

Notes:
- This makes PreParser produce invalid_lhs_in_assignment and
invalid_lhs_in_prefix_op. Other errors will follow as the corresponding funcs
move to ParserBase.
- PreParserExpression::IsStrictFunction and StrictFunction() are not needed any
more -> removed them.

R=rossberg@chromium.org
BUG=

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

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

10 years agoArrayShift builtin handlified.
ishell@chromium.org [Thu, 20 Mar 2014 13:16:19 +0000 (13:16 +0000)]
ArrayShift builtin handlified.

R=yangguo@chromium.org

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

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

10 years agoImplement flooring division by a constant via truncating division by a constant.
svenpanne@chromium.org [Thu, 20 Mar 2014 13:10:23 +0000 (13:10 +0000)]
Implement flooring division by a constant via truncating division by a constant.

R=bmeurer@chromium.org

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

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

10 years agoArrayPush builtin handlified.
ishell@chromium.org [Thu, 20 Mar 2014 13:01:08 +0000 (13:01 +0000)]
ArrayPush builtin handlified.

R=yangguo@chromium.org

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

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

10 years agoRevert "Implement ES6 symbol registry and predefined symbols"
rossberg@chromium.org [Thu, 20 Mar 2014 12:56:41 +0000 (12:56 +0000)]
Revert "Implement ES6 symbol registry and predefined symbols"

TBR=yangguo@chromium.org
BUG=

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

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

10 years agoUse HBoundsCheck to check string length.
yangguo@chromium.org [Thu, 20 Mar 2014 12:34:44 +0000 (12:34 +0000)]
Use HBoundsCheck to check string length.

R=bmeurer@chromium.org

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

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

10 years agoReland "Throw exception on invalid string length instead of OOM."
yangguo@chromium.org [Thu, 20 Mar 2014 12:27:36 +0000 (12:27 +0000)]
Reland "Throw exception on invalid string length instead of OOM."

R=bmeurer@chromium.org

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

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

10 years agoImplement ES6 symbol registry and predefined symbols
rossberg@chromium.org [Thu, 20 Mar 2014 12:26:27 +0000 (12:26 +0000)]
Implement ES6 symbol registry and predefined symbols

R=mstarzinger@chromium.org, arv@chromium.org
BUG=
LOG=Y

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

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

10 years agoHandlify callers to GetElementNoException.
yangguo@chromium.org [Thu, 20 Mar 2014 12:22:13 +0000 (12:22 +0000)]
Handlify callers to GetElementNoException.

R=ishell@chromium.org

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

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

10 years agoA64: Minor cleaning in StoreStubCompiler::GenerateStoreField.
alexandre.rames@arm.com [Thu, 20 Mar 2014 11:35:05 +0000 (11:35 +0000)]
A64: Minor cleaning in StoreStubCompiler::GenerateStoreField.

Abstract a register to simplify code generation.

R=ulan@chromium.org

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

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

10 years agoRevert "Throw exception on invalid string length instead of OOM."
yangguo@chromium.org [Thu, 20 Mar 2014 11:11:28 +0000 (11:11 +0000)]
Revert "Throw exception on invalid string length instead of OOM."

This reverts r20112.

TBR=yangguo@chromium.org

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

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

10 years agoElementsAccessor::Delete() handlified.
ishell@chromium.org [Thu, 20 Mar 2014 10:52:22 +0000 (10:52 +0000)]
ElementsAccessor::Delete() handlified.

R=yangguo@chromium.org

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

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

10 years agoThrow exception on invalid string length instead of OOM.
yangguo@chromium.org [Thu, 20 Mar 2014 10:49:33 +0000 (10:49 +0000)]
Throw exception on invalid string length instead of OOM.

R=bmeurer@chromium.org
BUG=349329
LOG=Y

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

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

10 years agoA64: Remove Operand constructors where an implicit constructor can be used.
alexandre.rames@arm.com [Thu, 20 Mar 2014 10:37:19 +0000 (10:37 +0000)]
A64: Remove Operand constructors where an implicit constructor can be used.

R=jochen@chromium.org

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

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

10 years agoA64: Improve the deoptimization exit code for LMathRound.
alexandre.rames@arm.com [Thu, 20 Mar 2014 10:12:49 +0000 (10:12 +0000)]
A64: Improve the deoptimization exit code for LMathRound.

R=ulan@chromium.org

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

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

10 years agoA64: In the Simulator, corrupt caller-saved registers after runtime printf call.
alexandre.rames@arm.com [Thu, 20 Mar 2014 10:03:17 +0000 (10:03 +0000)]
A64: In the Simulator, corrupt caller-saved registers after runtime printf call.

R=ulan@chromium.org

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

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

10 years agoA64: Abstract simulation of runtime calls in a separate function.
alexandre.rames@arm.com [Thu, 20 Mar 2014 09:51:19 +0000 (09:51 +0000)]
A64: Abstract simulation of runtime calls in a separate function.

R=ulan@chromium.org

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

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

10 years agoA64: Abstract colour definitions for the Simulator tracing.
alexandre.rames@arm.com [Thu, 20 Mar 2014 09:45:17 +0000 (09:45 +0000)]
A64: Abstract colour definitions for the Simulator tracing.

R=ulan@chromium.org

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

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

10 years agoRemove unnecessary 'explicit' attribute.
yangguo@chromium.org [Thu, 20 Mar 2014 09:29:48 +0000 (09:29 +0000)]
Remove unnecessary 'explicit' attribute.

R=marja@chromium.org

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

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

10 years agoDeprecate prepare push commit when pushing to trunk.
machenbach@chromium.org [Thu, 20 Mar 2014 09:23:44 +0000 (09:23 +0000)]
Deprecate prepare push commit when pushing to trunk.

- This also deprecates using version.cc on bleeding edge.
- The deprecated push-to-trunk.sh is deleted.
- The script now commits bleeding edge HEAD by default. Committing different revisions will be added in a follow up CL.

R=jkummerow@chromium.org

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

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

10 years agoA64: clean up pending reloc info if code generation was aborted.
ulan@chromium.org [Thu, 20 Mar 2014 09:10:15 +0000 (09:10 +0000)]
A64: clean up pending reloc info if code generation was aborted.

This fixes assertion failure in destructor of Assembler.

BUG=352659
LOG=N
R=jochen@chromium.org

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

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

10 years agoMake max size and max length of strings consistent.
yangguo@chromium.org [Thu, 20 Mar 2014 08:33:06 +0000 (08:33 +0000)]
Make max size and max length of strings consistent.

R=bmeurer@chromium.org

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

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

10 years agoA64: Fix write barrier input in KeyedStoreIC::GenerateSloppyArguments.
ulan@chromium.org [Thu, 20 Mar 2014 08:32:58 +0000 (08:32 +0000)]
A64: Fix write barrier input in KeyedStoreIC::GenerateSloppyArguments.

This fixes flaky crashes in gc-stress bot:
> Fatal error in ../src/incremental-marking.cc, line 84
> CHECK(obj->IsHeapObject()) failed

BUG=353551
LOG=N
TEST=test/mjsunit/regress/regress-353551.js
R=m.m.capewell@googlemail.com

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

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

10 years agoRevert "Enable Concurrent OSR" due to A64 failures.
yangguo@chromium.org [Thu, 20 Mar 2014 08:19:25 +0000 (08:19 +0000)]
Revert "Enable Concurrent OSR" due to A64 failures.

This reverts r20096.

TBR=jkummerow@chromium.org

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

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

10 years agoEnable concurrent OSR.
yangguo@chromium.org [Thu, 20 Mar 2014 08:04:28 +0000 (08:04 +0000)]
Enable concurrent OSR.

R=jkummerow@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.21.
machenbach@chromium.org [Thu, 20 Mar 2014 01:04:38 +0000 (01:04 +0000)]
Prepare push to trunk.  Now working on version 3.25.21.

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

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

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

10 years agoCleanup following MicrotaskQueue abstraction
rafaelw@chromium.org [Wed, 19 Mar 2014 21:48:30 +0000 (21:48 +0000)]
Cleanup following MicrotaskQueue abstraction

https://code.google.com/p/v8/source/detail?r=19344 failed to remove the promiseEvents InternalArray.

R=rossberg@chromium.org, rossberg
LOG=N

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

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

10 years agoMIPS: Pretenure call new support.
plind44@gmail.com [Wed, 19 Mar 2014 20:00:29 +0000 (20:00 +0000)]
MIPS: Pretenure call new support.

Port r20076 (b7b1372)

Original commit message:
When FLAG_pretenure_call_new is on, we emit mementos on new object creation
in full code, and consume the feedback in crankshaft. A key difference in the
generated code for stubs is the allocation of an additional type vector slot for the
CallNew AST node, which simplifies the CallConstructStub and CallFunctionStub
considerably.

Some performance tuning still needs to be addressed, therefore the flag is off at
this moment, though fully functional. The goal is to remove the flag as soon as
possible, which allows much code deletion (yay).

BUG=
R=plind44@gmail.com

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

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

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

10 years agoElementsAccessor::SetLength() handlified.
ishell@chromium.org [Wed, 19 Mar 2014 16:29:19 +0000 (16:29 +0000)]
ElementsAccessor::SetLength() handlified.

R=yangguo@chromium.org

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

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

10 years agoARM: clean-up some stub call sequences.
rodolph.perfetta@arm.com [Wed, 19 Mar 2014 16:27:09 +0000 (16:27 +0000)]
ARM: clean-up some stub call sequences.

BUG=
R=ulan@chromium.org

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

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

10 years agoAdd FLAG_trace_bce
jkummerow@chromium.org [Wed, 19 Mar 2014 16:03:56 +0000 (16:03 +0000)]
Add FLAG_trace_bce

R=ulan@chromium.org

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

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

10 years agoFix polymorphic keyed loads for SLOPPY_ARGUMENTS_ELEMENTS
jkummerow@chromium.org [Wed, 19 Mar 2014 15:49:29 +0000 (15:49 +0000)]
Fix polymorphic keyed loads for SLOPPY_ARGUMENTS_ELEMENTS

BUG=chromium:350867
LOG=y
R=verwaest@chromium.org

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

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

10 years agoMIPS: Array constructor expects AllocationSite or undefined as feedback.
plind44@gmail.com [Wed, 19 Mar 2014 15:46:24 +0000 (15:46 +0000)]
MIPS: Array constructor expects AllocationSite or undefined as feedback.

Port r20064 (d2ccdc6)

Original commit message:
Redefine Array constructor to expect an AllocationSite in the feedback
register or undefined. This will make code simpler as we support
pretenuring feedback for all constructed objects.

BUG=
R=plind44@gmail.com

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

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

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

10 years agoRemoved obsolete and dead includes.
ulan@chromium.org [Wed, 19 Mar 2014 15:40:38 +0000 (15:40 +0000)]
Removed obsolete and dead includes.

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

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

Patch from Dmitry Zvorygin <zvorygin@chromium.org>.

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

10 years agoProvide default traits for PersistentValueMap
dcarney@chromium.org [Wed, 19 Mar 2014 15:35:02 +0000 (15:35 +0000)]
Provide default traits for PersistentValueMap

Re-try of issue 201643003. This caused linker errors on Win64, since the
linker insists on seeing the StrongMapTrait method implementations even
though they are never used. This will provide default implementations
for them.

R=dcarney@chromium.org

BUG=

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoMIPS: Reland "Add out-of-line constant pool support to Arm."
plind44@gmail.com [Wed, 19 Mar 2014 15:34:17 +0000 (15:34 +0000)]
MIPS: Reland "Add out-of-line constant pool support to Arm."

Port r20053 (df27abf)

Original commit message:
This CL adds out-of-line constant pool support to Arm. A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.

This CL depends on the following CLs landing first:
https://codereview.chromium.org/138503002/
https://codereview.chromium.org/179813005/
https://codereview.chromium.org/183553003/
https://codereview.chromium.org/183803022/
https://codereview.chromium.org/183883011/
https://codereview.chromium.org/186733006/
https://codereview.chromium.org/188063002/
https://codereview.chromium.org/190793002/
https://codereview.chromium.org/190823002/
https://codereview.chromium.org/190833002/
https://codereview.chromium.org/190883002/

BUG=
R=plind44@gmail.com

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

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

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

10 years agoMIPS: Tweaked FlooringDiv back to TruncatingDiv again.
plind44@gmail.com [Wed, 19 Mar 2014 15:27:38 +0000 (15:27 +0000)]
MIPS: Tweaked FlooringDiv back to TruncatingDiv again.

Port r20048 (8953785)

Original commit message:
This is a first step towards getting the flooring division by a
constant working again (which will be a separate CL).

BUG=
R=plind44@gmail.com

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

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

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

10 years agoArrayPop builtin handlified.
ishell@chromium.org [Wed, 19 Mar 2014 15:25:04 +0000 (15:25 +0000)]
ArrayPop builtin handlified.

R=yangguo@chromium.org

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

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

10 years agoHandlification of JSArray::SetElementsLength().
ishell@chromium.org [Wed, 19 Mar 2014 14:09:50 +0000 (14:09 +0000)]
Handlification of JSArray::SetElementsLength().

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

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

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

10 years agoMove ParseUnaryExpression into ParserBase and add tests.
marja@chromium.org [Wed, 19 Mar 2014 14:08:47 +0000 (14:08 +0000)]
Move ParseUnaryExpression into ParserBase and add tests.

This also makes PreParser produce the strict_delete error the same way as
Parser (see test).

R=rossberg@chromium.org
BUG=

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

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

10 years agoRevert "Move ParseUnaryExpression into ParserBase and add tests."
marja@chromium.org [Wed, 19 Mar 2014 13:58:15 +0000 (13:58 +0000)]
Revert "Move ParseUnaryExpression into ParserBase and add tests."

This reverts revision 20077.

Reason: build fail on some compilers.

BUG=
TBR=marja@chromium.org,rossberg@chromium.org

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

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

10 years agoMove ParseUnaryExpression into ParserBase and add tests.
marja@chromium.org [Wed, 19 Mar 2014 13:42:41 +0000 (13:42 +0000)]
Move ParseUnaryExpression into ParserBase and add tests.

This also makes PreParser produce the strict_delete error the same way as
Parser (see test).

R=rossberg@chromium.org
BUG=

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

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

10 years agoPretenure call new support.
mvstanton@chromium.org [Wed, 19 Mar 2014 13:39:09 +0000 (13:39 +0000)]
Pretenure call new support.

When FLAG_pretenure_call_new is on, we emit mementos on new object creation
in full code, and consume the feedback in crankshaft. A key difference in the
generated code for stubs is the allocation of an additional type vector slot for the
CallNew AST node, which simplifies the CallConstructStub and CallFunctionStub
considerably.

Some performance tuning still needs to be addressed, therefore the flag is off at
this moment, though fully functional. The goal is to remove the flag as soon as
possible, which allows much code deletion (yay).

R=hpayer@chromium.org

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

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

10 years agoNew compilation API, part 2.
marja@chromium.org [Wed, 19 Mar 2014 13:24:13 +0000 (13:24 +0000)]
New compilation API, part 2.

This CL makes the Parser produce the data PreParser used to produce. This
enables us to get rid of the unnecessary preparsing phase.

The first part is here: https://codereview.chromium.org/199063003/

BUG=
R=dcarney@chromium.org, svenpanne@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.20.
machenbach@chromium.org [Wed, 19 Mar 2014 13:13:23 +0000 (13:13 +0000)]
Prepare push to trunk.  Now working on version 3.25.20.

R=yangguo@chromium.org
TBR=yangguo@chromium.org

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

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

10 years agoRetrieve current version from trunk branch in push-to-trunk.
machenbach@chromium.org [Wed, 19 Mar 2014 13:10:41 +0000 (13:10 +0000)]
Retrieve current version from trunk branch in push-to-trunk.

- This moves retrieving and incrementing the version before creating the change log
- Before the prepare push commit will be deprecated (follow up CL), the script deals with 3 build levels. X: the current build level on the last trunk push. X + 1: the build level for this trunk push. X + 2: the build level of the new version file on bleeding edge (to be deprecated).

BUG=
R=jkummerow@chromium.org

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

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

10 years agoIntroduce API to trigger exception on JS execution.
yangguo@chromium.org [Wed, 19 Mar 2014 13:06:53 +0000 (13:06 +0000)]
Introduce API to trigger exception on JS execution.

R=jochen@chromium.org, pmarch@chromium.org

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

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

10 years agoTemporarily disable evacuation verification for parallel-concurrently swept pages.
hpayer@chromium.org [Wed, 19 Mar 2014 11:56:11 +0000 (11:56 +0000)]
Temporarily disable evacuation verification for parallel-concurrently swept pages.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoArray constructor expects AllocationSite or undefined as feedback.
mvstanton@chromium.org [Wed, 19 Mar 2014 11:51:30 +0000 (11:51 +0000)]
Array constructor expects AllocationSite or undefined as feedback.

Redefine Array constructor to expect an AllocationSite in the feedback
register or undefined. This will make code simpler as we support
pretenuring feedback for all constructed objects.

R=hpayer@chromium.org

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

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

10 years agoAccount for right object size when left trimming arrays.
hpayer@chromium.org [Wed, 19 Mar 2014 11:37:56 +0000 (11:37 +0000)]
Account for right object size when left trimming arrays.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoIntroduce per-isolate assert scopes and API to guard JS execution.
yangguo@chromium.org [Wed, 19 Mar 2014 11:31:43 +0000 (11:31 +0000)]
Introduce per-isolate assert scopes and API to guard JS execution.

R=jochen@chromium.org

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

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

10 years agoAccess old space marking bits from runtime only when incremental marking is in MARKIN...
hpayer@chromium.org [Wed, 19 Mar 2014 10:48:54 +0000 (10:48 +0000)]
Access old space marking bits from runtime only when incremental marking is in MARKING state.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoRun mozilla and webkit of fast quickcheck archs as well
jochen@chromium.org [Wed, 19 Mar 2014 10:48:44 +0000 (10:48 +0000)]
Run mozilla and webkit of fast quickcheck archs as well

BUG=none
R=svenpanne@chromium.org
LOG=n

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.19.
machenbach@chromium.org [Wed, 19 Mar 2014 10:48:20 +0000 (10:48 +0000)]
Prepare push to trunk.  Now working on version 3.25.19.

R=yangguo@chromium.org
TBR=yangguo@chromium.org

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

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

10 years agoDirectly modify version file on trunk branch in push-to-trunk.
machenbach@chromium.org [Wed, 19 Mar 2014 10:46:24 +0000 (10:46 +0000)]
Directly modify version file on trunk branch in push-to-trunk.

- This also shifts the push revision by one to prepare for the deprecation of the prepare push commit
- The version increment is still based on the bleeding_edge version.cc. This will be changed in a follow up CL.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoReland "Add out-of-line constant pool support to Arm."
rmcilroy@chromium.org [Wed, 19 Mar 2014 10:32:12 +0000 (10:32 +0000)]
Reland "Add out-of-line constant pool support to Arm."

This CL adds out-of-line constant pool support to Arm.  A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.

This CL depends on the following CLs landing first:
  https://codereview.chromium.org/138503002/
  https://codereview.chromium.org/179813005/
  https://codereview.chromium.org/183553003/
  https://codereview.chromium.org/183803022/
  https://codereview.chromium.org/183883011/
  https://codereview.chromium.org/186733006/
  https://codereview.chromium.org/188063002/
  https://codereview.chromium.org/190793002/
  https://codereview.chromium.org/190823002/
  https://codereview.chromium.org/190833002/
  https://codereview.chromium.org/190883002/

R=ulan@chromium.org

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

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

10 years agoRevert "Add out-of-line constant pool support to Arm."
yangguo@chromium.org [Wed, 19 Mar 2014 09:53:58 +0000 (09:53 +0000)]
Revert "Add out-of-line constant pool support to Arm."

This reverts commit r20051.

TBR=rmcilroy@chromium.org

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

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

10 years agoAdd out-of-line constant pool support to Arm.
rmcilroy@chromium.org [Wed, 19 Mar 2014 09:38:20 +0000 (09:38 +0000)]
Add out-of-line constant pool support to Arm.

This CL adds out-of-line constant pool support to Arm.  A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.

This CL depends on the following CLs landing first:
  https://codereview.chromium.org/138503002/
  https://codereview.chromium.org/179813005/
  https://codereview.chromium.org/183553003/
  https://codereview.chromium.org/183803022/
  https://codereview.chromium.org/183883011/
  https://codereview.chromium.org/186733006/
  https://codereview.chromium.org/188063002/
  https://codereview.chromium.org/190793002/
  https://codereview.chromium.org/190823002/
  https://codereview.chromium.org/190833002/
  https://codereview.chromium.org/190883002/

R=ulan@chromium.org

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

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

10 years agoAdded sweeping time measurement for old space sweeping.
hpayer@chromium.org [Wed, 19 Mar 2014 09:27:42 +0000 (09:27 +0000)]
Added sweeping time measurement for old space sweeping.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoIntroduce Push and Pop macro instructions for x64
haitao.feng@intel.com [Wed, 19 Mar 2014 08:59:04 +0000 (08:59 +0000)]
Introduce Push and Pop macro instructions for x64

R=verwaest@chromium.org

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

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

10 years agoTweaked FlooringDiv back to TruncatingDiv again.
svenpanne@chromium.org [Wed, 19 Mar 2014 07:01:08 +0000 (07:01 +0000)]
Tweaked FlooringDiv back to TruncatingDiv again.

This is a first step towards getting the flooring division by a
constant working again (which will be a separate CL).

R=bmeurer@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.18.
machenbach@chromium.org [Wed, 19 Mar 2014 01:04:33 +0000 (01:04 +0000)]
Prepare push to trunk.  Now working on version 3.25.18.

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

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

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

10 years ago(Pre)Parser unification: use shorter type names.
marja@chromium.org [Tue, 18 Mar 2014 17:05:38 +0000 (17:05 +0000)]
(Pre)Parser unification: use shorter type names.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoA64: Use appropriate return types for the simulator fpcr and nzcv members.
alexandre.rames@arm.com [Tue, 18 Mar 2014 16:44:07 +0000 (16:44 +0000)]
A64: Use appropriate return types for the simulator fpcr and nzcv members.

R=ulan@chromium.org

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

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

10 years agoRevert "First attempt at providing default traits for PersistentValueMap."
yangguo@chromium.org [Tue, 18 Mar 2014 16:32:39 +0000 (16:32 +0000)]
Revert "First attempt at providing default traits for PersistentValueMap."

This reverts r20038.

TBR=vogelheim@chromium.org

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

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

10 years agoIncrease pretenure ratio from 60% to 85%
mvstanton@chromium.org [Tue, 18 Mar 2014 15:19:35 +0000 (15:19 +0000)]
Increase pretenure ratio from 60% to 85%

As pretenure-call-new comes online, this is a better performing ratio
overall.

R=hpayer@chromium.org

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

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

10 years agoRemove Promise.cast
rossberg@chromium.org [Tue, 18 Mar 2014 15:03:35 +0000 (15:03 +0000)]
Remove Promise.cast

...as per January meeting. Renames 'cast' to 'resolve'. We rename the prior 'resolve' to 'accept', to keep the chain API usable.

R=svenpanne@chromium.org
BUG=

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

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

10 years agoA64: ElementsKind TODOs
m.m.capewell@googlemail.com [Tue, 18 Mar 2014 15:01:55 +0000 (15:01 +0000)]
A64: ElementsKind TODOs

Replace LoadElementsKind with LoadElementsKindFromMap, remove unneeded TODO in
DoStringCharFromCode, improve constraints for DoCheckValue and improve code for
ElementsKind checking in StoreArrayLiteralElementStub.

BUG=
R=ulan@chromium.org

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

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

10 years agoFirst attempt at providing default traits for PersistentValueMap.
dcarney@chromium.org [Tue, 18 Mar 2014 15:01:12 +0000 (15:01 +0000)]
First attempt at providing default traits for PersistentValueMap.

BUG=
R=dcarney@chromium.org

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoPromises: make null a legal argument for .then
rossberg@chromium.org [Tue, 18 Mar 2014 14:55:43 +0000 (14:55 +0000)]
Promises: make null a legal argument for .then

R=svenpanne@chromium.org
BUG=

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

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

10 years agoA64: Force emission of the veneer pool emission when required.
alexandre.rames@arm.com [Tue, 18 Mar 2014 14:26:26 +0000 (14:26 +0000)]
A64: Force emission of the veneer pool emission when required.

R=ulan@chromium.org

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

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

10 years agoRefactor GetCodeCopyFromTemplate to get a single point where objects are replaced...
ulan@chromium.org [Tue, 18 Mar 2014 14:15:09 +0000 (14:15 +0000)]
Refactor GetCodeCopyFromTemplate to get a single point where objects are replaced in code.

BUG=
R=verwaest@chromium.org

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

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

10 years agoA64: Handle a few TODOs.
alexandre.rames@arm.com [Tue, 18 Mar 2014 14:00:21 +0000 (14:00 +0000)]
A64: Handle a few TODOs.

Below are notes about some of the TODOs handled.

* In Simulator::Debug:
    We haven't had issues with printing in the debugger for a while. If the
    feature turns out to be still lacking an issue can be raised.

* In SubStringStub::Generate:
    There is no need to jump there. The StringCharAtGenerator is asked to set
    the result in x0, and the return sequence following only uses two instructions.
    Also, we would need to jump after the native counter increment instead of the
    return_x0 label.

* In ArrayPushStub::Generate:
    Raised an internal issue to check and update the ARM code.

* In MacroAssembler::CopyBytes:
    The new code should be faster for bulk copies. Raised an internal issue to
    investigate and improve this function.

* In MacroAssembler::EnterExitFrame:
    Unless we actually find something is wrong, this is working and looks ok.
    Also fixed the comments about the FP registers.

* Comment for BumpSystemStackPointer:
    Removed the comment at the declaration site and updated the TODO in the
    implementation.

R=ulan@chromium.org

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

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

10 years agoFix TransitionElementsKindStub to handle non-JSArray objects correctly.
ulan@chromium.org [Tue, 18 Mar 2014 13:29:29 +0000 (13:29 +0000)]
Fix TransitionElementsKindStub to handle non-JSArray objects correctly.

BUG=352982
LOG=N
TEST=mjsunit/regress/regress-352982.js
R=danno@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.17.
machenbach@chromium.org [Tue, 18 Mar 2014 13:02:41 +0000 (13:02 +0000)]
Prepare push to trunk.  Now working on version 3.25.17.

R=yangguo@chromium.org
TBR=yangguo@chromium.org

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

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

10 years agoDeprecate ChangeLog on bleeding_edge.
machenbach@chromium.org [Tue, 18 Mar 2014 12:46:48 +0000 (12:46 +0000)]
Deprecate ChangeLog on bleeding_edge.

- This adds a sentinel to the ChangeLog on bleeding edge.
- Modifying the ChangeLog file directly when pushing to trunk is now no longer possible. If further modifications to the ChangeLog in manual push-to-trunk mode are required (e.g. after the prepare push LGTM), the change log entry temp file must be edited.
- Functionality that is no longer needed is removed.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoHandlify callers of Object::GetElement.
yangguo@chromium.org [Tue, 18 Mar 2014 12:34:02 +0000 (12:34 +0000)]
Handlify callers of Object::GetElement.

R=ishell@chromium.org

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

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

10 years agoFix race between VisitSmiRoots and SetStackLimit.
yangguo@chromium.org [Tue, 18 Mar 2014 12:21:07 +0000 (12:21 +0000)]
Fix race between VisitSmiRoots and SetStackLimit.

R=hpayer@chromium.org

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

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

10 years agoIntroduce representation types
rossberg@chromium.org [Tue, 18 Mar 2014 11:50:18 +0000 (11:50 +0000)]
Introduce representation types

Also:
- improve type pretty-printing,
- update doc comments,
- some renamings for consistency.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoHandlification of ArrayConstructorCommon().
ishell@chromium.org [Tue, 18 Mar 2014 11:38:27 +0000 (11:38 +0000)]
Handlification of ArrayConstructorCommon().

R=yangguo@chromium.org

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

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