dcarney@chromium.org [Mon, 24 Mar 2014 19:36:59 +0000 (19:36 +0000)]
fix FunctionCallbackInfo ambiguity
- when compiling tools that embed v8 with g++ FunctionCallbackInfo is currently ambigous
- more info: https://github.com/joyent/node/issues/7337
- original patch is here: https://codereview.appspot.com/
78770045/
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
201573012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 24 Mar 2014 19:12:43 +0000 (19:12 +0000)]
Revert "FastElementsAccessor::SetLengthWithoutNormalize() handlified."
This reverts commit r20214 for breaking debug tests on various platforms.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
208313015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Mon, 24 Mar 2014 18:17:14 +0000 (18:17 +0000)]
MIPS: Replaced unreachable code in DoStoreNamedField by an assertion.
Port r20194 (2dfda0f)
Original commit message:
This is part of the effort to assign an environment if and only if we can deopt.
Removed some related dead code on the way.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
210023004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 24 Mar 2014 18:15:44 +0000 (18:15 +0000)]
FastElementsAccessor::SetLengthWithoutNormalize() handlified.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
208313012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Mon, 24 Mar 2014 17:43:56 +0000 (17:43 +0000)]
ARM64: Prevent compilers to optimize away NaN negation in tests.
BUG=v8:3226
R=ulan@chromium.org, jochen@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
196173021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20213
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Mon, 24 Mar 2014 17:41:37 +0000 (17:41 +0000)]
ARM64: Fix Register and FPRegister copy constructors.
This issue was introduced in r19156.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
207743003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20212
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 24 Mar 2014 16:59:04 +0000 (16:59 +0000)]
Ship promises and weak collections
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
206163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 24 Mar 2014 16:41:37 +0000 (16:41 +0000)]
ARM64: push/pop registers in stubs for safepoints
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209933003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 24 Mar 2014 16:34:06 +0000 (16:34 +0000)]
Add support for per-isolate private symbols
R=mstarzinger@chromium.org
BUG=
LOG=Y
Review URL: https://codereview.chromium.org/
196103004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20209
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 24 Mar 2014 16:25:48 +0000 (16:25 +0000)]
Ensure the constant operand for heap-object store-named-field is not a smi.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
210193002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 24 Mar 2014 16:11:28 +0000 (16:11 +0000)]
ARM64: optimize call immediate
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20207
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 24 Mar 2014 15:56:35 +0000 (15:56 +0000)]
Enable x64 build for Android
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209323004
Patch from Yang Gu <yang.gu@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20206
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 24 Mar 2014 15:52:31 +0000 (15:52 +0000)]
Change auto-roll to auto-push for automatic trunk pushes.
The current script is only performing automatic pushes to trunk. This prepares for adding an auto-roll script that actually rolls to Chromium.
This also removes the v8-status updates, which are no longer necessary due to not touching bleeding edge any more.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
196173018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 24 Mar 2014 15:45:52 +0000 (15:45 +0000)]
Spec adjustments for well-known symbols
R=arv@chromium.org, mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
208423013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 15:36:15 +0000 (15:36 +0000)]
Revert "No longer OOM on invalid string length."
This reverts r20202.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
210143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 15:01:17 +0000 (15:01 +0000)]
No longer OOM on invalid string length.
R=ishell@chromium.org
BUG=v8:3060
LOG=Y
Review URL: https://codereview.chromium.org/
207613005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 24 Mar 2014 14:43:41 +0000 (14:43 +0000)]
Add parser-shell.
parser-shell will help to see how much PreParsing gets slower when PreParser
starts doing more checks (especially tracking variables and scopes). It will
also show how much having preparse data (or cached data) speeds up the parsing.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209353008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 24 Mar 2014 14:41:55 +0000 (14:41 +0000)]
Parser fix: check allow_harmony_scoping() instead of FLAG_harmony_scoping.
Without this fix, ParserBase::set_allow_harmony_scoping() and the
kAllowHarmonyScoping in test-parsing.cc don't have any effect, and we end up not
running the tests with harmony scoping allowed.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209993002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 24 Mar 2014 14:41:01 +0000 (14:41 +0000)]
Use HType::Tagged when allocating elements.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
201573010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Mon, 24 Mar 2014 14:18:06 +0000 (14:18 +0000)]
ARM64: Use a double register to break cycle involving double values.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
208183002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 14:16:14 +0000 (14:16 +0000)]
Correctly convert micro-sign to its upper case.
R=dcarney@chromium.org
BUG=355485
LOG=N
Review URL: https://codereview.chromium.org/
209323007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Mon, 24 Mar 2014 14:11:26 +0000 (14:11 +0000)]
MIPS: Do stack checks while pushing locals.
Port r20176 (a1bfd83)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
208323010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 14:10:57 +0000 (14:10 +0000)]
Fix DebugEvaluate for generators.
R=mstarzinger@chromium.org
BUG=v8:3225
LOG=N
Review URL: https://codereview.chromium.org/
207153004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 24 Mar 2014 13:16:23 +0000 (13:16 +0000)]
Replaced unreachable code in DoStoreNamedField by an assertion.
This is part of the effort to assign an environment if and only if we can deopt.
Removed some related dead code on the way.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
209873005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 24 Mar 2014 13:04:20 +0000 (13:04 +0000)]
Fix debuggersupport=off build after r17184 and r18149.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209533002
Patch from Kang-Hao (Kenny) Lu <kennyluck@csail.mit.edu>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 24 Mar 2014 13:00:05 +0000 (13:00 +0000)]
IA32: Rename MacroAssembler::Set() and MacroAssembler::SafeSet() to Move() and SafeMove().
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
208073003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 24 Mar 2014 13:00:01 +0000 (13:00 +0000)]
ARM64: update the path to android_stlport_libs.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
209383007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 24 Mar 2014 12:49:26 +0000 (12:49 +0000)]
Follow up to r20125 (enabling tests).
These tests were never meant to be disabled.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 24 Mar 2014 12:16:09 +0000 (12:16 +0000)]
PreParser cleanup: no need to track with-ness of scopes.
Historically, we used to track the "with-ness" of a scope differently; not
creating a with scope, but setting a property on the scope (see
https://codereview.chromium.org/5166006 ). For laziness decisions, checking the
with-ness should be unnecessary: the current scope is function scope, and if the
outer scope is global scope, there's surely no with scope in between.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209863004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 24 Mar 2014 12:13:58 +0000 (12:13 +0000)]
Fix component build some more.
Not V8_EXPORTing ScriptCompiler::Source got rid of the last errors. This fixes
the new ones created by it. V8_INLINEing these funcs makes sense anyway.
In addition, added declared-private-and-unimplemented assignment operators
which were accidentally omitted.
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
209873004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 24 Mar 2014 10:41:33 +0000 (10:41 +0000)]
Revert "A64: Now that we have veneers, fix a couple of branches to directly jump to their target."
This reverts commit r20169, it heavily regresses a Mozilla test:
make -j32 arm64.release.check TESTFLAGS=--time TESTJOBS=mozilla/js1_5/Regress/regress-280769-2
Before:
--- Total time: 00:01.928 ---
1 (00:01.911) mozilla/js1_5/Regress/regress-280769-2
2 (00:01.910) mozilla/js1_5/Regress/regress-280769-2
3 (00:01.910) mozilla/js1_5/Regress/regress-280769-2
After:
--- Total time: 01:36.025 ---
1 (01:36.004) mozilla/js1_5/Regress/regress-280769-2
2 (01:35.403) mozilla/js1_5/Regress/regress-280769-2
3 (01:32.098) mozilla/js1_5/Regress/regress-280769-2
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209333004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 24 Mar 2014 10:37:16 +0000 (10:37 +0000)]
Delete mjsunit/string-oom-slow-* tests.
They are too slow, and there is no feasible way to speed them up.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
205553005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 24 Mar 2014 10:18:27 +0000 (10:18 +0000)]
[ia32/x64] Smaller instruction to check NaN
substract 1 and test for overflow
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
202083002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 10:07:15 +0000 (10:07 +0000)]
Reland "Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException."
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
209903003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 09:17:18 +0000 (09:17 +0000)]
Revert "Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException."
This reverts r20179.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
201573007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Mon, 24 Mar 2014 09:09:49 +0000 (09:09 +0000)]
Remove an unused isolate_ field from BacktrackStack.
Found by Nico Weber with -Wunused-private-field
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
208613002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 24 Mar 2014 09:06:04 +0000 (09:06 +0000)]
Use V8_FINAL and V8_OVERRIDE in ElementsAccessor classses.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
208063002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 24 Mar 2014 08:48:36 +0000 (08:48 +0000)]
Builtin helper function EnsureJSArrayWithWritableFastElements() handlified.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
208033002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 08:47:45 +0000 (08:47 +0000)]
Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException.
R=dcarney@chromium.org
BUG=v8:3060
LOG=Y
Review URL: https://codereview.chromium.org/
208263002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 24 Mar 2014 08:41:59 +0000 (08:41 +0000)]
add setaccessorproperty to object
R=svenpanne@chromium.org
LOG=N
BUG=v8:2964
Review URL: https://codereview.chromium.org/
209853002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 08:22:24 +0000 (08:22 +0000)]
Refactor inlined typed array runtime functions.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
203443002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 24 Mar 2014 08:17:06 +0000 (08:17 +0000)]
Do stack checks while pushing locals
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
207543003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 24 Mar 2014 08:03:15 +0000 (08:03 +0000)]
Fix options for calling push-to-trunk script.
BUG=
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
209833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 24 Mar 2014 07:44:50 +0000 (07:44 +0000)]
Disable concurrent OSR.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
208263011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Fri, 21 Mar 2014 15:59:45 +0000 (15:59 +0000)]
ARM: fix assertions for uxtb and co.
Allow operands with ROR #0. Behind the scene they are mapped to LSL #0.
BUG=v8:3209
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
198053014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 21 Mar 2014 15:24:36 +0000 (15:24 +0000)]
Tentative Windows dll build fix: Don't V8_EXPORT ScriptCompiler::Source.
For more information, see the bug. Compare to ScriptOrigin
which is not exported either.
BUG=v8:3228
LOG=Y
R=dcarney@chromium.org, jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
207703004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Fri, 21 Mar 2014 15:08:50 +0000 (15:08 +0000)]
A64: Now that we have veneers, fix a couple of branches to directly jump to their target.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
207883002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 21 Mar 2014 15:04:54 +0000 (15:04 +0000)]
Let auto-roll push the lkgr.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
205703004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 21 Mar 2014 15:03:40 +0000 (15:03 +0000)]
Add special check for topmost optimized code in deoptimizer verification.
BUG=354843
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
208283002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 21 Mar 2014 14:29:27 +0000 (14:29 +0000)]
JSObject::EnsureCanContainElements() handlified.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
198053013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 21 Mar 2014 14:05:49 +0000 (14:05 +0000)]
Enable concurrent OSR.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
208253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20165
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Fri, 21 Mar 2014 13:11:50 +0000 (13:11 +0000)]
ARM64: Fix some stub-cache TODOs
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
208023002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20164
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Fri, 21 Mar 2014 13:04:20 +0000 (13:04 +0000)]
ARM: Fix Q register encoding
Fix Q register encoding for registers other than Q0. Also, fix value in NeonSize
enumeration.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
207523005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20163
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 21 Mar 2014 12:30:58 +0000 (12:30 +0000)]
Add option to run ScopeIterator faster giving up nested scope chain.
We'd like to be able to trade nested scope chain info (consisting of with, block and catch scopes) in favor of speed in some cases.
BUG=chromium:340285
LOG=N
R=ulan@chromium.org, pfeldman, ulan, yangguo
Review URL: https://codereview.chromium.org/
203463011
Patch from Andrey Adaykin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20162
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 21 Mar 2014 12:23:39 +0000 (12:23 +0000)]
Reland of r20146 "JSObject::NormalizeElements() handlified."
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
208003002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20161
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Fri, 21 Mar 2014 12:16:37 +0000 (12:16 +0000)]
Add a utility method to the ia32 macro assembler to move a double immediate into an XMM register.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
197233011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20160
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 21 Mar 2014 12:15:25 +0000 (12:15 +0000)]
Split of rolling Chromium from push-to-trunk.
This moves rolling Chromium into a new script with its own tests.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
199733012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20159
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 21 Mar 2014 12:14:44 +0000 (12:14 +0000)]
Visit return statement of inlined function in value context.
BUG=354357
LOG=N
TEST=mjsunit/regress/regress-354357.js
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
206413005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20158
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 21 Mar 2014 11:45:54 +0000 (11:45 +0000)]
Mark CollectCpuProfile as flaky.
R=machenbach@chromium.org
BUG=v8:2999
LOG=N
Review URL: https://codereview.chromium.org/
208043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20157
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 21 Mar 2014 11:22:16 +0000 (11:22 +0000)]
ArraySplice builtin handlified.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
206073007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20156
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 21 Mar 2014 11:02:15 +0000 (11:02 +0000)]
Ensure that lazy deopt sequence does not override calls.
BUG=354433
LOG=N
TEST=mjsunit/regress/regress-354433.js
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
198463006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20155
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 21 Mar 2014 10:42:19 +0000 (10:42 +0000)]
Revert "JSObject::NormalizeElements() handlified."
This reverts commit r20146 which broke V8 GC Stress, Mjsunit tests.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
207963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20154
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 21 Mar 2014 10:34:51 +0000 (10:34 +0000)]
Move new expression parsing funcs to ParserBase.
Functions moved: ParseMemberWithNewPrefixesExpression, ParseMemberExpression,
ParseMemberExpressionContinuation.
Now all Parse*Expression functions are in ParserBase.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
207633003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20153
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 21 Mar 2014 10:34:07 +0000 (10:34 +0000)]
Skip string-oom tests on nacl.
R=machenbach@chromium.org
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
207633004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20152
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 21 Mar 2014 10:02:57 +0000 (10:02 +0000)]
Mark test-assembler-arm64/fmadd_fmsub_float_nans on arm64 as flaky
BUG=v8:3226
LOG=n
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
205863004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20151
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 21 Mar 2014 09:51:33 +0000 (09:51 +0000)]
Move ParseLeftHandSideExpression to ParserBase.
Includes cleanups:
- Reorganized functions in PreParserFactory to be in the logical order.
- De-hackified things PreParser doesn't need to track, such as IsCall & IsCallNew.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
206433003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20150
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 21 Mar 2014 09:46:18 +0000 (09:46 +0000)]
Move ParsePostfixExpression into ParserBase.
+ enable a test which checks that Parser and PreParser produce the "invalid left
hand side" errors consistently.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
202333004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20149
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 21 Mar 2014 09:28:26 +0000 (09:28 +0000)]
Rename A64 port to ARM64 port
BUG=354405
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=y
Review URL: https://codereview.chromium.org/
207823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20148
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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