platform/upstream/v8.git
10 years agoExtend ArrayPop hydrogen support to COW arrays and popping from empty arrays.
verwaest@chromium.org [Wed, 29 Jan 2014 12:53:40 +0000 (12:53 +0000)]
Extend ArrayPop hydrogen support to COW arrays and popping from empty arrays.

R=mvstanton@chromium.org

BUG=

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

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

10 years agoDon't create dummy uses for control dependencies.
bmeurer@chromium.org [Wed, 29 Jan 2014 12:48:32 +0000 (12:48 +0000)]
Don't create dummy uses for control dependencies.

R=svenpanne@chromium.org

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

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

10 years agoUse IfBuilder instead of handcrafted basic blocks in GenerateSetValueOf().
bmeurer@chromium.org [Wed, 29 Jan 2014 09:59:16 +0000 (09:59 +0000)]
Use IfBuilder instead of handcrafted basic blocks in GenerateSetValueOf().

R=svenpanne@chromium.org

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

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

10 years agoAdd dependency operand to HLoadNamedField.
bmeurer@chromium.org [Wed, 29 Jan 2014 09:48:35 +0000 (09:48 +0000)]
Add dependency operand to HLoadNamedField.

R=svenpanne@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.27.
machenbach@chromium.org [Wed, 29 Jan 2014 08:13:05 +0000 (08:13 +0000)]
Prepare push to trunk.  Now working on version 3.24.27.

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

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

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

10 years agoKill obsolete HLoadExternalArrayPointer instruction.
bmeurer@chromium.org [Wed, 29 Jan 2014 07:27:35 +0000 (07:27 +0000)]
Kill obsolete HLoadExternalArrayPointer instruction.

R=svenpanne@chromium.org

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

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

10 years agoES6: Map and Set needs to normalize minus zero
svenpanne@chromium.org [Wed, 29 Jan 2014 07:27:05 +0000 (07:27 +0000)]
ES6: Map and Set needs to normalize minus zero

BUG=v8:3069
LOG=Y
R=rossberg@chromium.org

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

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

10 years agoBoth HGlobalObject and HGlobalReceiver can be replaced with HLoadNamedField.
bmeurer@chromium.org [Wed, 29 Jan 2014 07:26:52 +0000 (07:26 +0000)]
Both HGlobalObject and HGlobalReceiver can be replaced with HLoadNamedField.

R=svenpanne@chromium.org

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

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

10 years agoMIPS: Fix global object loading in DoWrapReceiver.
palfia@homejinni.com [Tue, 28 Jan 2014 20:26:53 +0000 (20:26 +0000)]
MIPS: Fix global object loading in DoWrapReceiver.

This commit fixes the global object loading to load the result into the "result" register instead of the "receiver" register.

TEST=mjsunit/compiler/regress-arguments
BUG=
R=plind44@gmail.com, verwaest@chromium.org

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

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

10 years agoARM: Fix global object loading in DoWrapReceiver.
palfia@homejinni.com [Tue, 28 Jan 2014 20:25:38 +0000 (20:25 +0000)]
ARM: Fix global object loading in DoWrapReceiver.

This commit fixes the global object loading to load the result into the "result" register instead of the "receiver" register.

BUG=
R=verwaest@chromium.org

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

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

10 years agov8config.h: introduce V8_LIBC_MSVCRT
bmeurer@chromium.org [Tue, 28 Jan 2014 19:11:13 +0000 (19:11 +0000)]
v8config.h: introduce V8_LIBC_MSVCRT

Use this for detecting MSVCRT library features instead of
V8_CC_MSVC.

One use case for this is when compiling with Clang together with the
MSVC library. In that case, V8_CC_MSVC will be false, but V8_LIBC_MSVCRT
will be true.

BUG=82385
LOG=n
R=bmeurer@chromium.org

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

Patch from Hans Wennborg <hans@chromium.org>.

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

10 years agoFix for potential issue related to replacing CheckMaps with values.
ishell@chromium.org [Tue, 28 Jan 2014 17:49:13 +0000 (17:49 +0000)]
Fix for potential issue related to replacing CheckMaps with values.

R=titzer@chromium.org

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

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

10 years agoFlow engine fixes: unreachable block processing, state merging.
ishell@chromium.org [Tue, 28 Jan 2014 16:57:39 +0000 (16:57 +0000)]
Flow engine fixes: unreachable block processing, state merging.

R=titzer@chromium.org

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

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

10 years agoLoad elimination fix with a test case.
ishell@chromium.org [Tue, 28 Jan 2014 16:45:04 +0000 (16:45 +0000)]
Load elimination fix with a test case.

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

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

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

10 years agoAllocation site pretenuring for StringAdd on all platforms.
hpayer@chromium.org [Tue, 28 Jan 2014 15:43:28 +0000 (15:43 +0000)]
Allocation site pretenuring for StringAdd on all platforms.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoDrop the native FastNewBlockContextStub.
bmeurer@chromium.org [Tue, 28 Jan 2014 13:43:04 +0000 (13:43 +0000)]
Drop the native FastNewBlockContextStub.

This code is almost never executed in real world and benchmarks,
and there's obviously absolutely no need to have this native code
hanging around for no benefit.

R=svenpanne@chromium.org

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

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

10 years agoWe shouldn't throw under FLAG_debug_code, rather abort.
mvstanton@chromium.org [Tue, 28 Jan 2014 11:53:11 +0000 (11:53 +0000)]
We shouldn't throw under FLAG_debug_code, rather abort.

Throwing under FLAG_debug_code confuses the rest of our infrastructure
which expects a safe point at the site of call into the runtime
for throw. We were doing that to make a clusterfuzz test happy, but
the better solution is to assert/abort under debug_code, and prevent
clusterfuzz from fuzzing on internal APIs that crash on incorrect
values.

We'll need to alter the fuzzer to turn off fuzzing for:

string-natives.js
lithium/SeqStringSetChar.js
regress/regress-seqstrsetchar-ex3.js
regress/regress-seqstrsetchar-ex1.js
regress/regress-crbug-320922.js

So as to prevent the fuzzer from running
%_OneByteSeqStringSetChar() and
%_TwoByteSeqStringSetChar().

BUG=
R=hpayer@chromium.org, machenbach@chromium.org

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

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

10 years agoMake `String.prototype.{starts,ends}With` throw when passing a regular expression
ishell@chromium.org [Tue, 28 Jan 2014 10:31:05 +0000 (10:31 +0000)]
Make `String.prototype.{starts,ends}With` throw when passing a regular expression

Contributed by Mathias Bynens <mathiasb@opera.com>.

TEST=mjsunit/harmony
BUG=v8:3070
LOG=Y
R=arv@chromium.org, ishell@chromium.org

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

Patch from Mathias Bynens <mathiasb@opera.com>.

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

10 years agoTurn off global pretenuring when allocation site pretenuring is in use.
hpayer@chromium.org [Tue, 28 Jan 2014 09:47:03 +0000 (09:47 +0000)]
Turn off global pretenuring when allocation site pretenuring is in use.

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

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

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

10 years agoRemove obsolete instruction HOuterContext.
bmeurer@chromium.org [Tue, 28 Jan 2014 09:42:24 +0000 (09:42 +0000)]
Remove obsolete instruction HOuterContext.

HOuterContext can be expressed in terms of HLoadNamedField.

R=svenpanne@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.26.
machenbach@chromium.org [Tue, 28 Jan 2014 07:51:20 +0000 (07:51 +0000)]
Prepare push to trunk.  Now working on version 3.24.26.

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

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

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

10 years agoMIPS: stub fast api calls
palfia@homejinni.com [Tue, 28 Jan 2014 01:35:20 +0000 (01:35 +0000)]
MIPS: stub fast api calls

Port r18847 (c920fc50)

BUG=
R=plind44@gmail.com

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

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

10 years ago[Sheriff] Fix status file entry.
machenbach@chromium.org [Mon, 27 Jan 2014 16:46:16 +0000 (16:46 +0000)]
[Sheriff] Fix status file entry.

BUG=
TBR=hpayer@chromium.org

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

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

10 years agoSkip regression test 320948 temporarily.
hpayer@chromium.org [Mon, 27 Jan 2014 15:59:10 +0000 (15:59 +0000)]
Skip regression test 320948 temporarily.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoEnable concurrent sweeping.
hpayer@chromium.org [Mon, 27 Jan 2014 14:37:22 +0000 (14:37 +0000)]
Enable concurrent sweeping.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoHydrogen filter now supports trailing wildcard in negative filter.
ishell@chromium.org [Mon, 27 Jan 2014 12:05:47 +0000 (12:05 +0000)]
Hydrogen filter now supports trailing wildcard in negative filter.

R=verwaest@chromium.org

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

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

10 years agofix windows after r18847
dcarney@chromium.org [Mon, 27 Jan 2014 11:13:50 +0000 (11:13 +0000)]
fix windows after r18847

TBR=verwaest@chromium.org

BUG=

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

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

10 years agodon't anger clang
dcarney@chromium.org [Mon, 27 Jan 2014 10:06:37 +0000 (10:06 +0000)]
don't anger clang

R=svenpanne@chromium.org

BUG=

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

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

10 years agostub fast api calls
dcarney@chromium.org [Mon, 27 Jan 2014 09:57:54 +0000 (09:57 +0000)]
stub fast api calls

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

BUG=

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

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

10 years agoAllow arbitrary names for weak references in heap snapshots.
alph@chromium.org [Mon, 27 Jan 2014 09:37:02 +0000 (09:37 +0000)]
Allow arbitrary names for weak references in heap snapshots.

LOG=N
BUG=
R=ulan@chromium.org, yurys@chromium.org

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

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

10 years agoFix issue with context not being saved on x64 introduced in 144543004
dcarney@chromium.org [Mon, 27 Jan 2014 08:12:59 +0000 (08:12 +0000)]
Fix issue with context not being saved on x64 introduced in 144543004

TBR=verwaest@chromium.org

BUG=

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

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

10 years agoRevert "Allow arbitrary names for weak references in heap snapshots."
bmeurer@chromium.org [Mon, 27 Jan 2014 06:47:42 +0000 (06:47 +0000)]
Revert "Allow arbitrary names for weak references in heap snapshots."

This reverts commit r18838 for breaking build with clang. Errors are:

../../src/heap-snapshot-generator.cc:1217:53: error: empty macro arguments were standardized in C99 [-Werror,-pedantic]
    EXTRACT_CONTEXT_FIELD(OPTIMIZED_FUNCTIONS_LIST, , optimized_functions_list);
../../src/heap-snapshot-generator.cc:1218:48: error: empty macro arguments were standardized in C99 [-Werror,-pedantic]
    EXTRACT_CONTEXT_FIELD(OPTIMIZED_CODE_LIST, , optimized_code_list);
../../src/heap-snapshot-generator.cc:1219:50: error: empty macro arguments were standardized in C99 [-Werror,-pedantic]
    EXTRACT_CONTEXT_FIELD(DEOPTIMIZED_CODE_LIST, , deoptimized_code_list);
../../src/heap-snapshot-generator.cc:1220:46: error: empty macro arguments were standardized in C99 [-Werror,-pedantic]
    EXTRACT_CONTEXT_FIELD(NEXT_CONTEXT_LINK, , next_context_link);

TBR=alph@chromium.org

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

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

10 years agoFix minor typos in platform-*.cc
bmeurer@chromium.org [Mon, 27 Jan 2014 06:36:10 +0000 (06:36 +0000)]
Fix minor typos in platform-*.cc

R=bmeurer@chromium.org

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

Patch from Cosmin Truta <ctruta@blackberry.com>.

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

10 years agoPrepare push to trunk. Now working on version 3.24.25.
machenbach@chromium.org [Mon, 27 Jan 2014 01:05:11 +0000 (01:05 +0000)]
Prepare push to trunk.  Now working on version 3.24.25.

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

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

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

10 years agoMIPS: Reduce the stack requirements of GetNoCodeAgeSequence.
plind44@gmail.com [Fri, 24 Jan 2014 18:44:47 +0000 (18:44 +0000)]
MIPS: Reduce the stack requirements of GetNoCodeAgeSequence.

Port r18815 (f93582a)

Original commit message:
Allocate the patcher object on the heap, to avoid occasional stack
overflows on QNX/ARM when entering GetNoCodeAgeSequence.

BUG=v8:3111
LOG=y
R=plind44@gmail.com

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

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

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

10 years agoAllow arbitrary names for weak references in heap snapshots.
alph@chromium.org [Fri, 24 Jan 2014 17:18:34 +0000 (17:18 +0000)]
Allow arbitrary names for weak references in heap snapshots.

LOG=N
R=ulan@chromium.org, yurys@chromium.org

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

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

10 years agoExternal Array renaming and boilerplate scrapping
dslomov@chromium.org [Fri, 24 Jan 2014 16:01:15 +0000 (16:01 +0000)]
External Array renaming and boilerplate scrapping

Replaced symbolic names with correct JS name (byte -> int8, unsigned int -> uint32 etc).
Using macros to scrap the boilerplate
BUG=
R=svenpanne@chromium.org

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

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

10 years agoMark weak fields of JSArrayBuffer and JSArrayBufferView as weak in heap snapshot.
alph@chromium.org [Fri, 24 Jan 2014 15:10:09 +0000 (15:10 +0000)]
Mark weak fields of JSArrayBuffer and JSArrayBufferView as weak in heap snapshot.

BUG=337144
LOG=N
R=ulan@chromium.org, yurys@chromium.org

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

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

10 years agoDelete v8_shell target now that chrome uses d8
jochen@chromium.org [Fri, 24 Jan 2014 14:58:40 +0000 (14:58 +0000)]
Delete v8_shell target now that chrome uses d8

BUG=331585
LOG=y
R=machenbach@chromium.org

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

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

10 years agoSimplify HUnaryMathOperation::Canonicalize.
svenpanne@chromium.org [Fri, 24 Jan 2014 14:05:11 +0000 (14:05 +0000)]
Simplify HUnaryMathOperation::Canonicalize.

Made the logic architecture-independent, although we should really have some kind of instruction selection instead of trying to handle some weird cases at the hydrogen level.

Some tiny related cleanups on the way.

R=bmeurer@chromium.org

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

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

10 years agoFix HGraphBuilder::AddSimulate to pass removable down correctly
vegorov@chromium.org [Fri, 24 Jan 2014 12:22:13 +0000 (12:22 +0000)]
Fix HGraphBuilder::AddSimulate to pass removable down correctly

It was passed as a position argument previously making all simulates added with it conservatively FIXED_SIMULATE.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoUse rand not random
rossberg@chromium.org [Fri, 24 Jan 2014 11:58:11 +0000 (11:58 +0000)]
Use rand not random

Should make VS happier.

R=bmeurer@chromium.org
BUG=

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

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

10 years agoARM: Reduce the stack requirements of GetNoCodeAgeSequence.
svenpanne@chromium.org [Fri, 24 Jan 2014 11:48:09 +0000 (11:48 +0000)]
ARM: Reduce the stack requirements of GetNoCodeAgeSequence.

Allocate the patcher object on the heap, to avoid occasional stack
overflows on QNX/ARM when entering GetNoCodeAgeSequence.

BUG=v8:3111
LOG=y

Patch from Cosmin Truta <ctruta@blackberry.com>.

R=svenpanne@chromium.org

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

Patch from Cosmin Truta <ctruta@blackberry.com>.

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

10 years agoReland ArrayPop / ArrayPush.
verwaest@chromium.org [Fri, 24 Jan 2014 11:47:53 +0000 (11:47 +0000)]
Reland ArrayPop / ArrayPush.

R=mvstanton@chromium.org

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

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

10 years agoType representation converter
rossberg@chromium.org [Fri, 24 Jan 2014 11:47:47 +0000 (11:47 +0000)]
Type representation converter

R=danno@chromium.org
BUG=

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

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

10 years agoSpeed up some mjsunit test cases and clean up test expectations for arm and mips.
machenbach@chromium.org [Fri, 24 Jan 2014 11:36:45 +0000 (11:36 +0000)]
Speed up some mjsunit test cases and clean up test expectations for arm and mips.

Many skipped test cases already run very fast. Removing the corresponding expectations.

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

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

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

10 years agoRevert broken ArrayPop changes
jkummerow@chromium.org [Fri, 24 Jan 2014 08:32:50 +0000 (08:32 +0000)]
Revert broken ArrayPop changes

This reverts:
r18749 "Reland (and fix) "Add hydrogen support for ArrayPop, and remove the handwritten call stubs."",
r18790 "Remove ArrayPush from the custom call generators, and instead call directly to the handler in crankshaft.", and
r18798 "MIPS: Remove ArrayPush from the custom call generators, and instead call directly to the handler in crankshaft."

For causing crashes on Canary.

BUG=chromium:337686
LOG=N
R=bmeurer@chromium.org

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

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

10 years agoRevert some movq->movp changes under the _WIN64 macro for X64
haitao.feng@intel.com [Fri, 24 Jan 2014 01:59:00 +0000 (01:59 +0000)]
Revert some movq->movp changes under the _WIN64 macro for X64

R=verwaest@chromium.org

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

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

10 years agoIntroduce Assembler::RelocInfoNone function for X64
haitao.feng@intel.com [Fri, 24 Jan 2014 01:45:53 +0000 (01:45 +0000)]
Introduce Assembler::RelocInfoNone function for X64

R=verwaest@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.24.
machenbach@chromium.org [Fri, 24 Jan 2014 01:04:58 +0000 (01:04 +0000)]
Prepare push to trunk.  Now working on version 3.24.24.

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

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

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

10 years agoMIPS: Remove ArrayPush from the custom call generators, and instead call directly...
palfia@homejinni.com [Thu, 23 Jan 2014 19:33:42 +0000 (19:33 +0000)]
MIPS: Remove ArrayPush from the custom call generators, and instead call directly to the handler in crankshaft.

Port r18790 (0d675eeb)

BUG=
R=plind44@gmail.com

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

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

10 years agoDisable SetAllocationTimeout in fuzz-natives test since it has varargs.
machenbach@chromium.org [Thu, 23 Jan 2014 16:33:35 +0000 (16:33 +0000)]
Disable SetAllocationTimeout in fuzz-natives test since it has varargs.

BUG=
R=mstarzinger@chromium.org
TBR=mstarzinger@chromium.org

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

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

10 years agoRemove ArrayPush from the custom call generators, and instead call directly to the...
verwaest@chromium.org [Thu, 23 Jan 2014 16:20:25 +0000 (16:20 +0000)]
Remove ArrayPush from the custom call generators, and instead call directly to the handler in crankshaft.

R=mvstanton@chromium.org

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

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

10 years agoFix syntax check for SetAllocationTimeout.
machenbach@chromium.org [Thu, 23 Jan 2014 16:16:26 +0000 (16:16 +0000)]
Fix syntax check for SetAllocationTimeout.

This is missing in r18787.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoAllow to enable/disable inline allocation via runtime function.
machenbach@chromium.org [Thu, 23 Jan 2014 15:57:14 +0000 (15:57 +0000)]
Allow to enable/disable inline allocation via runtime function.

This will allow to artificially trigger GCs on all allocations for testing purposes.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoDon't hardcode GCC_VERSION for Xcode in standalone.gypi.
jkummerow@chromium.org [Thu, 23 Jan 2014 15:55:20 +0000 (15:55 +0000)]
Don't hardcode GCC_VERSION for Xcode in standalone.gypi.

This fixes standalone command-line Xcode compilation with Xcode 5.x.

R=machenbach@chromium.org

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

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

10 years agoMIPS: Turn FastNewContextStub into a HydrogenCodeStub.
plind44@gmail.com [Thu, 23 Jan 2014 15:42:02 +0000 (15:42 +0000)]
MIPS: Turn FastNewContextStub into a HydrogenCodeStub.

Port r18764 (c40563f)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoMIPS: Reland r18714 'Unify calling to GenerateFastApiCallBody before stubbing it'.
plind44@gmail.com [Thu, 23 Jan 2014 15:38:12 +0000 (15:38 +0000)]
MIPS: Reland r18714 'Unify calling to GenerateFastApiCallBody before stubbing it'.

Port r18762 (e8954e8)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoIn HObjectAccess::ForField pass property name down into HObjectAccess for in-object...
vegorov@chromium.org [Thu, 23 Jan 2014 14:20:48 +0000 (14:20 +0000)]
In HObjectAccess::ForField pass property name down into HObjectAccess for in-object fields.

This makes hydrogen.cfg more readable (property name becomes visible in addition to offset).

R=mvstanton@chromium.org
BUG=

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

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

10 years agoShow v8 bleeding edge revision in trunk and Chromium commit message.
machenbach@chromium.org [Thu, 23 Jan 2014 13:44:52 +0000 (13:44 +0000)]
Show v8 bleeding edge revision in trunk and Chromium commit message.

This allows to map from a V8 Chromium roll to the bleeding_edge revision used for the roll.

This CL also improves some test code:
 - Don't loose assertion exceptions in mocked git on retry.
 - Remove an unused method

BUG=337167
LOG=n
R=jkummerow@chromium.org

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

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

10 years agoRemove Heap::MaxRegularSpaceAllocationSize and use Page::MaxRegularHeapObjectSize...
hpayer@chromium.org [Thu, 23 Jan 2014 13:02:27 +0000 (13:02 +0000)]
Remove Heap::MaxRegularSpaceAllocationSize and use Page::MaxRegularHeapObjectSize instead.

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

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

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

10 years agoMake the full object memory size of a page available for a single allocation.
hpayer@chromium.org [Thu, 23 Jan 2014 12:13:20 +0000 (12:13 +0000)]
Make the full object memory size of a page available for a single allocation.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoLet push-to-trunk script retry failing svn writes.
machenbach@chromium.org [Thu, 23 Jan 2014 10:55:40 +0000 (10:55 +0000)]
Let push-to-trunk script retry failing svn writes.

BUG=
TEST=python -m unittest test_scripts
R=ulan@chromium.org

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

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

10 years ago[Sheriff] Temporarily mark test as flaky.
machenbach@chromium.org [Thu, 23 Jan 2014 10:54:30 +0000 (10:54 +0000)]
[Sheriff] Temporarily mark test as flaky.

BUG=
TBR=mvstanton@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.23.
machenbach@chromium.org [Thu, 23 Jan 2014 09:38:00 +0000 (09:38 +0000)]
Prepare push to trunk.  Now working on version 3.24.23.

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

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

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

10 years agoTurn FastNewContextStub into a HydrogenCodeStub.
bmeurer@chromium.org [Thu, 23 Jan 2014 08:36:22 +0000 (08:36 +0000)]
Turn FastNewContextStub into a HydrogenCodeStub.

R=svenpanne@chromium.org

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

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

10 years agoReland r18714 'Unify calling to GenerateFastApiCallBody before stubbing it'
dcarney@chromium.org [Thu, 23 Jan 2014 08:14:00 +0000 (08:14 +0000)]
Reland r18714 'Unify calling to GenerateFastApiCallBody before stubbing it'

TBR=verwaest@chromium.org

BUG=

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

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

10 years agoAdd jarin to OWNERS file.
bmeurer@chromium.org [Thu, 23 Jan 2014 07:55:58 +0000 (07:55 +0000)]
Add jarin to OWNERS file.

R=danno@chromium.org

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

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

10 years agoFix compilation on x64 architectures
bmeurer@chromium.org [Thu, 23 Jan 2014 06:31:05 +0000 (06:31 +0000)]
Fix compilation on x64 architectures

Contributed by Mathias Bynens <mathiasb@opera.com>.

BUG=v8:3110
LOG=Y
R=bmeurer@chromium.org, jarin@chromium.org

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

Patch from Mathias Bynens <mathiasb@opera.com>.

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

10 years agoAdd missing OWNERs
danno@chromium.org [Wed, 22 Jan 2014 15:36:00 +0000 (15:36 +0000)]
Add missing OWNERs

R=jkummerow@chromium.org

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

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

10 years agoFix clang build.
dslomov@chromium.org [Wed, 22 Jan 2014 15:06:36 +0000 (15:06 +0000)]
Fix clang build.

See http://blog.llvm.org/2009/12/dreaded-two-phase-name-lookup.html.

TBR=rossberg@chromium.org

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

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

10 years agoEnsure we don't overwrite transitions in SetPropertyIgnoreAttributes.
verwaest@chromium.org [Wed, 22 Jan 2014 14:02:00 +0000 (14:02 +0000)]
Ensure we don't overwrite transitions in SetPropertyIgnoreAttributes.

BUG=326155
LOG=y
R=jkummerow@chromium.org

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

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

10 years agoFix invalid memory access when initializing the command line in d8
jochen@chromium.org [Wed, 22 Jan 2014 13:59:05 +0000 (13:59 +0000)]
Fix invalid memory access when initializing the command line in d8

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

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

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

10 years agoGet rid of the unused native code StringAddStub.
bmeurer@chromium.org [Wed, 22 Jan 2014 13:48:05 +0000 (13:48 +0000)]
Get rid of the unused native code StringAddStub.

BUG=v8:2990
LOG=n
R=hpayer@chromium.org

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

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

10 years agoMIPS: Add missing cctests of DoubleToIStub (r16322).
palfia@homejinni.com [Wed, 22 Jan 2014 13:44:00 +0000 (13:44 +0000)]
MIPS: Add missing cctests of DoubleToIStub (r16322).

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

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

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

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

10 years agoReland (and fix) "Add hydrogen support for ArrayPop, and remove the handwritten call...
verwaest@chromium.org [Wed, 22 Jan 2014 13:22:58 +0000 (13:22 +0000)]
Reland (and fix) "Add hydrogen support for ArrayPop, and remove the handwritten call stubs."

BUG=
R=mvstanton@chromium.org

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

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

10 years agoIncrease the number of allocations in OptimizedPretenuringdoubleArrayLiterals test...
hpayer@chromium.org [Wed, 22 Jan 2014 12:59:25 +0000 (12:59 +0000)]
Increase the number of allocations in OptimizedPretenuringdoubleArrayLiterals test to make sure that pretenuring decisions are not flaky on the tests bots.

BUG=

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

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

10 years agoRefactor fast path for empty constant strings in BinaryOp.
bmeurer@chromium.org [Wed, 22 Jan 2014 12:30:00 +0000 (12:30 +0000)]
Refactor fast path for empty constant strings in BinaryOp.

R=mvstanton@chromium.org

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

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

10 years agoES6: Implement Object.setPrototypeOf
dslomov@chromium.org [Wed, 22 Jan 2014 12:15:57 +0000 (12:15 +0000)]
ES6: Implement Object.setPrototypeOf

This reverts commit bdc89ae76c15f3ef2626f8849744500248aec3ba.

This is a revert of the revert with test/webkit updated as needed.

Original CL Description:

http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.setprototypeof

This just exposes the internal %SetPrototype and adds all the required
type checks as specified.

BUG=v8:2675
LOG=Y
R=dslomov@chromium.org, rossberg@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

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

10 years agoRemove globale pretenuring mode from runtime.
hpayer@chromium.org [Wed, 22 Jan 2014 12:07:14 +0000 (12:07 +0000)]
Remove globale pretenuring mode from runtime.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoFixed floor-of-div optimization.
svenpanne@chromium.org [Wed, 22 Jan 2014 11:54:51 +0000 (11:54 +0000)]
Fixed floor-of-div optimization.

We removed an HDiv by hand which was still used by an HChange. The
solution is letting dead code removal do the cleanup.

Removed a fragile "optimization" (looking through an HChange), too,
this obviously never triggered and is hard to get right given all our
global invariants and state/type/... changes.

The repro is a bit tricky, because you need inlining to make our
representations and types disagree in this case.

LOG=y
BUG=334708
R=bmeurer@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.22.
machenbach@chromium.org [Wed, 22 Jan 2014 10:50:37 +0000 (10:50 +0000)]
Prepare push to trunk.  Now working on version 3.24.22.

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

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

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

10 years agoRevert "Add hydrogen support for ArrayPop, and remove the handwritten call stubs."
mvstanton@chromium.org [Wed, 22 Jan 2014 10:41:23 +0000 (10:41 +0000)]
Revert "Add hydrogen support for ArrayPop, and remove the handwritten call stubs."

This reverts commit r18709, due to deopt fuzzer issue.
TBR=verwaest@chromium.org

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

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

10 years agoDisable concurrent sweeping, pending investigation of failures.
mvstanton@chromium.org [Wed, 22 Jan 2014 09:14:44 +0000 (09:14 +0000)]
Disable concurrent sweeping, pending investigation of failures.

TBR=hpayer@chromium.org

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

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

10 years agoResetAllAllocationSitesDependentCode is not changing dependent code, assert removed.
hpayer@chromium.org [Wed, 22 Jan 2014 08:46:39 +0000 (08:46 +0000)]
ResetAllAllocationSitesDependentCode is not changing dependent code, assert removed.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoMIPS: Zonify types in compiler frontend
palfia@homejinni.com [Tue, 21 Jan 2014 22:31:31 +0000 (22:31 +0000)]
MIPS: Zonify types in compiler frontend

Port r18719 (13303b7a)

Original commit message:
Clean up some zone/isolate handling in AST and its visitors on the way.

(Based on https://codereview.chromium.org/103743004/)

BUG=
R=plind44@gmail.com

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

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

10 years agoFix x64 breakage.
hpayer@chromium.org [Tue, 21 Jan 2014 19:40:25 +0000 (19:40 +0000)]
Fix x64 breakage.

BUG=

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

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

10 years agoEnable concurrent sweeping. Added some extra debugging checks for concurrent sweeping.
hpayer@chromium.org [Tue, 21 Jan 2014 19:30:27 +0000 (19:30 +0000)]
Enable concurrent sweeping. Added some extra debugging checks for concurrent sweeping.

BUG=
R=titzer@chromium.org

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

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

10 years agoMIPS: Stay in fast enum case if the empty_slow_element_dictionary is used.
plind44@gmail.com [Tue, 21 Jan 2014 17:48:57 +0000 (17:48 +0000)]
MIPS: Stay in fast enum case if the empty_slow_element_dictionary is used.

Port r18705 (78b4ea3)

Original commit message:
This fixes slow for-in over frozen objects.

BUG=
R=plind44@gmail.com

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

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

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

10 years agoRevert "Unify calling to GenerateFastApiCallBody before stubbing it"
mvstanton@chromium.org [Tue, 21 Jan 2014 17:04:17 +0000 (17:04 +0000)]
Revert "Unify calling to GenerateFastApiCallBody before stubbing it"

This reverts commit r18714 for breaking webkit tests with an assert.

TBR=dcarney@chromium.org

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

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

10 years agoZonify types in compiler frontend
rossberg@chromium.org [Tue, 21 Jan 2014 16:22:52 +0000 (16:22 +0000)]
Zonify types in compiler frontend

Clean up some zone/isolate handling in AST and its visitors on the way.

(Based on https://codereview.chromium.org/103743004/)

R=jkummerow@chromium.org, titzer@chromium.org
BUG=

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

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

10 years agoOnly refill free lists for spaces that are being swept
jochen@chromium.org [Tue, 21 Jan 2014 16:19:04 +0000 (16:19 +0000)]
Only refill free lists for spaces that are being swept

BUG=v8:3104
R=hpayer@chromium.org
LOG=n

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

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

10 years agoArray constructor shouldn't require a Cell, just an AllocationSite.
mvstanton@chromium.org [Tue, 21 Jan 2014 16:04:39 +0000 (16:04 +0000)]
Array constructor shouldn't require a Cell, just an AllocationSite.

The Array constructor has a needless dependency on an input argument
that is a Cell. It uses this to walk through to an AllocationSite.
The dependency hampers future work. Instead, pass the AllocationSite
as input to the Array constructor.

R=bmeurer@chromium.org

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

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

10 years agoUnify calling to GenerateFastApiCallBody before stubbing it
dcarney@chromium.org [Tue, 21 Jan 2014 15:06:46 +0000 (15:06 +0000)]
Unify calling to GenerateFastApiCallBody before stubbing it

R=verwaest@chromium.org

BUG=

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

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

10 years agoSilence another VS warning
rossberg@chromium.org [Tue, 21 Jan 2014 14:41:48 +0000 (14:41 +0000)]
Silence another VS warning

R=titzer@chromium.org
BUG=

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

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

10 years agoRetry landing "Implement zone-allocated types"
rossberg@chromium.org [Tue, 21 Jan 2014 14:14:12 +0000 (14:14 +0000)]
Retry landing "Implement zone-allocated types"

Works around apparent scoping bug in VS, the only change to before being a method rename in the test suite:

--- a/test/cctest/test-types.cc
+++ b/test/cctest/test-types.cc
@@ -153,7 +153,7 @@ struct ZoneRep {
     return reinterpret_cast<ZoneList<ZoneType*>*>(AsTagged(t));
   }

-  static Zone* Region(Zone* zone, Isolate* isolate) { return zone; }
+  static Zone* ToRegion(Zone* zone, Isolate* isolate) { return zone; }
 };

@@ -168,7 +168,7 @@ struct HeapRep {
   static Object* AsConstant(Handle<Type> t) { return Box::cast(*t)->value(); }
   static FixedArray* AsUnion(Handle<Type> t) { return FixedArray::cast(*t); }

-  static Isolate* Region(Zone* zone, Isolate* isolate) { return isolate; }
+  static Isolate* ToRegion(Zone* zone, Isolate* isolate) { return isolate; }
 };

@@ -183,7 +183,7 @@ struct Tests : Rep {
       isolate(CcTest::i_isolate()),
       scope(isolate),
       zone(isolate),
-      T(Rep::Region(&zone, isolate), isolate) {
+      T(Rep::ToRegion(&zone, isolate), isolate) {
   }

   static void CheckEqual(TypeHandle type1, TypeHandle type2) {

R=titzer@chromium.org
BUG=

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

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

10 years agoRename MarkCompactCollector::StealMemoryFromSweeperThreads to RefillFreeLists
jochen@chromium.org [Tue, 21 Jan 2014 12:48:10 +0000 (12:48 +0000)]
Rename MarkCompactCollector::StealMemoryFromSweeperThreads to RefillFreeLists

The swept memory is now collected on the foreground thread, so it's not
stealing the memory from the threads anymore

BUG=v8:3104
R=hpayer@chromium.org
LOG=n

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

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

10 years agoAdd hydrogen support for ArrayPop, and remove the handwritten call stubs.
verwaest@chromium.org [Tue, 21 Jan 2014 12:42:24 +0000 (12:42 +0000)]
Add hydrogen support for ArrayPop, and remove the handwritten call stubs.
BUG=
R=mvstanton@chromium.org

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

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

10 years agoAdd infrastructure for skipping tests in GC stress mode.
machenbach@chromium.org [Tue, 21 Jan 2014 12:41:25 +0000 (12:41 +0000)]
Add infrastructure for skipping tests in GC stress mode.

Also move the GC stress configuration from the buildbot to the test runner.

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

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

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

10 years agoMove the temporary private freelist closer to where it's used
jochen@chromium.org [Tue, 21 Jan 2014 11:48:51 +0000 (11:48 +0000)]
Move the temporary private freelist closer to where it's used

BUG=v8:3104
R=hpayer@chromium.org
LOG=n

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

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