Commit Graph

15537 Commits

Author SHA1 Message Date
svenpanne@chromium.org
ccef98ec0d 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
2014-03-26 10:35:31 +00:00
rossberg@chromium.org
95908dbb09 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
2014-03-26 10:14:04 +00:00
alexandre.rames@arm.com
f921ef399c 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
2014-03-26 10:11:01 +00:00
jkummerow@chromium.org
c6bff48f09 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
2014-03-26 10:01:53 +00:00
baptiste.afsa@arm.com
46a9c7a350 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
2014-03-26 09:39:09 +00:00
svenpanne@chromium.org
58c45cdd03 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
2014-03-26 08:57:21 +00:00
yangguo@chromium.org
9297e8b4b5 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
2014-03-26 08:55:19 +00:00
hpayer@chromium.org
b90beee7f5 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
2014-03-26 08:01:20 +00:00
machenbach@chromium.org
2ed676246b 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
2014-03-26 07:40:32 +00:00
haitao.feng@intel.com
479248f3d8 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
2014-03-26 01:13:09 +00:00
plind44@gmail.com
590707184d 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
2014-03-25 17:40:36 +00:00
mvstanton@chromium.org
839588d411 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
2014-03-25 16:32:23 +00:00
ulan@chromium.org
d334c09bf4 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
2014-03-25 16:14:46 +00:00
ulan@chromium.org
d0fe2952f3 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
2014-03-25 16:09:29 +00:00
ishell@chromium.org
f306341b46 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
2014-03-25 15:33:22 +00:00
dslomov@chromium.org
f66af4feb4 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
2014-03-25 14:26:55 +00:00
verwaest@chromium.org
c432f7166c 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
2014-03-25 14:14:58 +00:00
dslomov@chromium.org
cdc9812756 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
2014-03-25 14:12:58 +00:00
baptiste.afsa@arm.com
9ae45df65c 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
2014-03-25 13:45:17 +00:00
alexandre.rames@arm.com
d021973747 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
2014-03-25 13:35:19 +00:00
ulan@chromium.org
cb0f49c18a 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
2014-03-25 13:26:41 +00:00
dslomov@chromium.org
654b6a27d1 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
2014-03-25 13:21:58 +00:00
yangguo@chromium.org
95dfa17c34 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
2014-03-25 13:02:03 +00:00
dslomov@chromium.org
727bc2153e 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
2014-03-25 12:58:22 +00:00
dslomov@chromium.org
de690b656f 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
2014-03-25 12:55:10 +00:00
dslomov@chromium.org
322a474bf2 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
2014-03-25 12:51:49 +00:00
jochen@chromium.org
04eefb86f4 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
2014-03-25 12:05:33 +00:00
hpayer@chromium.org
51571d8ff9 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
2014-03-25 11:57:26 +00:00
mstarzinger@chromium.org
95f61f9243 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
2014-03-25 11:46:28 +00:00
ishell@chromium.org
a883bc72cc 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
2014-03-25 11:26:42 +00:00
rossberg@chromium.org
2e1b16de2a 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
2014-03-25 10:57:52 +00:00
alexandre.rames@arm.com
25fd28827d 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
2014-03-25 10:33:50 +00:00
svenpanne@chromium.org
09753b4a81 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
2014-03-25 10:17:02 +00:00
yangguo@chromium.org
4ca46f3c3f 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
2014-03-25 10:15:12 +00:00
ishell@chromium.org
0d7bdc0fd6 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
2014-03-25 09:51:13 +00:00
yangguo@chromium.org
793d4cb0b6 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
2014-03-25 09:38:48 +00:00
ishell@chromium.org
1ad4e2cc35 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
2014-03-25 09:29:48 +00:00
yangguo@chromium.org
82f630a9f7 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
2014-03-25 09:09:24 +00:00
titzer@chromium.org
3c31102025 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
2014-03-25 09:06:16 +00:00
jarin@chromium.org
b765d3cdb9 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
2014-03-24 21:32:19 +00:00
jarin@chromium.org
56f2006605 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
2014-03-24 20:51:36 +00:00
dcarney@chromium.org
5664936497 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
2014-03-24 19:36:59 +00:00
ishell@chromium.org
f888aa19ae 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
2014-03-24 19:12:43 +00:00
plind44@gmail.com
3f21803844 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
2014-03-24 18:17:14 +00:00
ishell@chromium.org
5e892f7f50 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
2014-03-24 18:15:44 +00:00
baptiste.afsa@arm.com
688d07d11b 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
2014-03-24 17:43:56 +00:00
alexandre.rames@arm.com
e577a18bd8 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
2014-03-24 17:41:37 +00:00
rossberg@chromium.org
33be68c2fa 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
2014-03-24 16:59:04 +00:00
m.m.capewell@googlemail.com
86f5302002 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
2014-03-24 16:41:37 +00:00
rossberg@chromium.org
ff1186c834 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
2014-03-24 16:34:06 +00:00