rmcilroy@chromium.org [Wed, 26 Mar 2014 18:23:34 +0000 (18:23 +0000)]
Modify toolchain.gypi to avoid adding -m64 flag on android.
The -m64 flag isn't supported on Android. Add a similar gyp condition to avoid
setting the flag on Android in a similar manner to how the -m32 flag is avoided
on android.
BUG=354405
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212863007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20289
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Wed, 26 Mar 2014 18:04:30 +0000 (18:04 +0000)]
Update atomicops_internals_arm64_gcc with changes made in chromium base/
BUG=354405
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212673006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 26 Mar 2014 16:18:28 +0000 (16:18 +0000)]
Don't try to use ASan on Windows
Let ASan support depend on __has_feature(address_sanitizer) instead of defined(ADDRESS_SANITIZER)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
213133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 26 Mar 2014 16:02:00 +0000 (16:02 +0000)]
Fix noi18n compilation
TBR=machenbach@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
212163009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 26 Mar 2014 15:51:48 +0000 (15:51 +0000)]
Hide some runtime functions.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 26 Mar 2014 15:51:08 +0000 (15:51 +0000)]
[x64] Improve key value sign-extension of dehoisted LoadKeyed/StoreKeyed
Instead of sign-extending at key use, definitions that can be used as keys are sign extended immediately after the definition.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
179773002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 26 Mar 2014 15:46:05 +0000 (15:46 +0000)]
Clean up ICU data tables on shutdown.
This is only used by d8 if compiled with external data tables, or an
embedder that uses external data tables and v8's version of ICU.
BUG=none
R=svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
210973007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 26 Mar 2014 15:14:51 +0000 (15:14 +0000)]
Reland r19897 "Fix memory leak caused by treating Code::next_code_link as strong in marker.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
212553003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 26 Mar 2014 15:05:01 +0000 (15:05 +0000)]
Web page front-end for grokdump.
This is a prototype to start discussion about useful features for
a better/friendlier minidump analysis tool.
The change adds an -w option to grokdump.py. With the option on,
grokdump will launch a web server and web browser for browsing the
minidump. It also supports adding persistent comments and listing +
browsing other minidumps (in the same directory) without the need to
restart the web server.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
194573005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20281
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 26 Mar 2014 13:14:08 +0000 (13:14 +0000)]
Fix missing representation for the result of HIsSmiAndBranch.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
211273010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 26 Mar 2014 12:50:13 +0000 (12:50 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 12:15:35 +0000 (12:15 +0000)]
Introduce andp, notp, orp and xorp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
205343013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 11:17:53 +0000 (11:17 +0000)]
Introduce leap, movzxbp, movzxwp, repmovsp and xchgp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
211413008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 26 Mar 2014 10:36:52 +0000 (10:36 +0000)]
ARM64: fix DoDeferredTaggedToI
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
211063004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20272
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 26 Mar 2014 10:35:31 +0000 (10:35 +0000)]
Only assign environments when they are actually needed. (x64 only)
Twin of https://code.google.com/p/v8/source/detail?r=20231.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
211153003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20271
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 26 Mar 2014 10:14:04 +0000 (10:14 +0000)]
Promise constructor should not be enumerable.
Promise should not be enumerable in the global object.
BUG=352597
R=rossberg@chromium.org
LOG=Y
Review URL: https://codereview.chromium.org/
211943004
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Wed, 26 Mar 2014 10:11:01 +0000 (10:11 +0000)]
Reland "ARM64: Add overflow checking support for multiplications by constant powers of 2."
This includes fixes for the overflow case spotted in mjsunit/mul-exhaustive-part4.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212573002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 26 Mar 2014 10:01:53 +0000 (10:01 +0000)]
ASan support for the Zone
R=jarin@chromium.org, kcc@google.com
Review URL: https://codereview.chromium.org/
208743004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Wed, 26 Mar 2014 09:39:09 +0000 (09:39 +0000)]
ARM64: Check size of code generated in ProfileEntryHookStub::MaybeCallEntryHook.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
200023005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 26 Mar 2014 08:57:21 +0000 (08:57 +0000)]
Mark debug-stepout-scope-part8 as flaky for ARM gc-stress.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
212253005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 26 Mar 2014 08:55:19 +0000 (08:55 +0000)]
Fix interpreted regexp build.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 26 Mar 2014 08:01:20 +0000 (08:01 +0000)]
Always initialize elements pointer in fast literals.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
211103003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 26 Mar 2014 07:40:32 +0000 (07:40 +0000)]
Fix test serialization path for windows.
This work-around takes into account that MSVS doesn't build to "out".
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
202923003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 01:13:09 +0000 (01:13 +0000)]
Introduce cmpp, decp, incp, negp, sbbp and testp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
207833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 25 Mar 2014 17:40:36 +0000 (17:40 +0000)]
MIPS: Refactor optimized in hydrogen only runtime functions.
Port r20252 (d0f806b)
Original commit message:
This splits all runtime function into 3 categories:
1) RUNTIME: implemented in runtime and called from both full and optimized code.
2) RUNTIME_HIDDEN: implemented in runtime, never called directly from JS builtins.
3) INLINE: inlined in both full and optimized code
4) INLINE_OPTIMIZED: inlined in optimized code, implemented in runtime for full code.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
211453002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20257
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 25 Mar 2014 16:32:23 +0000 (16:32 +0000)]
HInnerAllocatedObject hydrogen trace printed offset incorrectly.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
210873003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 16:14:46 +0000 (16:14 +0000)]
ARM64: block veneer pool in InstructionAccurateScope.
TEST=mozilla/ecma_3/RegExp/regress-169497
TBR=alexandre.rames@arm.com
Review URL: https://codereview.chromium.org/
211323003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 16:09:29 +0000 (16:09 +0000)]
Revert r20246 "ARM64: Add overflow checking support for multiplications by constant powers of 2."
Reason: mjsunit/mul-exhaustive-part4 fails in no snaphot debug.
TBR=alexandre.rames@arm.com
Review URL: https://codereview.chromium.org/
211393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 15:33:22 +0000 (15:33 +0000)]
TransitionElementsKind() and its recursive call chain handlified.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
207553005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 14:26:55 +0000 (14:26 +0000)]
Refactor optimized in hydrogen only runtime functions.
This splits all runtime function into 3 categories:
1) RUNTIME: implemented in runtime and called from both full and optimized code.
2) RUNTIME_HIDDEN: implemented in runtime, never called directly from JS builtins.
3) INLINE: inlined in both full and optimized code
4) INLINE_OPTIMIZED: inlined in optimized code, implemented in runtime for full code.
R=yangguo@chromium.org, yannguo@chromium.org
Review URL: https://codereview.chromium.org/
209353006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 25 Mar 2014 14:14:58 +0000 (14:14 +0000)]
Don't convert dictionary sloppy arguments to fast double mode.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
207683006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 14:12:58 +0000 (14:12 +0000)]
Revert "This implements allocating small typed arrays in heap."
This reverts commit r20244 for breaking Win64 build and webkit tests.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
208503007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20250
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Tue, 25 Mar 2014 13:45:17 +0000 (13:45 +0000)]
ARM64: Minor improvement in LCodeGen::DoCheckInstanceType.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
207453008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Tue, 25 Mar 2014 13:35:19 +0000 (13:35 +0000)]
ARM64: Add overflow checking support for multiplications by constant powers of 2.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
210253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 13:26:41 +0000 (13:26 +0000)]
Add index check in DoAccessArgumentsAt.
BUG=355523
LOG=N
TEST=mjsunit/regress/regress-355523
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
210053003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20245
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 13:21:58 +0000 (13:21 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20240
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 25 Mar 2014 13:02:03 +0000 (13:02 +0000)]
Handlify Runtime::GetElementOrCharAt.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
210723004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:58:22 +0000 (12:58 +0000)]
Revert "This implements allocating small typed arrays in heap."
This reverts commit r20240 for breaking Windows build.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
211003003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:55:10 +0000 (12:55 +0000)]
Allow to neuter array buffer twice in tests.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
209083005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20241
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:51:49 +0000 (12:51 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20240
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 25 Mar 2014 12:05:33 +0000 (12:05 +0000)]
Roll ICU 239289:258359 and add support for external ICU data tables
The only binary that supports ICU data tables is d8. The location of the
data table file has to be passed via a command line switch:
$ out/x64.optdebug/d8 --icu-data-file=out/x64.optdebug/icudtl.dat
BUG=72633,v8:3142
R=danno@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/
209323014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20239
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 25 Mar 2014 11:57:26 +0000 (11:57 +0000)]
Do not left-trim arrays when concurrent sweeping is active.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
207613004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20238
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 25 Mar 2014 11:46:28 +0000 (11:46 +0000)]
Extend GCMole to cover ARM64 architecture.
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
210973003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 11:26:42 +0000 (11:26 +0000)]
Fix for GCMole issue.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
210963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 25 Mar 2014 10:57:52 +0000 (10:57 +0000)]
Revert "Ship promises and weak collections"
Reason: breaks Blink layout tests.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
210853003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Tue, 25 Mar 2014 10:33:50 +0000 (10:33 +0000)]
ARM64: Optimize RegList::IsValid() to speed up simulation in (opt)debug mode.
On my machine this improves the simulation speed noticeably.
| test | base | patched |
|--------------------|-------|---------|
| optdebug | 15:37 | 11:07 |
| debug --quickcheck | 33:53 | 26:14 |
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209353010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 25 Mar 2014 10:17:02 +0000 (10:17 +0000)]
Only assign environments when they are actually needed. (ia32 only)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
210783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 25 Mar 2014 10:15:12 +0000 (10:15 +0000)]
Handlify GetElementWithReceiver and GetElementWithInterceptor.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
210763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 09:51:13 +0000 (09:51 +0000)]
Callers of ElementsAccessor::SetCapacityAndLength() handlified.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
210063004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 25 Mar 2014 09:38:48 +0000 (09:38 +0000)]
Fix issues when changing FLAG_concurrent_recompilation after init.
R=jarin@chromium.org
BUG=356053
LOG=N
Review URL: https://codereview.chromium.org/
210363005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 09:29:48 +0000 (09:29 +0000)]
Reland of "FastElementsAccessor::SetLengthWithoutNormalize() handlified."
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
210563003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 25 Mar 2014 09:09:24 +0000 (09:09 +0000)]
Reland "No longer OOM on invalid string length."
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
210683003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20225
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 25 Mar 2014 09:06:16 +0000 (09:06 +0000)]
First implementation of store elimination.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
100253004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20224
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 24 Mar 2014 21:32:19 +0000 (21:32 +0000)]
Revert the (wrong) fix of the argument index check asserion.
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
208423017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 24 Mar 2014 20:51:36 +0000 (20:51 +0000)]
Fix to get around an assertion that triggers when generating code that happens to be dead because the assertion is checked a bit earlier at runtime.
R=ishell@chromium.org
BUG=355486
LOG=N
Review URL: https://codereview.chromium.org/
201573011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20218
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
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