platform/upstream/v8.git
10 years agoUpdate benchmark test suite.
yangguo@chromium.org [Wed, 20 Nov 2013 15:05:52 +0000 (15:05 +0000)]
Update benchmark test suite.

R=jkummerow@chromium.org

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

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

10 years agoIncrease precision when finding the remainder after division by pi/2.
yangguo@chromium.org [Wed, 20 Nov 2013 15:04:37 +0000 (15:04 +0000)]
Increase precision when finding the remainder after division by pi/2.

R=jkummerow@chromium.org

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

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

10 years agoDo not recompile existing functions when enabling allocation tracking
yurys@chromium.org [Wed, 20 Nov 2013 14:57:39 +0000 (14:57 +0000)]
Do not recompile existing functions when enabling allocation tracking

Now that we don't have special hooks for the allocations in the generated code there is no need to recompile existing functions when enabling allocation tracking.

BUG=chromium:27798
LOG=N
R=loislo@chromium.org, mstarzinger@chromium.org

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

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

10 years agoRe-enable EnsureAllocationSiteDependentCodesProcessed.
mvstanton@chromium.org [Wed, 20 Nov 2013 14:20:07 +0000 (14:20 +0000)]
Re-enable EnsureAllocationSiteDependentCodesProcessed.

The problem was that we don't use crankshaft on non-sse2 builds.
(on ARM non-vfp3).

R=danno@chromium.org

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

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

10 years agoMaterializedLiteral expressions need to cache expression depth.
mvstanton@chromium.org [Wed, 20 Nov 2013 14:17:47 +0000 (14:17 +0000)]
MaterializedLiteral expressions need to cache expression depth.

A problem arises in recursive literal expressions due to recent
changes that defer allocation of constant literal properties
from parse time. We were calculating expression depth as a
side-effect of a lazy constant property build, but subsequent
calls for the depth always returned 1. Cache the correct depth
in the MaterializedLiteral instead.

(Related-to/very-partial-revert-of
https://codereview.chromium.org/61873003)

R=ulan@chromium.org

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

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

10 years agoForce 'git cl upload' in push-to-trunk forced mode.
machenbach@chromium.org [Wed, 20 Nov 2013 13:53:11 +0000 (13:53 +0000)]
Force 'git cl upload' in push-to-trunk forced mode.

R=jkummerow@chromium.org

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

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

10 years agoReplace hard-coded stack frame size literals with StandardFrameConstants::kFixedFrame...
rmcilroy@chromium.org [Wed, 20 Nov 2013 13:44:24 +0000 (13:44 +0000)]
Replace hard-coded stack frame size literals with StandardFrameConstants::kFixedFrameSizeFromFp

R=ulan@chromium.org

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

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

10 years agoARM: Optimize AccessArgumentsAt
m.m.capewell@googlemail.com [Wed, 20 Nov 2013 13:28:19 +0000 (13:28 +0000)]
ARM: Optimize AccessArgumentsAt

Optimize register constraints and code generated for AccessArgumentsAt
Lithium instruction.

TEST=none
BUG=
R=ulan@chromium.org

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

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

10 years agoUse SimpleLoadField for JSObjectFieldAccessors, rather than compiling a new stub.
verwaest@chromium.org [Wed, 20 Nov 2013 13:25:40 +0000 (13:25 +0000)]
Use SimpleLoadField for JSObjectFieldAccessors, rather than compiling a new stub.

R=dslomov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/76403002

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

10 years agoActivate Hydrogen-generated KeyedLoadDictionary ICs
danno@chromium.org [Wed, 20 Nov 2013 12:58:10 +0000 (12:58 +0000)]
Activate Hydrogen-generated KeyedLoadDictionary ICs

R=ulan@chromium.org

Review URL: https://chromiumcodereview.appspot.com/59813011

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

10 years agoRemove the first_right_arg hack for HMod.
bmeurer@chromium.org [Wed, 20 Nov 2013 12:43:33 +0000 (12:43 +0000)]
Remove the first_right_arg hack for HMod.

Generate a proper subgraph in BuildBinaryOperation instead.

R=svenpanne@chromium.org

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

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

10 years agoRemoved unused --preallocate-message-memory flag.
svenpanne@chromium.org [Wed, 20 Nov 2013 12:35:58 +0000 (12:35 +0000)]
Removed unused --preallocate-message-memory flag.

It results in a lot of dead code, and Isolate::PrintStack itself
crashes most of the time when something went wrong earlier.
Furthermore, we have plans do get better information into the
minidump, anyway.

R=bmeurer@chromium.org

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

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

10 years agoConvert constant numbers at compile time.
bmeurer@chromium.org [Wed, 20 Nov 2013 12:35:21 +0000 (12:35 +0000)]
Convert constant numbers at compile time.

TEST=mjsunit/number-tostring
R=mvstanton@chromium.org

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

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

10 years agoRevert r17907 - Make it possible to add more than one piece of embedder data to isolates
jochen@chromium.org [Wed, 20 Nov 2013 12:05:44 +0000 (12:05 +0000)]
Revert r17907 - Make it possible to add more than one piece of embedder data to isolates

> This will allow for using gin and blink bindings in the same process
>
> BUG=317398
> R=svenpanne@chromium.org, dcarney@chromium.org
> LOG=y
>
> Review URL: https://codereview.chromium.org/77913003

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

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

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

10 years agoMake BuildBinaryOperation use ReturnValue instead of ReturnInstruction.
bmeurer@chromium.org [Wed, 20 Nov 2013 12:00:57 +0000 (12:00 +0000)]
Make BuildBinaryOperation use ReturnValue instead of ReturnInstruction.

R=svenpanne@chromium.org

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

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

10 years agoReplace unsafe uses of Add<> with AddUncasted<>.
bmeurer@chromium.org [Wed, 20 Nov 2013 11:57:49 +0000 (11:57 +0000)]
Replace unsafe uses of Add<> with AddUncasted<>.

R=svenpanne@chromium.org

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

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

10 years agoDon't generate useless string checks for string adds.
bmeurer@chromium.org [Wed, 20 Nov 2013 11:53:09 +0000 (11:53 +0000)]
Don't generate useless string checks for string adds.

If we know that one side of a string add is definitely a string
(i.e. if it's a string constant), then we don't need to emit a
string check for the argument.

This adds a new BuildCheckString() method to the graph builder,
which does "the right thing".

TEST=mjsunit/string-add
R=mvstanton@chromium.org

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

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

10 years agoRemove deprecated v8::SetResourceConstraints without Isolate parameter
rmcilroy@chromium.org [Wed, 20 Nov 2013 11:21:51 +0000 (11:21 +0000)]
Remove deprecated v8::SetResourceConstraints without Isolate parameter

LOG=Y
R=bmeurer@chromium.org

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

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

10 years agoRemove deprecated v8-defaults.h and defaults.cc.
rmcilroy@chromium.org [Wed, 20 Nov 2013 11:20:01 +0000 (11:20 +0000)]
Remove deprecated v8-defaults.h and defaults.cc.

BUG=312241
LOG=Y
R=svenpanne@chromium.org

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

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

10 years agoMake it possible to add more than one piece of embedder data to isolates
jochen@chromium.org [Wed, 20 Nov 2013 10:59:13 +0000 (10:59 +0000)]
Make it possible to add more than one piece of embedder data to isolates

This will allow for using gin and blink bindings in the same process

BUG=317398
R=svenpanne@chromium.org, dcarney@chromium.org
LOG=y

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

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

10 years agofaster stack frame generation for accessor property ics
dcarney@chromium.org [Wed, 20 Nov 2013 10:11:56 +0000 (10:11 +0000)]
faster stack frame generation for accessor property ics

this is implemented for intel platforms only, as they are the only ones which show speed up with this change

R=svenpanne@chromium.org
BUG=

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

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

10 years agoReset overwrite mode for BinaryOpStub unless we can actually make use of it.
bmeurer@chromium.org [Wed, 20 Nov 2013 09:30:46 +0000 (09:30 +0000)]
Reset overwrite mode for BinaryOpStub unless we can actually make use of it.

R=svenpanne@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.23.9.
machenbach@chromium.org [Wed, 20 Nov 2013 09:25:38 +0000 (09:25 +0000)]
Prepare push to trunk.  Now working on version 3.23.9.

R=danno@chromium.org
BUG=

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

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

10 years agoQuit running EnsureAllocationSiteDependentCodesProcessed test until
mvstanton@chromium.org [Wed, 20 Nov 2013 08:55:20 +0000 (08:55 +0000)]
Quit running EnsureAllocationSiteDependentCodesProcessed test until
it's failure is diagnosed.

R=danno@chromium.org

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

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

10 years agoAdd forced mode to push-to-trunk script.
machenbach@chromium.org [Wed, 20 Nov 2013 08:49:42 +0000 (08:49 +0000)]
Add forced mode to push-to-trunk script.

This CL depends on https://codereview.chromium.org/65933003/.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoRefactor and improve bug line generation for push-to-trunk.
machenbach@chromium.org [Wed, 20 Nov 2013 08:25:17 +0000 (08:25 +0000)]
Refactor and improve bug line generation for push-to-trunk.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoMIPS: Fixed crashes exposed though fuzzing.
plind44@gmail.com [Tue, 19 Nov 2013 22:23:41 +0000 (22:23 +0000)]
MIPS: Fixed crashes exposed though fuzzing.

Port r17886 (e2fb3ed)

Original commit message:
The %_OneByteSeqStringSetChar intrinsic expects its arguments to be checked before being called for efficiency reasons, but the fuzzer provided no such checks. Now the intrinsic is robust to bad input if FLAG_debug_code is set.

R=plind44@gmail.com, yangguo@chromium.org
TEST=test/mjsunit/regress/regress-320948.js
BUG=chromium:320948
LOG=Y

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

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

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

10 years agoTurn ASSERTs to CHECKs in test-heap.cc
danno@chromium.org [Tue, 19 Nov 2013 17:29:43 +0000 (17:29 +0000)]
Turn ASSERTs to CHECKs in test-heap.cc

This fixes unused variable compile failures in release builds introduced in r17887.

R=jkummerow@chromium.org

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

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

10 years agoTest that AllocationSite::dependent_code doesn't leak code objects.
mvstanton@chromium.org [Tue, 19 Nov 2013 16:57:49 +0000 (16:57 +0000)]
Test that AllocationSite::dependent_code doesn't leak code objects.

Verify that code objects are treated weakly by the AllocationSite
dependent_code field.

R=ulan@chromium.org

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

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

10 years agoFixed crashes exposed though fuzzing.
danno@chromium.org [Tue, 19 Nov 2013 16:41:07 +0000 (16:41 +0000)]
Fixed crashes exposed though fuzzing.

The %_OneByteSeqStringSetChar intrinsic expects its arguments to be checked before being called for efficiency reasons, but the fuzzer provided no such checks. Now the intrinsic is robust to bad input if FLAG_debug_code is set.

R=yangguo@chromium.org
TEST=test/mjsunit/regress/regress-320948.js
BUG=chromium:320948
LOG=Y

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

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

10 years agoMIPS: Remove unused StubType's, freeing 2 bits in Code objects.
plind44@gmail.com [Tue, 19 Nov 2013 16:06:11 +0000 (16:06 +0000)]
MIPS: Remove unused StubType's, freeing 2 bits in Code objects.

Port r17867 (a305bd3)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoMIPS: Properly initialize desc->origin in the MIPS assembler.
plind44@gmail.com [Tue, 19 Nov 2013 15:58:10 +0000 (15:58 +0000)]
MIPS: Properly initialize desc->origin in the MIPS assembler.

Port r17865 (5b2e594)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoRevert 17877 - Introduce a v8::Platform class that bundles embedder callbacks
jochen@chromium.org [Tue, 19 Nov 2013 14:28:07 +0000 (14:28 +0000)]
Revert 17877 - Introduce a v8::Platform class that bundles embedder callbacks

This also reverts 17879 and 17880.

BUG=v8:3015
TBR=svenpanne@chromium.org
LOG=n

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

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

10 years agoRemove faulty CHECK() statement.
jochen@chromium.org [Tue, 19 Nov 2013 14:15:12 +0000 (14:15 +0000)]
Remove faulty CHECK() statement.

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

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

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

10 years agoFix typo in header guard of v8-platform.h
jochen@chromium.org [Tue, 19 Nov 2013 14:00:45 +0000 (14:00 +0000)]
Fix typo in header guard of v8-platform.h

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

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

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

10 years agoFix push-to-trunk runtime call.
machenbach@chromium.org [Tue, 19 Nov 2013 13:44:51 +0000 (13:44 +0000)]
Fix push-to-trunk runtime call.

This broke after a recent refactoring.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoIntroduce a v8::Platform class that bundles embedder callbacks
jochen@chromium.org [Tue, 19 Nov 2013 13:44:36 +0000 (13:44 +0000)]
Introduce a v8::Platform class that bundles embedder callbacks

Also provide a default implementation to use in cctests.

For now, there are just two thread releated callbacks. In future CLs, I will
move callbacks registered e.g. via V8::SetFooCallback over.

BUG=v8:3015
R=svenpanne@chromium.org, danno@chromium.org
LOG=no

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

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

10 years agoMove template instance check from Object to FunctionTemplateInfo::IsTemplateFor
verwaest@chromium.org [Tue, 19 Nov 2013 13:38:15 +0000 (13:38 +0000)]
Move template instance check from Object to FunctionTemplateInfo::IsTemplateFor

BUG=
R=dcarney@chromium.org

Review URL: https://chromiumcodereview.appspot.com/67613005

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

10 years agoFix debugger wrt concurrent recompilation flag.
yangguo@chromium.org [Tue, 19 Nov 2013 13:19:51 +0000 (13:19 +0000)]
Fix debugger wrt concurrent recompilation flag.

R=svenpanne@chromium.org
BUG=

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

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

10 years agoAdd a proper way to pass the number of processors to V8
jochen@chromium.org [Tue, 19 Nov 2013 13:08:37 +0000 (13:08 +0000)]
Add a proper way to pass the number of processors to V8

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

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

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

10 years agoFix register trashing in Emit*ByteSeqStringSetChar
jkummerow@chromium.org [Tue, 19 Nov 2013 12:59:09 +0000 (12:59 +0000)]
Fix register trashing in Emit*ByteSeqStringSetChar

This is currently not observable without --allow-natives-syntax because all internal usages are safe, but it deserves to be fixed nonetheless.

BUG=chromium:320922
LOG=N
R=yangguo@chromium.org

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

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

10 years agoDeprecate v8::External::New without Isolate parameter
jochen@chromium.org [Tue, 19 Nov 2013 12:20:08 +0000 (12:20 +0000)]
Deprecate v8::External::New without Isolate parameter

R=bmeurer@chromium.org, machenbach@chromium.org, svenpanne@chromium.org
LOG=y
BUG=none

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

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

10 years agoFix compilation.
yangguo@chromium.org [Tue, 19 Nov 2013 12:14:22 +0000 (12:14 +0000)]
Fix compilation.

R=svenpanne@chromium.org
BUG=

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

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

10 years agoRemove unused StubType's, freeing 2 bits in Code objects.
bmeurer@chromium.org [Tue, 19 Nov 2013 12:04:54 +0000 (12:04 +0000)]
Remove unused StubType's, freeing 2 bits in Code objects.

R=verwaest@chromium.org

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

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

10 years agoMake number of available threads isolate-dependent and expose it to ResourceConstraints.
yangguo@chromium.org [Tue, 19 Nov 2013 11:52:47 +0000 (11:52 +0000)]
Make number of available threads isolate-dependent and expose it to ResourceConstraints.

R=svenpanne@chromium.org
BUG=v8:2991
LOG=Y

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

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

10 years agoProperly initialize desc->origin in the ARM assembler.
bmeurer@chromium.org [Tue, 19 Nov 2013 11:52:38 +0000 (11:52 +0000)]
Properly initialize desc->origin in the ARM assembler.

R=svenpanne@chromium.org

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

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

10 years agoConstant-folding through HForceRepresentation fix.
ishell@chromium.org [Tue, 19 Nov 2013 11:41:04 +0000 (11:41 +0000)]
Constant-folding through HForceRepresentation fix.

Reverts changes in HValue::IsInteger32Constant() made in https://code.google.com/p/v8/source/detail?r=17787

R=bmeurer@chromium.org, mvstanton@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.23.8.
machenbach@chromium.org [Tue, 19 Nov 2013 11:04:54 +0000 (11:04 +0000)]
Prepare push to trunk.  Now working on version 3.23.8.

R=danno@chromium.org
BUG=

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

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

10 years agoBugfix: dependent code field in AllocationSite was keeping code objects alive even...
mvstanton@chromium.org [Tue, 19 Nov 2013 10:17:33 +0000 (10:17 +0000)]
Bugfix: dependent code field in AllocationSite was keeping code objects alive even after context death.

BUG=320532
LOG=Y
R=ulan@chromium.org

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

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

10 years agoARM: use vstm/vldm when possible.
bmeurer@chromium.org [Tue, 19 Nov 2013 06:39:36 +0000 (06:39 +0000)]
ARM: use vstm/vldm when possible.

R=bmeurer@chromium.org

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

Patch from Rodolph Perfetta <rodolph.perfetta@gmail.com>.

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

10 years agoMIPS: Convert PatchCache (and related methods) to use types rather than objects/maps.
palfia@homejinni.com [Tue, 19 Nov 2013 02:26:42 +0000 (02:26 +0000)]
MIPS: Convert PatchCache (and related methods) to use types rather than objects/maps.

Port r17847 (67c371a4)

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Make HTypeofIsAndBranch accept any representation input
palfia@homejinni.com [Tue, 19 Nov 2013 02:26:10 +0000 (02:26 +0000)]
MIPS: Make HTypeofIsAndBranch accept any representation input

Port r17834 (cf97fcb6)

Original commit message:
Make HTypeofIsAndBranch accept any representation input
when the input is known unbox number value, eliminate the dynamic check

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Match max property descriptor length to corresponding bit fields.
plind44@gmail.com [Mon, 18 Nov 2013 20:51:30 +0000 (20:51 +0000)]
MIPS: Match max property descriptor length to corresponding bit fields.

Port r17823 (b1b8ae0)

BUG=v8:3010
LOG=N
R=plind44@gmail.com

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

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

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

10 years agoReapply r11765
vegorov@chromium.org [Mon, 18 Nov 2013 17:24:00 +0000 (17:24 +0000)]
Reapply r11765

Add static_cast<int> in HPositionInfo::position to please Win64 build.

Improvements in positions handling in optimizing compiler.

- When building binary arithmetic op and comparison restore source position of the operation itself before building operation itself after it was changed by building operands. This ensures that position recorded for operation points to the operation token instead of pointing to the rightmost operand;

- Add support for recording operands' positions and use these positions when inserting HChange instructions;

- When generating hydrogen.cfg emit H-instruction position as BCI (previously 0 was emitted), additionally on every lithium instruction emit annotation pointing to corresponding hydrogen-instruction. This allows to easily reach from deopt_id to lithium instruction and from it to hydrogen instruction and source position.

R=danno@chromium.org

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

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

10 years agoConvert PatchCache (and related methods) to use types rather than objects/maps.
verwaest@chromium.org [Mon, 18 Nov 2013 17:18:14 +0000 (17:18 +0000)]
Convert PatchCache (and related methods) to use types rather than objects/maps.

R=rossberg@chromium.org

Review URL: https://chromiumcodereview.appspot.com/75413002

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

10 years agoFix build on arm/x64 after r17840.
dslomov@chromium.org [Mon, 18 Nov 2013 15:27:14 +0000 (15:27 +0000)]
Fix build on arm/x64 after r17840.

TBR=jkummerow@chromium.org
BUG=v8:3013
LOG=N

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

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

10 years agoIntroduce addps/subps/mulps/divps for IA32/X64
svenpanne@chromium.org [Mon, 18 Nov 2013 15:24:41 +0000 (15:24 +0000)]
Introduce addps/subps/mulps/divps for IA32/X64

BUG=
R=svenpanne@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

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

10 years agoFix data view accessors to throw execptions on offsets bigger than size_t.
dslomov@chromium.org [Mon, 18 Nov 2013 15:16:22 +0000 (15:16 +0000)]
Fix data view accessors to throw execptions on offsets bigger than size_t.

R=jkummerow@chromium.org
BUG=v8:3013
LOG=Y

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

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

10 years agoRevert "Fix data view accessors to throw execptions on offsets bigger than size_t."
dslomov@chromium.org [Mon, 18 Nov 2013 15:05:05 +0000 (15:05 +0000)]
Revert "Fix data view accessors to throw execptions on offsets bigger than size_t."

This reverts commit r17838 for breaking arm build.

TBR=jkummerow@chromium.org

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

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

10 years agoFix data view accessors to throw execptions on offsets bigger than size_t.
dslomov@chromium.org [Mon, 18 Nov 2013 14:58:16 +0000 (14:58 +0000)]
Fix data view accessors to throw execptions on offsets bigger than size_t.

R=jkummerow@chromium.org
BUG=v8:3013
LOG=Y

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

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

10 years agoUse mock ArrayBuffer allocator to avoid really allocating 1Gb.
dslomov@chromium.org [Mon, 18 Nov 2013 14:50:45 +0000 (14:50 +0000)]
Use mock ArrayBuffer allocator to avoid really allocating 1Gb.

R=jkummerow@chromium.org
BUG=v8:3014
LOG=N

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

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

10 years agoFix broken pipe caused by commands in toolchain.gypi.
jkummerow@chromium.org [Mon, 18 Nov 2013 14:32:30 +0000 (14:32 +0000)]
Fix broken pipe caused by commands in toolchain.gypi.

I sometimes observe broken pipe errors when I run gyp, which causes the gyp
process to fail. This seems to happen if gyp is executed under heavy I/O
pressure.

This change removes the pipes by replacing "echo |" with "< /dev/null".
Technically these are not the same, because "echo |" prints a newline while
"< /dev/null" doesn't, but this difference is not significant in the context of
the commands in toolchain.gypi.

BUG=
R=jkummerow@chromium.org

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

Patch from Yuta Kitamura <yutak@chromium.org>.

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

10 years agoMake HTypeofIsAndBranch accept any representation input
jkummerow@chromium.org [Mon, 18 Nov 2013 14:17:33 +0000 (14:17 +0000)]
Make HTypeofIsAndBranch accept any representation input

when the input is known unbox number value, eliminate the dynamic check

BUG=
R=jkummerow@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

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

10 years agoAdd initial auto-roll script.
machenbach@chromium.org [Mon, 18 Nov 2013 14:10:47 +0000 (14:10 +0000)]
Add initial auto-roll script.

To be called with a cron job.

TEST=tools/push-to-trunk/auto_roll.py

TODO: Add a revision filter to allow "MIPS" related changes to take over the lkgr.

R=jkummerow@chromium.org

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

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

10 years agoEnsure that ToPositiveInteger is optimizable.
dslomov@chromium.org [Mon, 18 Nov 2013 14:07:24 +0000 (14:07 +0000)]
Ensure that ToPositiveInteger is optimizable.

'throw %NAME(..)' cause hydrogen optimizations to be disabled for
surrounding function. This patch rectifies.

R=yangguo@chromium.org

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

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

10 years agoGenerate DataViewInitialize built-in in hydrogen.
dslomov@chromium.org [Mon, 18 Nov 2013 13:57:49 +0000 (13:57 +0000)]
Generate DataViewInitialize built-in in hydrogen.

R=bmeurer@chromium.org, mvstanton@chromium.org

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

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

10 years agoRefactor ChangeLog generation for push-to-trunk script.
machenbach@chromium.org [Mon, 18 Nov 2013 13:34:32 +0000 (13:34 +0000)]
Refactor ChangeLog generation for push-to-trunk script.

This extracts the Git-independent part of the change log body generation. This CL intends no change in behavior.

R=jkummerow@chromium.org

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

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

10 years agoRemove keyed load "force generic" miss case.
verwaest@chromium.org [Mon, 18 Nov 2013 13:07:44 +0000 (13:07 +0000)]
Remove keyed load "force generic" miss case.
BUG=
R=ishell@chromium.org

Review URL: https://chromiumcodereview.appspot.com/68213024

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

10 years agoRemove unused keyed store "force generic".
verwaest@chromium.org [Mon, 18 Nov 2013 13:04:48 +0000 (13:04 +0000)]
Remove unused keyed store "force generic".

R=ishell@chromium.org

Review URL: https://chromiumcodereview.appspot.com/73893003

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

10 years agoMatch max property descriptor length to corresponding bit fields
danno@chromium.org [Mon, 18 Nov 2013 11:44:06 +0000 (11:44 +0000)]
Match max property descriptor length to corresponding bit fields

BUG=v8:3010
R=verwaest@chromium.org
LOG=N

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

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

10 years agoPrepare push to trunk. Now working on version 3.23.7.
machenbach@chromium.org [Mon, 18 Nov 2013 08:51:22 +0000 (08:51 +0000)]
Prepare push to trunk.  Now working on version 3.23.7.

R=jkummerow@chromium.org
BUG=

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

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

10 years ago[Sheriff] Revert "MIPS: Ensure double aligned allocations through runtime routines."
machenbach@chromium.org [Sun, 17 Nov 2013 20:53:11 +0000 (20:53 +0000)]
[Sheriff] Revert "MIPS: Ensure double aligned allocations through runtime routines."

This reverts commit r17809 for breaking the build.

TBR=plind44@gmail.com,
BUG=

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

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

10 years agoMIPS: Ensure double aligned allocations through runtime routines.
plind44@gmail.com [Sun, 17 Nov 2013 17:23:58 +0000 (17:23 +0000)]
MIPS: Ensure double aligned allocations through runtime routines.

3rd (of 3) CLs to ensure complete alignment of FixedDoubleArrays.

TEST=
BUG=
R=mstarzinger@chromium.org, plind44@gmail.com

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

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

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

10 years agoCorrect r17804 to match latest version of uploaded CL
danno@chromium.org [Sat, 16 Nov 2013 15:22:09 +0000 (15:22 +0000)]
Correct r17804 to match latest version of uploaded CL

TBR=mvstanton@chromium.org

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

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

10 years agoMIPS: Generate KeyedLoadDictionaryElementStub with Hydrogen
palfia@homejinni.com [Fri, 15 Nov 2013 21:12:51 +0000 (21:12 +0000)]
MIPS: Generate KeyedLoadDictionaryElementStub with Hydrogen

Port r17804 (15aa3804)

BUG=
R=plind44@gmail.com

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

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

10 years agoFix bogus allocation limit in allocation folding.
mstarzinger@chromium.org [Fri, 15 Nov 2013 18:44:59 +0000 (18:44 +0000)]
Fix bogus allocation limit in allocation folding.

R=ishell@chromium.org
TEST=mjsunit/allocation-folding

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

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

10 years agoGenerate KeyedLoadDictionaryElementStub with Hydrogen
danno@chromium.org [Fri, 15 Nov 2013 17:53:35 +0000 (17:53 +0000)]
Generate KeyedLoadDictionaryElementStub with Hydrogen

R=mvstanton@chromium.org

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

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

10 years agoAdd suppressions for regress-319722-ArrayBuffer.
dslomov@chromium.org [Fri, 15 Nov 2013 17:40:21 +0000 (17:40 +0000)]
Add suppressions for regress-319722-ArrayBuffer.

TBR=jkummerow@chromium.org

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

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

10 years agoMIPS: Reland and fix "Add support for keyed-call on arrays of fast elements”.
plind44@gmail.com [Fri, 15 Nov 2013 17:34:34 +0000 (17:34 +0000)]
MIPS: Reland and fix "Add support for keyed-call on arrays of fast elements”.

Port r17782 (32e3232)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoLimit size of dehoistable array indices
jkummerow@chromium.org [Fri, 15 Nov 2013 17:24:10 +0000 (17:24 +0000)]
Limit size of dehoistable array indices

LOG=Y
BUG=chromium:319835,chromium:319860
R=dslomov@chromium.org

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

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

10 years agoLimit the size for typed arrays to MaxSmi.
dslomov@chromium.org [Fri, 15 Nov 2013 16:37:15 +0000 (16:37 +0000)]
Limit the size for typed arrays to MaxSmi.

R=jkummerow@chromium.org
LOG=Y
BUG=319722

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

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

10 years agoRevert "Limit the size for typed arrays to MaxSmi."
dslomov@chromium.org [Fri, 15 Nov 2013 16:25:51 +0000 (16:25 +0000)]
Revert "Limit the size for typed arrays to MaxSmi."

This reverts commit r17798 for allocating too much memroy in tests.

TBR=jkummerow@chromium.org

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

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

10 years agoLimit the size for typed arrays to MaxSmi.
dslomov@chromium.org [Fri, 15 Nov 2013 16:09:56 +0000 (16:09 +0000)]
Limit the size for typed arrays to MaxSmi.

R=jkummerow@chromium.org
LOG=Y
BUG=319722

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

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

10 years agoProvide Type::Of and Type::CurrentOf operators
rossberg@chromium.org [Fri, 15 Nov 2013 15:14:09 +0000 (15:14 +0000)]
Provide Type::Of and Type::CurrentOf operators

R=verwaest@chromium.org
BUG=

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

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

10 years agoAdd allocation tracker test for bumb pointer allocations
yurys@chromium.org [Fri, 15 Nov 2013 14:47:11 +0000 (14:47 +0000)]
Add allocation tracker test for bumb pointer allocations

Test that allocations which regularly happen inline in the generated code and create objects in bump pointer space will be recorded by the allocation tracker.

BUG=chromium:277984
LOG=N
R=loislo@chromium.org, mstarzinger@chromium.org

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

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

10 years agoAllow passing flags to Runtime_AllocateInTargetSpace.
mstarzinger@chromium.org [Fri, 15 Nov 2013 13:49:41 +0000 (13:49 +0000)]
Allow passing flags to Runtime_AllocateInTargetSpace.

R=ulan@chromium.org

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

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

10 years agoMake some internal Heap helpers private.
mstarzinger@chromium.org [Fri, 15 Nov 2013 13:31:13 +0000 (13:31 +0000)]
Make some internal Heap helpers private.

R=ulan@chromium.org

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

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

10 years agoARM: Merge redundant entries in literal pool.
bmeurer@chromium.org [Fri, 15 Nov 2013 12:24:10 +0000 (12:24 +0000)]
ARM: Merge redundant entries in literal pool.

This patch also clean up 64-bits literals handling.

R=bmeurer@chromium.org

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

Patch from Rodolph Perfetta <rodolph.perfetta@gmail.com>.

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

10 years agoRegression fix: HForceRepresentation shouldn't be an idef.
mvstanton@chromium.org [Fri, 15 Nov 2013 12:10:59 +0000 (12:10 +0000)]
Regression fix: HForceRepresentation shouldn't be an idef.

Instead, code sites that are interested in underlying constant integer values
should use HValue::IsInteger32Constant(). The issue is that the infer representation phase shouldn't "see through" HForceRepresentation nodes to an underlying, and less specific representation.

R=mstarzinger@chromium.org

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

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

10 years agoReland and fix "Add support for keyed-call on arrays of fast elements"
verwaest@chromium.org [Fri, 15 Nov 2013 10:52:05 +0000 (10:52 +0000)]
Reland and fix "Add support for keyed-call on arrays of fast elements"

BUG=
R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/71783003

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

10 years agoAdd ability to do "else-if" clauses in IfBuilder
danno@chromium.org [Fri, 15 Nov 2013 10:36:02 +0000 (10:36 +0000)]
Add ability to do "else-if" clauses in IfBuilder

- In an Else block it's possible to add more If<>'s in the same builder that are
  treated as an else if.
- Simplified and cleaned-up some of the IfBuilder's internals.

R=mstarzinger@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.23.6.
machenbach@chromium.org [Fri, 15 Nov 2013 10:32:18 +0000 (10:32 +0000)]
Prepare push to trunk.  Now working on version 3.23.6.

R=jkummerow@chromium.org
BUG=

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

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

10 years agoReplace miss_mode flag with explicit Load/Store Force Generic methods.
verwaest@chromium.org [Fri, 15 Nov 2013 09:34:44 +0000 (09:34 +0000)]
Replace miss_mode flag with explicit Load/Store Force Generic methods.

R=ishell@chromium.org

Review URL: https://chromiumcodereview.appspot.com/70233009

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

10 years agoUse path relatinve to cctest folder in cctest.status
yurys@chromium.org [Fri, 15 Nov 2013 09:28:40 +0000 (09:28 +0000)]
Use path relatinve to cctest folder in cctest.status

BUG=v8:3005
LOG=N
TBR=machenbach@chromium.org

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

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

10 years agoFix missing type feedback check for Generic*String addition.
bmeurer@chromium.org [Fri, 15 Nov 2013 09:13:36 +0000 (09:13 +0000)]
Fix missing type feedback check for Generic*String addition.

TEST=mjsunit/regress/regress-crbug-318671
BUG=318671
LOG=y
R=svenpanne@chromium.org

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

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

10 years agoMark cctest/test-alloc/CodeRange as flaky on Windows
yurys@chromium.org [Fri, 15 Nov 2013 09:10:44 +0000 (09:10 +0000)]
Mark cctest/test-alloc/CodeRange as flaky on Windows

BUG=v8:3005
LOG=N
R=machenbach@chromium.org

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

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

10 years agoReland [Object.observe] Don't force normalization of elements for observed objects
rafaelw@chromium.org [Thu, 14 Nov 2013 21:47:39 +0000 (21:47 +0000)]
Reland [Object.observe] Don't force normalization of elements for observed objects

Original Issue: https://codereview.chromium.org/29353003/

Note that this version of the patch includes logic for bailing out of compiled ArrayPush/ArrayPop calls if the array is observed (see stub-cache-*)

R=danno@chromium.org
BUG=v8:2946
LOG=N

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

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

10 years agoRevert "Improvements in positions handling in optimizing compiler." (r17765)
rafaelw@chromium.org [Thu, 14 Nov 2013 21:45:01 +0000 (21:45 +0000)]
Revert "Improvements in positions handling in optimizing compiler." (r17765)

Original issue: https://codereview.chromium.org/49203002/

TBR=vegorov

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

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

10 years agoMIPS: Also support smi in load-ICs.
plind44@gmail.com [Thu, 14 Nov 2013 21:12:22 +0000 (21:12 +0000)]
MIPS: Also support smi in load-ICs.

Port r17756 (12e5896)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoImprovements in positions handling in optimizing compiler.
vegorov@chromium.org [Thu, 14 Nov 2013 21:00:27 +0000 (21:00 +0000)]
Improvements in positions handling in optimizing compiler.

- When building binary arithmetic op and comparison restore source position of the operation itself before building operation itself after it was changed by building operands. This ensures that position recorded for operation points to the operation token instead of pointing to the rightmost operand;

- Add support for recording operands' positions and use these positions when inserting HChange instructions;

- When generating hydrogen.cfg emit H-instruction position as BCI (previously 0 was emitted), additionally on every lithium instruction emit annotation pointing to corresponding hydrogen-instruction. This allows to easily reach from deopt_id to lithium instruction and from it to hydrogen instruction and source position.

BUG=
R=danno@chromium.org

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

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