platform/upstream/v8.git
12 years agoFix check in r11850 for nosse2 and novfp3 machines.
mstarzinger@chromium.org [Tue, 19 Jun 2012 12:54:24 +0000 (12:54 +0000)]
Fix check in r11850 for nosse2 and novfp3 machines.

R=ulan@chromium.org
TEST=cctest/test-compiler/OptimizedCodeSharing

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

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

12 years agoTeach grokdump to print oddball kind when ToString content is not available
vegorov@chromium.org [Tue, 19 Jun 2012 11:41:50 +0000 (11:41 +0000)]
Teach grokdump to print oddball kind when ToString content is not available

R=danno@chromium.org
BUG=
TEST=

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

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

12 years agoCorrectly resolve local var shadowing a context-allocated var in debugger.
yangguo@chromium.org [Tue, 19 Jun 2012 11:25:49 +0000 (11:25 +0000)]
Correctly resolve local var shadowing a context-allocated var in debugger.

R=ulan@chromium.org
BUG=131994
TEST=regress/regress-131994.js

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

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

12 years agoMake sure we don't leak map transitions from AccessorPairs to the Javascript world.
verwaest@chromium.org [Tue, 19 Jun 2012 10:58:15 +0000 (10:58 +0000)]
Make sure we don't leak map transitions from AccessorPairs to the Javascript world.

BUG=133211
TEST=test/mjsunit/regress/regress-133211.js

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

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

12 years agoFix handling of numbers in SameValue method.
mstarzinger@chromium.org [Mon, 18 Jun 2012 14:21:29 +0000 (14:21 +0000)]
Fix handling of numbers in SameValue method.

R=vegorov@chromium.org
BUG=v8:2186
TEST=mjsunit/regress/regress-2186

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

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

12 years agoPrint correct line number for Error thrown inside eval.
yangguo@chromium.org [Mon, 18 Jun 2012 13:39:24 +0000 (13:39 +0000)]
Print correct line number for Error thrown inside eval.

R=rossberg@chromium.org
BUG=v8:1914
TEST=eval-stack-trace.js

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

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

12 years agoFix optimized code caching in FastNewClosureStub.
mstarzinger@chromium.org [Mon, 18 Jun 2012 13:26:43 +0000 (13:26 +0000)]
Fix optimized code caching in FastNewClosureStub.

This fixes a corner-case on ARM and MIPS where optimized code was not
shared immediately across closures when a function was used in several
global contexts at once.

R=ulan@chromium.org
TEST=cctest/test-compiler/OptimizedCodeSharing

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

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

12 years agoRemove default from switch.
mmassi@chromium.org [Mon, 18 Jun 2012 12:56:49 +0000 (12:56 +0000)]
Remove default from switch.

BUG=
TEST=

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

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

12 years agoMIPS: Share optimized code for closures.
mstarzinger@chromium.org [Mon, 18 Jun 2012 12:54:10 +0000 (12:54 +0000)]
MIPS: Share optimized code for closures.

Port r11817 (616dfcf0)

Original commit message:
Each SharedFunctionInfo gets an optimized code map to store
one optimized code object per context. When allocating a new
closure we consult this map and check if there is optimized code
that can be shared.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10557002
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoFix MSVC warnings about missing operator delete.
sanjoy@chromium.org [Mon, 18 Jun 2012 12:48:21 +0000 (12:48 +0000)]
Fix MSVC warnings about missing operator delete.

BUG=
TEST=

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

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

12 years agoRemoving superfluous IsSmi check from DescriptorArray::IsEmpty.
verwaest@chromium.org [Mon, 18 Jun 2012 12:42:46 +0000 (12:42 +0000)]
Removing superfluous IsSmi check from DescriptorArray::IsEmpty.
DescriptorArray::IsEmpty is never called with a Smi.

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

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

12 years agoReimplemented HGraph::Postorder and HGraph::PostorderLoopBlocks iteratively to avoid...
mmassi@chromium.org [Mon, 18 Jun 2012 11:59:02 +0000 (11:59 +0000)]
Reimplemented HGraph::Postorder and HGraph::PostorderLoopBlocks iteratively to avoid stack overflows.

BUG=
TEST=

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

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

12 years agoImplementing weak referencing elements transition maps.
verwaest@chromium.org [Mon, 18 Jun 2012 11:43:09 +0000 (11:43 +0000)]
Implementing weak referencing elements transition maps.

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

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

12 years agoFixing bugs in promotion of elements transitions (r1175).
verwaest@chromium.org [Mon, 18 Jun 2012 11:16:02 +0000 (11:16 +0000)]
Fixing bugs in promotion of elements transitions (r1175).
- Fixed invalid memory access when reading enum-cache from descriptor array with elements transitions but 0 real descriptors.
- Fixed infinite recursion in the intrusive map iterator when visiting elements transitions.
- Properly cached non-fastmode elements transitions.

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

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

12 years agoMIPS: Fix packed-element.js test on ARM with no snap
danno@chromium.org [Mon, 18 Jun 2012 10:51:23 +0000 (10:51 +0000)]
MIPS: Fix packed-element.js test on ARM with no snap

Port r11826 (5be3568a)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10559002
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoAvoid arbitrarily deep recursion in Array.sort.
erikcorry [Mon, 18 Jun 2012 09:23:05 +0000 (09:23 +0000)]
Avoid arbitrarily deep recursion in Array.sort.

BUG=v8:2185
Review URL: http://codereview.chromium.org/10561017

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

12 years agoRemove unused-but-set variable from objects.cc.
jkummerow@chromium.org [Mon, 18 Jun 2012 08:28:32 +0000 (08:28 +0000)]
Remove unused-but-set variable from objects.cc.

This fixes compilation with newer GCCs.

R=erik.corry@gmail.com

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

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

12 years agoFix for Issue 915
peter.rybin@gmail.com [Sat, 16 Jun 2012 21:40:35 +0000 (21:40 +0000)]
Fix for Issue 915

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

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

12 years agoSupport 'restart call frame' debug command
peter.rybin@gmail.com [Fri, 15 Jun 2012 16:52:03 +0000 (16:52 +0000)]
Support 'restart call frame' debug command

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

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

12 years agoUnify promotion and allocation limit computation.
ulan@chromium.org [Fri, 15 Jun 2012 13:48:54 +0000 (13:48 +0000)]
Unify promotion and allocation limit computation.

BUG=129628
R=mstarzinger@chromium.org

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

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

12 years agoFix external exceptions in external try-catch handlers.
mstarzinger@chromium.org [Fri, 15 Jun 2012 13:34:39 +0000 (13:34 +0000)]
Fix external exceptions in external try-catch handlers.

This tries to propagate exceptions which are externally thrown into
external try-catch handlers before scheduling them. This also allows
embedders to nest external try-catch handlers.

R=rossberg@chromium.org
BUG=v8:2166
TEST=cctest/test-api/TryCatchNested

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

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

12 years agoRevert part of 11727 as it sometimes tanked V8 benchmark (raytrace) performance
erik.corry@gmail.com [Fri, 15 Jun 2012 11:53:09 +0000 (11:53 +0000)]
Revert part of 11727 as it sometimes tanked V8 benchmark (raytrace) performance
for reasons that are not obvious.  Now we make objects into fast-case objects
when they are made prototypes for other objects, but we do not mark objects
that are already fast case with a bit that helps keep them in fast case.
Review URL: https://chromiumcodereview.appspot.com/10556004

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

12 years agoFix list traversal of optimized functions in deoptimizer.
mstarzinger@chromium.org [Fri, 15 Jun 2012 10:36:45 +0000 (10:36 +0000)]
Fix list traversal of optimized functions in deoptimizer.

R=fschneider@chromium.org

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

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

12 years agoFix packed-element.js test on ARM with no snap
danno@chromium.org [Fri, 15 Jun 2012 09:15:57 +0000 (09:15 +0000)]
Fix packed-element.js test on ARM with no snap

R=mstarzinger@chromium.org

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

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

12 years agoUnbreak interpreted regexp.
yangguo@chromium.org [Thu, 14 Jun 2012 17:06:16 +0000 (17:06 +0000)]
Unbreak interpreted regexp.

BUG=
TEST=

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

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

12 years agoReset the path tracer completely, and check whether an object has source code before...
danno@chromium.org [Thu, 14 Jun 2012 15:33:15 +0000 (15:33 +0000)]
Reset the path tracer completely, and check whether an object has source code before trying to print

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/9749008
Patch from Jochen Eisigner <jochen@chromium.org>.

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

12 years agoCheck for valid PC when stepping in the ARM sim debugger.
yangguo@chromium.org [Thu, 14 Jun 2012 15:04:27 +0000 (15:04 +0000)]
Check for valid PC when stepping in the ARM sim debugger.

BUG=v8:2134
TEST=

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

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

12 years agoES5.2 var semantics: take hidden prototypes into account.
rossberg@chromium.org [Thu, 14 Jun 2012 14:37:10 +0000 (14:37 +0000)]
ES5.2 var semantics: take hidden prototypes into account.

R=mstarzinger@chromium.org
BUG=
TEST=

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

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

12 years agoShare optimized code for closures.
fschneider@chromium.org [Thu, 14 Jun 2012 14:06:22 +0000 (14:06 +0000)]
Share optimized code for closures.

Each SharedFunctionInfo gets an optimized code map to store
one optimized code object per context. When allocating a new
closure we consult this map and check if there is optimized code
that can be shared.

This patch is based on an original patch
by Anton Muhin (http://codereview.chromium.org/6793013/).

BUG=v8:2087, v8:2094
TEST=test/mjsunit/compiler/optimized-closures.js
Review URL: https://chromiumcodereview.appspot.com/10103035

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

12 years agoAdd missing string length check in regexp engine.
yangguo@chromium.org [Thu, 14 Jun 2012 13:59:48 +0000 (13:59 +0000)]
Add missing string length check in regexp engine.

R=erik.corry@gmail.com
BUG=v8:2172
TEST=regress-2172.js

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

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

12 years agoFix assertion for map code cache of shared maps.
mstarzinger@chromium.org [Thu, 14 Jun 2012 13:54:23 +0000 (13:54 +0000)]
Fix assertion for map code cache of shared maps.

R=danno@chromium.org
TEST=mjsunit/compare-known-objects-slow

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

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

12 years agoIncrease old space in cctest/test-api/HugeConsStringOutOfMemory test.
danno@chromium.org [Thu, 14 Jun 2012 13:52:58 +0000 (13:52 +0000)]
Increase old space in cctest/test-api/HugeConsStringOutOfMemory test.

This test is failing on MIPS since r11715 (a7d6f92c),
it seems that after the modifications in bootstrapper.cc,
this test runs out of old generation space on MIPS.

TEST=cctest/test-api/HugeConsStringOutOfMemory

BUG=

Review URL: https://chromiumcodereview.appspot.com/10533148
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoWorkaround for: Chrome dev tools crashes when taking a heap snapshot of Docs offline...
loislo@chromium.org [Thu, 14 Jun 2012 12:21:05 +0000 (12:21 +0000)]
Workaround for: Chrome dev tools crashes when taking a heap snapshot of Docs offline shared worker.

BUG=132727
TEST=none

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

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

12 years agoARM: Fix literal pool handling for breakpoints in debugger.
yangguo@chromium.org [Thu, 14 Jun 2012 11:16:47 +0000 (11:16 +0000)]
ARM: Fix literal pool handling for breakpoints in debugger.

BUG=2177
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10449047
Patch from Martyn Capewell <m.m.capewell@googlemail.com>.

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

12 years agoFix Kraken regression due to optimistic monomorphic element transitions
danno@chromium.org [Thu, 14 Jun 2012 08:57:34 +0000 (08:57 +0000)]
Fix Kraken regression due to optimistic monomorphic element transitions

R=jkummerow@chromium.org

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

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

12 years agoFix lint.
yangguo@chromium.org [Thu, 14 Jun 2012 08:42:40 +0000 (08:42 +0000)]
Fix lint.

R=ulan@chromium.org
BUG=
TEST=

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

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

12 years agoIntroduce regexp=interpreted to GYP to enable building with interpreted regexp engine.
yangguo@chromium.org [Thu, 14 Jun 2012 08:01:05 +0000 (08:01 +0000)]
Introduce regexp=interpreted to GYP to enable building with interpreted regexp engine.

This option existis for scons. It does not compile yet since there are some broken stuff yet to be fixed.

R=jkummerow@chromium.org
BUG=
TEST=

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

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

12 years agoEnsure removing processed command line arguments.
yangguo@chromium.org [Wed, 13 Jun 2012 15:02:05 +0000 (15:02 +0000)]
Ensure removing processed command line arguments.

BUG="d8 --crankshaft --expose-debug-as" crashes
TEST=test-flags/FlagsRemoveIncomplete

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

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

12 years agoRemove faster ticks for debug mode.
yangguo@chromium.org [Wed, 13 Jun 2012 14:07:50 +0000 (14:07 +0000)]
Remove faster ticks for debug mode.

This solves the problem that code runs very slow when the debugger is enabled.

BUG=v8:2179
TEST=

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

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

12 years agopostmortem: fix postmortem build
erik.corry@gmail.com [Wed, 13 Jun 2012 13:48:18 +0000 (13:48 +0000)]
postmortem: fix postmortem build
This is a commit of https://chromiumcodereview.appspot.com/10539132/ for Fedor Indutny.

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

12 years agoFix performance regression caused by r11202.
mstarzinger@chromium.org [Wed, 13 Jun 2012 11:58:18 +0000 (11:58 +0000)]
Fix performance regression caused by r11202.

R=erik.corry@gmail.com
BUG=v8:2156,v8:2034
TEST=mjsunit/regress/regress-2156,mjsunit/regress/regress-2034

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

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

12 years agoPrepare push to trunk. Now working on version 3.12.0.
mmassi@chromium.org [Wed, 13 Jun 2012 11:49:26 +0000 (11:49 +0000)]
Prepare push to trunk.  Now working on version 3.12.0.

R=danno@chromium.org

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

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

12 years agoRevert r11782, r11783 and r11790 due to Webkit failures.
mstarzinger@chromium.org [Wed, 13 Jun 2012 11:26:34 +0000 (11:26 +0000)]
Revert r11782, r11783 and r11790 due to Webkit failures.

R=danno@chromium.org

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

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

12 years agoFix failing STATIC_CHECK on Windows.
alexeif@chromium.org [Wed, 13 Jun 2012 11:23:16 +0000 (11:23 +0000)]
Fix failing STATIC_CHECK on Windows.

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

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

12 years agoMIPS: Add negative lookups to polymorphic loads in Crankshaft.
erik.corry@gmail.com [Wed, 13 Jun 2012 11:09:28 +0000 (11:09 +0000)]
MIPS: Add negative lookups to polymorphic loads in Crankshaft.
This is a commit of https://chromiumcodereview.appspot.com/10536130/ for Akos Palfi.

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

12 years agoImplement heap profiler memory usage reporting.
alexeif@chromium.org [Wed, 13 Jun 2012 11:02:24 +0000 (11:02 +0000)]
Implement heap profiler memory usage reporting.

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

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

12 years agoFix r11780 to avoid bugs where near branches are used to labels that are out of range.
erikcorry [Wed, 13 Jun 2012 09:54:34 +0000 (09:54 +0000)]
Fix r11780 to avoid bugs where near branches are used to labels that are out of range.
Review URL: http://codereview.chromium.org/10542137

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

12 years agoReturn an error when parsing invalid dates where a number immediately follows a word.
ulan@chromium.org [Wed, 13 Jun 2012 09:10:37 +0000 (09:10 +0000)]
Return an error when parsing invalid dates where a number immediately follows a word.

BUG=53209,126448
TEST=mjsunit/date-parse.js
R=rossberg@chromium.org

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

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

12 years agoAdapt pre-parser heuristics for lazy compilation.
mstarzinger@chromium.org [Wed, 13 Jun 2012 09:10:16 +0000 (09:10 +0000)]
Adapt pre-parser heuristics for lazy compilation.

R=ulan@chromium.org

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

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

12 years agoMIPS: Eliminate redundant smi checks
danno@chromium.org [Wed, 13 Jun 2012 07:55:53 +0000 (07:55 +0000)]
MIPS: Eliminate redundant smi checks

Port r11774 (28c45b9b)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10536128
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoFix GCC 4.6 build.
yangguo@chromium.org [Wed, 13 Jun 2012 07:17:37 +0000 (07:17 +0000)]
Fix GCC 4.6 build.

R=jkummerow@chromium.org
BUG=
TEST=

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

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

12 years agoMIPS: Small fix for r11771 (1b74d45b).
svenpanne@chromium.org [Wed, 13 Jun 2012 06:42:30 +0000 (06:42 +0000)]
MIPS: Small fix for r11771 (1b74d45b).

TEST=mjsunit/object-define-property.js

BUG=

Review URL: https://chromiumcodereview.appspot.com/10535138
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoRevert r11778 "Activate packed array optimizations by default" due to mjsunit test...
erik.corry@gmail.com [Tue, 12 Jun 2012 22:34:13 +0000 (22:34 +0000)]
Revert r11778 "Activate packed array optimizations by default" due to mjsunit test failures on ARM.
TBR=danno
Review URL: https://chromiumcodereview.appspot.com/10550002

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

12 years agoMartyn Capewell <m.m.capewell@googlemail.com>
svenpanne@chromium.org [Tue, 12 Jun 2012 17:26:28 +0000 (17:26 +0000)]
Martyn Capewell <m.m.capewell@googlemail.com>

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

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

12 years agoFix failing assertion in r11782.
mstarzinger@chromium.org [Tue, 12 Jun 2012 16:53:15 +0000 (16:53 +0000)]
Fix failing assertion in r11782.

R=ulan@chromium.org

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

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

12 years agoEnable lazy compilation for non-trivial outer contexts.
mstarzinger@chromium.org [Tue, 12 Jun 2012 15:57:50 +0000 (15:57 +0000)]
Enable lazy compilation for non-trivial outer contexts.

This changes the compiler to be more aggressive about lazy compilation
of closures with non-trivial outer context. Compilation can only be
triggered with a valid outer context now. One exception is the debugger,
which can request compilation of arbitrary shared code, but it ensures
to trigger compilation only at points where no context is needed.

R=ulan@chromium.org
TEST=mjsunit/debug-script-breakpoints-nested

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

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

12 years agoForce inlining of some hot functions (problem reported by Bert Belder).
erik.corry@gmail.com [Tue, 12 Jun 2012 15:45:08 +0000 (15:45 +0000)]
Force inlining of some hot functions (problem reported by Bert Belder).
Review URL: https://chromiumcodereview.appspot.com/10546122

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

12 years agoAdd negative lookups to polymorphic loads in Crankshaft.
erikcorry [Tue, 12 Jun 2012 15:44:12 +0000 (15:44 +0000)]
Add negative lookups to polymorphic loads in Crankshaft.
Review URL: http://codereview.chromium.org/10539110

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

12 years agoActivate packed array optimizations by default
danno@chromium.org [Tue, 12 Jun 2012 15:38:57 +0000 (15:38 +0000)]
Activate packed array optimizations by default

R=jkummerow@chromium.org

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

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

12 years agoOptimization of some packed array cases.
danno@chromium.org [Tue, 12 Jun 2012 15:30:16 +0000 (15:30 +0000)]
Optimization of some packed array cases.

R=jkummerow@chromium.org
TEST=slight improvement in 3d-morph

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

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

12 years agoTemporarily disable debugger test on ARM.
mstarzinger@chromium.org [Tue, 12 Jun 2012 15:23:36 +0000 (15:23 +0000)]
Temporarily disable debugger test on ARM.

R=yangguo@chromium.org
BUG=v8:2177
TEST=mjsunit/debug-liveedit-breakpoints

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

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

12 years agoDisable array bounds checks elimination by default.
yangguo@chromium.org [Tue, 12 Jun 2012 15:22:21 +0000 (15:22 +0000)]
Disable array bounds checks elimination by default.

BUG=132114
TEST=

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

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

12 years agoEliminate redundant smi checks
danno@chromium.org [Tue, 12 Jun 2012 12:16:19 +0000 (12:16 +0000)]
Eliminate redundant smi checks

R=mstarzinger@chromium.org

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

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

12 years agoFix arm build.
vegorov@chromium.org [Tue, 12 Jun 2012 10:30:51 +0000 (10:30 +0000)]
Fix arm build.

TBR=danno@chromium.org

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

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

12 years agoReimplement dynamic frame alignment for frames that are compiled via OSR or have...
vegorov@chromium.org [Tue, 12 Jun 2012 10:22:33 +0000 (10:22 +0000)]
Reimplement dynamic frame alignment for frames that are compiled via OSR or have more than 2 double spill slots.

The first spill slot is now reserved on all optimized frames to distinguish frames that were aligned.

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

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

12 years agoImplemented StoreIC for setters.
svenpanne@chromium.org [Tue, 12 Jun 2012 09:32:17 +0000 (09:32 +0000)]
Implemented StoreIC for setters.

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

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

12 years agoPresubmit fix.
svenpanne@chromium.org [Tue, 12 Jun 2012 06:47:29 +0000 (06:47 +0000)]
Presubmit fix.

TBR=yangguo@chromium.org

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

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

12 years agoMIPS: Remove TLS access for current Zone.
svenpanne@chromium.org [Tue, 12 Jun 2012 06:43:13 +0000 (06:43 +0000)]
MIPS: Remove TLS access for current Zone.

Port r11761 (769624bf)

Original commit message:
By passing around a Zone object explicitly we no longer need to do a
TLS access at the sites that allocate memory from the current Zone.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10537108
Patch from Akos Palfi <palfia@homejinni.com>.

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

12 years agoMIPS: Reland r11753: Fix try..finally.
yangguo@chromium.org [Tue, 12 Jun 2012 06:15:59 +0000 (06:15 +0000)]
MIPS: Reland r11753: Fix try..finally.

Port r11762 (4fdbdd7a)

BUG=
TEST=

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

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

12 years agoPort r11704 to MIPS.
yangguo@chromium.org [Tue, 12 Jun 2012 06:13:14 +0000 (06:13 +0000)]
Port r11704 to MIPS.

BUG=2174
TEST=regexp-global.js

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

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

12 years agoReland r11425 "Re-enable optimization for hot functions that have optimization disabl...
ulan@chromium.org [Mon, 11 Jun 2012 16:57:27 +0000 (16:57 +0000)]
Reland r11425 "Re-enable optimization for hot functions that have optimization disabled due to many deopts."

Fix performance regressions introduced in r11425 by
- counting number of function deoptimizations instead of function optimizations,
- packing several counters into one field of shared function info.

BUG=v8:2040,121196
R=jkummerow@chromium.org

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

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

12 years agoAssemblerBase does not need remember a Zone. Fix this.
sanjoy@chromium.org [Mon, 11 Jun 2012 16:47:08 +0000 (16:47 +0000)]
AssemblerBase does not need remember a Zone.  Fix this.

BUG=
TEST=

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

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

12 years agoReland r11753: Fix try..finally.
yangguo@chromium.org [Mon, 11 Jun 2012 13:18:05 +0000 (13:18 +0000)]
Reland r11753: Fix try..finally.

R=ulan@chromium.org
BUG=129171
TEST=test-api/TryFinallyMessage, mjsunit/try-finally-continue.js

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

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

12 years agoRemove TLS access for current Zone.
sanjoy@chromium.org [Mon, 11 Jun 2012 12:42:31 +0000 (12:42 +0000)]
Remove TLS access for current Zone.

By passing around a Zone object explicitly we no longer need to do a
TLS access at the sites that allocate memory from the current Zone.

BUG=
TEST=

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

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

12 years agoFix lint.
erikcorry [Mon, 11 Jun 2012 12:32:14 +0000 (12:32 +0000)]
Fix lint.
Review URL: http://codereview.chromium.org/10542100

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

12 years agoClean up some minor stuff in test expectation files
jkummerow@chromium.org [Mon, 11 Jun 2012 12:24:00 +0000 (12:24 +0000)]
Clean up some minor stuff in test expectation files

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

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

12 years agoAdd guard against self assignment.
mmassi@chromium.org [Mon, 11 Jun 2012 11:25:10 +0000 (11:25 +0000)]
Add guard against self assignment.

BUG=
TEST=

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

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

12 years agoRevert r11753.
yangguo@chromium.org [Mon, 11 Jun 2012 11:21:21 +0000 (11:21 +0000)]
Revert r11753.

R=mstarzinger@chromium.org
BUG=
TEST=

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

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

12 years agoFix optimization of Unicode regexp with ASCII subject to respect repeat counts.
erikcorry [Mon, 11 Jun 2012 11:18:04 +0000 (11:18 +0000)]
Fix optimization of Unicode regexp with ASCII subject to respect repeat counts.
bug=131923
Review URL: http://codereview.chromium.org/10544093

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

12 years agoPreserve error message during finally block in try..finally.
yangguo@chromium.org [Mon, 11 Jun 2012 10:51:09 +0000 (10:51 +0000)]
Preserve error message during finally block in try..finally.

R=ulan@chromium.org
BUG=129171
TEST=test-api/TryFinallyMessage

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

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

12 years agoFix EnsureCanContainElements to properly handle double values.
danno@chromium.org [Mon, 11 Jun 2012 08:41:48 +0000 (08:41 +0000)]
Fix EnsureCanContainElements to properly handle double values.

R=jkummerow@chromium.org
BUG=v8:2170
TEST=test/mjsunit/regress/regress-2170.js

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

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

12 years agoPromoting elements transitions to their own field.
verwaest@chromium.org [Mon, 11 Jun 2012 06:59:56 +0000 (06:59 +0000)]
Promoting elements transitions to their own field.
This is a first step towards separating all transitions from the property descriptions. If we link the property descriptions from the transition object, this will in allow the descriptor array (property descriptions) to become immutable.

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

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

12 years agoRemove --crankshaft flag from the test infrastructure.
jkummerow@chromium.org [Fri, 8 Jun 2012 14:47:12 +0000 (14:47 +0000)]
Remove --crankshaft flag from the test infrastructure.

It has outlived its usefulness as Crankshaft is on by default anyway.

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

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

12 years agoAdjust Android heap sizes.
ulan@chromium.org [Fri, 8 Jun 2012 13:21:40 +0000 (13:21 +0000)]
Adjust Android heap sizes.

This improves performance on heavy pages by increasing
max_executable_size_ and max_old_generation_size_.

There is now no need for an Android specific LUMP_OF_MEMORY.

Review URL: https://chromiumcodereview.appspot.com/10541053
Patch from Ben Murdoch <benm@chromium.org>.

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

12 years agoOptimistically assume that elements IC only transition once.
danno@chromium.org [Fri, 8 Jun 2012 13:06:24 +0000 (13:06 +0000)]
Optimistically assume that elements IC only transition once.

Thanks to Zheng Liu for identifying this issue.

R=jkummerow@chromium.org
BUG=v8:2141
TEST=test/mjsunit/elements-kind.js

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

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

12 years agoMake clang/GCMole happy.
svenpanne@chromium.org [Fri, 8 Jun 2012 12:53:20 +0000 (12:53 +0000)]
Make clang/GCMole happy.

TBR=danno@chromium.org

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

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

12 years agoImprove representation inference
vegorov@chromium.org [Fri, 8 Jun 2012 09:21:23 +0000 (09:21 +0000)]
Improve representation inference

- Extend HValue interface to allow splitting observed input representation (comming from type feedback) from required input representation (dictated by instruction itself). Currently all instructions except for bitwise binary operations have this representations match. For bitwise binary operations hydrogen builder unconditionaly forces Integer32 representation for those operations that have Double type feedback. Thus causing representation inference to incorrectly count such uses as Integer32 instead of Double. This change also prepares for more fine grained type feedback for inputs of binary operations.

- For phies that are not convertable to Integer32 discard direct and indirect use count of Integer32 type to avoid propagation of these uses to connected phies.

R=jkummerow@chromium.org
BUG=v8:2096

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

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

12 years agoTentative fix for overly clever Mac compiler.
svenpanne@chromium.org [Fri, 8 Jun 2012 09:15:32 +0000 (09:15 +0000)]
Tentative fix for overly clever Mac compiler.

TBR=danno@chromium.org

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

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

12 years agoAdded LoadIC stub for getters.
svenpanne@chromium.org [Fri, 8 Jun 2012 08:48:05 +0000 (08:48 +0000)]
Added LoadIC stub for getters.

Removed some dead constants on the way.

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

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

12 years agoImplement implicit instance checks for API accessors.
mstarzinger@chromium.org [Fri, 8 Jun 2012 07:45:11 +0000 (07:45 +0000)]
Implement implicit instance checks for API accessors.

This allows to specify a constructor against which an implicit instance
check is performed for API accessors. If the receiver is incompatible,
an implicit TypeError is thrown and no callback is invoked.

R=svenpanne@chromium.org
BUG=v8:2075
TEST=cctest/test-api/InstanceCheckOn[*]

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

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

12 years agoMore tests for r11732 syntax based fast-mode heuristics.
erik.corry@gmail.com [Thu, 7 Jun 2012 20:12:50 +0000 (20:12 +0000)]
More tests for r11732 syntax based fast-mode heuristics.
Review URL: https://chromiumcodereview.appspot.com/10539046

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

12 years agoUse the syntax of a property addition as a hint for controlling the fast-mode vs...
erik.corry@gmail.com [Thu, 7 Jun 2012 12:08:07 +0000 (12:08 +0000)]
Use the syntax of a property addition as a hint for controlling the fast-mode vs. dictionary mode heursitics on objects.
Review URL: https://chromiumcodereview.appspot.com/10537050

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

12 years agoFix CompileFullCodeForDebugging to compile closure.
mstarzinger@chromium.org [Wed, 6 Jun 2012 15:21:13 +0000 (15:21 +0000)]
Fix CompileFullCodeForDebugging to compile closure.

This compiles against a given closure instead of the shared function
info, which is a prerequisite for enabling lazy compilation of inner
functions within a closure with non-trivial context.

R=ulan@chromium.org

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

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

12 years agoUnbreak MIPS build after recent zone-related changes
svenpanne@chromium.org [Wed, 6 Jun 2012 11:44:54 +0000 (11:44 +0000)]
Unbreak MIPS build after recent zone-related changes

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

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

12 years agoOptimize write barrier of map-only elements transitions
danno@chromium.org [Wed, 6 Jun 2012 11:05:28 +0000 (11:05 +0000)]
Optimize write barrier of map-only elements transitions

R=mstarzinger@chromium.org

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

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

12 years agoSerialize edge counts instead of indexes in heap snapshot.
alexeif@chromium.org [Wed, 6 Jun 2012 10:57:20 +0000 (10:57 +0000)]
Serialize edge counts instead of indexes in heap snapshot.

The serialized node structure currently holds an index
of its first containment edge in the edges array.
The index can be quite big (up to 7 digits for large snapshots).
The patch changes the serialization format to pass
node containment edge count instead. For most nodes the count
is just a single digit number.
This reduces serialized snapshot size and therefore its transfer time.

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

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

12 years agoKeep track of which maps are associated with prototype objects so we can tune the...
erik.corry@gmail.com [Wed, 6 Jun 2012 10:17:26 +0000 (10:17 +0000)]
Keep track of which maps are associated with prototype objects so we can tune the fast-case vs. hash map heuristics accordingly.
This is a reland of r11681 https://chromiumcodereview.appspot.com/10448011 , which was reverted because of layout test failures that were actually caused by the long-standing issue fixed in https://chromiumcodereview.appspot.com/10515006 (r11706).
Review URL: https://chromiumcodereview.appspot.com/10532021

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

12 years agoCleanup Runtime_SetCode and drop EnsureCompiled.
mstarzinger@chromium.org [Wed, 6 Jun 2012 09:54:46 +0000 (09:54 +0000)]
Cleanup Runtime_SetCode and drop EnsureCompiled.

This change triggers compilation for a given closure instead of the
shared function info. It will allow for even more cases to be compiled
lazily.

R=ulan@chromium.org

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

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

12 years agoPrepare push to trunk. Now working on version 3.11.10.
rossberg@chromium.org [Wed, 6 Jun 2012 09:26:22 +0000 (09:26 +0000)]
Prepare push to trunk.  Now working on version 3.11.10.

R=danno@chromium.org
BUG=
TEST=

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

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

12 years agoFix assertion in the debug agent.
yangguo@chromium.org [Wed, 6 Jun 2012 08:37:34 +0000 (08:37 +0000)]
Fix assertion in the debug agent.

Patch by Chris Taylor <chris@gameclosure.com>.

R=yangguo@chromium.org
BUG=
TEST=

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

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