platform/upstream/v8.git
12 years agoWhen rethrowing an exception, print the stack trace of its original site instead...
yangguo@chromium.org [Tue, 7 Feb 2012 09:31:06 +0000 (09:31 +0000)]
When rethrowing an exception, print the stack trace of its original site instead of rethrow site.

BUG=60240

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

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

12 years agoDescriptorArray::IsProperty-related cleanup.
svenpanne@chromium.org [Tue, 7 Feb 2012 08:59:03 +0000 (08:59 +0000)]
DescriptorArray::IsProperty-related cleanup.

More minor changes related to property predicates:

 * Slightly simplify logic when handling hidden properties.

 * Make IsProperty usage more consistent in RemoveTransitions.

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

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

12 years agoEnable non-incremental code compaction.
vegorov@chromium.org [Tue, 7 Feb 2012 08:51:47 +0000 (08:51 +0000)]
Enable non-incremental code compaction.

It is intended to bring memory usage down on idle notifications.

R=erik.corry@gmail.com
BUG=v8:1726

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

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

12 years agoIncrease size of small stacks from 32k to 64k to avoid hitting
erik.corry@gmail.com [Tue, 7 Feb 2012 08:00:36 +0000 (08:00 +0000)]
Increase size of small stacks from 32k to 64k to avoid hitting
limits in Chromium.
http://code.google.com/p/chromium/issues/detail?id=112843
Review URL: https://chromiumcodereview.appspot.com/9353006

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

12 years agoI will apply it to the nodes that can't be mapped to Heap object or Native object.
loislo@chromium.org [Tue, 7 Feb 2012 05:21:00 +0000 (05:21 +0000)]
I will apply it to the nodes that can't be mapped to Heap object or Native object.
As example there are 'Detached DOM Tree' nodes in WebKit. It is very useful to be able to see all such
nodes grouped together. It can be done with help of some post processing but I did this explicitly
on v8 side because it is much faster. At the moment this kind of nodes has kNative type.
I'd like to hide these nodes from the Retainment View but I can filter them only by name.

BUG=none
TEST=HeapSnapshotRetainedObjectInfo

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

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

12 years agoGrow lists by a factor of 2 instead of 1.5 on a resize.
fschneider@chromium.org [Mon, 6 Feb 2012 16:23:40 +0000 (16:23 +0000)]
Grow lists by a factor of 2 instead of 1.5 on a resize.

For zone lists this avoids resizing and reduces overall allocation
in most cases (especially for small lists).
Review URL: https://chromiumcodereview.appspot.com/9323078

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

12 years agoBash completion for d8 flags
jkummerow@chromium.org [Mon, 6 Feb 2012 15:06:24 +0000 (15:06 +0000)]
Bash completion for d8 flags

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

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

12 years agoConsolidated property counting methods a bit.
svenpanne@chromium.org [Mon, 6 Feb 2012 13:54:46 +0000 (13:54 +0000)]
Consolidated property counting methods a bit.

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

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

12 years agoRemoved PropertyDetails::IsProperty.
svenpanne@chromium.org [Mon, 6 Feb 2012 12:11:40 +0000 (12:11 +0000)]
Removed PropertyDetails::IsProperty.

This is just an intermediate step to remove IsRealProperty.

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

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

12 years agoSpeed up two unit tests to avoid timeouts and make tests finish faster.
fschneider@chromium.org [Mon, 6 Feb 2012 11:40:24 +0000 (11:40 +0000)]
Speed up two unit tests to avoid timeouts and make tests finish faster.
Review URL: https://chromiumcodereview.appspot.com/9309118

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

12 years agoX64: Fix bug in minus-zero check after int32 multiplication.
fschneider@chromium.org [Mon, 6 Feb 2012 10:08:57 +0000 (10:08 +0000)]
X64: Fix bug in minus-zero check after int32 multiplication.

In optimized x64 code, the check for minus zero after multiplication
used the wrong size bit-or instruction (64-bit instead of 32-bit).

TEST=mjsunit/numops-fuzz.js
Review URL: https://chromiumcodereview.appspot.com/9316127

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

12 years agoPrepare push to trunk. Now working on version 3.9.3.
rossberg@chromium.org [Mon, 6 Feb 2012 10:03:35 +0000 (10:03 +0000)]
Prepare push to trunk.  Now working on version 3.9.3.

R=danno@chromium.org
BUG=
TEST=

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

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

12 years agoAdd timestamp to --trace-gc output.
yangguo@chromium.org [Mon, 6 Feb 2012 08:59:43 +0000 (08:59 +0000)]
Add timestamp to --trace-gc output.

BUG=v8:1932
TEST=

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

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

12 years agoHeap profiler should report implicit references.
yurys@chromium.org [Fri, 3 Feb 2012 14:51:53 +0000 (14:51 +0000)]
Heap profiler should report implicit references.

Implicit references reported to V8 with V8::AddImplicitReferences calls are now reported by heap profiler as 'native' references with type kInternal.

Original WebKit bug report: https://bugs.webkit.org/show_bug.cgi?id=77414
Review URL: https://chromiumcodereview.appspot.com/9316092

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

12 years agoFix compilation failure introduced by r10601.
vegorov@chromium.org [Fri, 3 Feb 2012 14:30:48 +0000 (14:30 +0000)]
Fix compilation failure introduced by r10601.

Cast intptr_t to int in PrintFs.

TBR=erik.corry@gmail.com

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

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

12 years agoTweak compaction candidate selection to avoid keeping page with low occupancy around.
vegorov@chromium.org [Fri, 3 Feb 2012 14:16:40 +0000 (14:16 +0000)]
Tweak compaction candidate selection to avoid keeping page with low occupancy around.

Increase slots buffer chain length to 15 to make compaction more aggressive and usefull.

Pass gc and collector selection reasons to GCTracer to allow more meaningull --gc-trace.

Print fragmentation of spaces that we do not compact.

R=erik.corry@gmail.com

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

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

12 years agoRemoved IsTransitionType predicate.
svenpanne@chromium.org [Fri, 3 Feb 2012 13:37:13 +0000 (13:37 +0000)]
Removed IsTransitionType predicate.

With the upcoming changes to CALLBACKS properties, a predicate on the transition
type alone doesn't make sense anymore: For CALLBACKS one has to look into the
property's value to decide, and there is even the possibility of having a an
accessor function *and* a transition in the same property.

I am not completely happy with some parts of this CL, because they contain
redundant code, but given the various representations we currently have for
property type/value pairs, I can see no easy way around that. Perhaps one can
improve this a bit in a different CL, the current diversity really, really hurts
productivity...

As a bonus, this CL includes a few minor things:

 * CaseClause::RecordTypeFeedback has been cleaned up and it handles the
   NULL_DESCRIPTOR case correctly now. Under some (very unlikely) circumstances,
   we previously missed some opportunities for monomorphic calls. In general, it
   is rather unfortunate that NULL_DESCRIPTOR "shines through", it is just a
   hack for the inability to remove a descriptor entry during GC, something
   callers shouldn't have to be aware of.

 * DescriptorArray::CopyInsert has been cleaned up a bit, preparing it for later
   CALLBACKS-related changes.

 * LookupResult::Print is now more informative for CONSTANT_TRANSITION.

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

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

12 years agoARM: More micro-optimization of megamorphic lookup.
erik.corry@gmail.com [Fri, 3 Feb 2012 12:48:21 +0000 (12:48 +0000)]
ARM: More micro-optimization of megamorphic lookup.
Review URL: https://chromiumcodereview.appspot.com/9323004

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

12 years agoFix presubmit errors.
fschneider@chromium.org [Fri, 3 Feb 2012 12:43:33 +0000 (12:43 +0000)]
Fix presubmit errors.

TBR=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9309079

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

12 years agoAllow bailing out of the register allocator when running out of virtual registers.
fschneider@chromium.org [Fri, 3 Feb 2012 12:05:08 +0000 (12:05 +0000)]
Allow bailing out of the register allocator when running out of virtual registers.

1. Instead of checking upfront and estimating a limit for the number, we
now are able to stop register allocation and bailout when we don't
have enough virtual registers.

2. GCed some out-dated flags from flag-definition.h

3. Simplified the interface from the Lithium builder to the
register allocator in lithium-*.cc: For uses and definitions, we
just record the virtual register number given by the Hydrogen value id.
For temporaries, we request a new virtual register from the allocator.
For fixed temps, we don't need to do anything.

4. Increased number of deoptimization entries to 16K. Eventually we
probably want to make this array grow dynamically.
Review URL: https://chromiumcodereview.appspot.com/9325019

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

12 years agoOptionally export metadata with libv8 to enable debuggers to inspect V8 state.
vegorov@chromium.org [Thu, 2 Feb 2012 20:18:19 +0000 (20:18 +0000)]
Optionally export metadata with libv8 to enable debuggers to inspect V8 state.

Review URL: https://chromiumcodereview.appspot.com/8803024
Patch from David Pacheco <dap@joyent.com>.

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

12 years agoPrepare push to trunk. Now working on version 3.9.2.
jkummerow@chromium.org [Thu, 2 Feb 2012 16:18:52 +0000 (16:18 +0000)]
Prepare push to trunk.  Now working on version 3.9.2.

R=yangguo@chromium.org

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

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

12 years agomerge-to-branch.sh should correctly handle added/deleted files
danno@chromium.org [Thu, 2 Feb 2012 13:51:05 +0000 (13:51 +0000)]
merge-to-branch.sh should correctly handle added/deleted files

R=jkummerow@chromium.org

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

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

12 years agoARM microoptimizations to megamorphic stub probing.
erik.corry@gmail.com [Thu, 2 Feb 2012 13:41:06 +0000 (13:41 +0000)]
ARM microoptimizations to megamorphic stub probing.
Review URL: https://chromiumcodereview.appspot.com/9323002

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

12 years agoUsing local file src/sconsbuild/Debug/test_shell_tests.
loislo@chromium.org [Thu, 2 Feb 2012 13:26:52 +0000 (13:26 +0000)]
Using local file src/sconsbuild/Debug/test_shell_tests.
Leak of 16 bytes in 1 objects allocated from:
@ 8c06b85 v8::internal::NativeObjectsExplorer::FindOrAddGroupInfo

BUG=112315
TEST=heapcheck build

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

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

12 years agoFix elements transition bug on x64 in generic KeyedStoreIC
danno@chromium.org [Thu, 2 Feb 2012 13:17:46 +0000 (13:17 +0000)]
Fix elements transition bug on x64 in generic KeyedStoreIC

R=jkummerow@chromium.org

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

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

12 years agoExtend --trace-gc to output amount of memory reserved for V8 heap.
vegorov@chromium.org [Thu, 2 Feb 2012 11:47:23 +0000 (11:47 +0000)]
Extend --trace-gc to output amount of memory reserved for V8 heap.

This allows one to spot fragmentation issues just by looking at --trace-gc output.

R=erik.corry@gmail.com

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

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

12 years agoHandle single element array growth + transition in generic KeyedStoreIC
danno@chromium.org [Thu, 2 Feb 2012 11:22:26 +0000 (11:22 +0000)]
Handle single element array growth + transition in generic KeyedStoreIC

BUG=none
TEST=3d-cube faster

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

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

12 years agoDo not ignore an empty context with extension when creating a scope object.
ulan@chromium.org [Thu, 2 Feb 2012 09:35:12 +0000 (09:35 +0000)]
Do not ignore an empty context with extension when creating a scope object.

Runtime_DebugEvaluate creates an empty context which is not correctly handled in FullCodeGenerator::ContextSlotOperandCheckExtensions because the corresponding scope indicates that it has no context.

BUG=crbug.com/107996
TEST=test/mjsunit/regress/regress-crbug-107996.js

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

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

12 years agoFix compile error on linux shared.
ulan@chromium.org [Wed, 1 Feb 2012 17:28:04 +0000 (17:28 +0000)]
Fix compile error on linux shared.

BUG=
TEST=

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

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

12 years agoAllow d8 to run a script multiple times, each time with a new context.
ulan@chromium.org [Wed, 1 Feb 2012 16:47:06 +0000 (16:47 +0000)]
Allow d8 to run a script multiple times, each time with a new context.

BUG=
TEST=

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

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

12 years agoAdding new marker for targets that rely on static library dependencies
jkummerow@chromium.org [Wed, 1 Feb 2012 15:31:57 +0000 (15:31 +0000)]
Adding new marker for targets that rely on static library dependencies
traversing none type targets. In preparation for a gyp change to the default
behavior.

BUG=None
TEST=None
R=ager@chromium.org

Review URL: https://chromiumcodereview.appspot.com/7616013
Patch from Brad Nelson <bradnelson@google.com>.

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

12 years agoAdd a getter for value set with AllowCodeGenerationFromStrings
yurys@chromium.org [Wed, 1 Feb 2012 12:58:34 +0000 (12:58 +0000)]
Add a getter for value set with AllowCodeGenerationFromStrings
Review URL: https://chromiumcodereview.appspot.com/9223016

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

12 years agoPrepare push to trunk. Now working on version 3.9.1.
danno@chromium.org [Wed, 1 Feb 2012 10:43:19 +0000 (10:43 +0000)]
Prepare push to trunk.  Now working on version 3.9.1.

R=yangguo@chromium.org

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

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

12 years agoMIPS: Fix for assertion failure on kraken on ARM (Issue 1923).
danno@chromium.org [Wed, 1 Feb 2012 10:28:00 +0000 (10:28 +0000)]
MIPS: Fix for assertion failure on kraken on ARM (Issue 1923).

Port r10570 (aa5a8c8e)

BUG=
TEST=

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

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

12 years agoGive uses within a loop a greater weight when doing representation inference.
svenpanne@chromium.org [Wed, 1 Feb 2012 08:49:18 +0000 (08:49 +0000)]
Give uses within a loop a greater weight when doing representation inference.

Uses of a value are weighted by a factor of FLAG_loop_weight (default: 10) for
every loop they are in. This makes uses in inner loops "more important", which
should improve the result of the representation inference.

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

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

12 years agoSave zone memory in LEnvironment by using a bit vector.
fschneider@chromium.org [Tue, 31 Jan 2012 17:19:19 +0000 (17:19 +0000)]
Save zone memory in LEnvironment by using a bit vector.

We don't need to store the full representation for each value. Instead
a bit to indicate tagged/untagged is enough.
Review URL: http://codereview.chromium.org/9104042

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

12 years agoRemove a little more dead code from lithium-* files.
fschneider@chromium.org [Tue, 31 Jan 2012 15:00:13 +0000 (15:00 +0000)]
Remove a little more dead code from lithium-* files.
Review URL: http://codereview.chromium.org/9301040

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

12 years agoFix for assertion failure on kraken on ARM (Issue 1923).
danno@chromium.org [Tue, 31 Jan 2012 13:55:46 +0000 (13:55 +0000)]
Fix for assertion failure on kraken on ARM (Issue 1923).

BUG=http://code.google.com/p/v8/issues/detail?id=1923
TEST=none

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

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

12 years agoRevert memory saving change due to failures on multithreaded tests
erik.corry@gmail.com [Tue, 31 Jan 2012 13:33:44 +0000 (13:33 +0000)]
Revert memory saving change due to failures on multithreaded tests
on Windows.
Review URL: https://chromiumcodereview.appspot.com/9104039

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

12 years agoMIPS: Some assembler-level optimizations on ARM.
yangguo@chromium.org [Tue, 31 Jan 2012 12:45:27 +0000 (12:45 +0000)]
MIPS: Some assembler-level optimizations on ARM.

Port r10541 (0aab14ba).

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9296046
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoMIPS: Improve register allocation for Lithium representation changes on ARM
danno@chromium.org [Tue, 31 Jan 2012 12:33:46 +0000 (12:33 +0000)]
MIPS: Improve register allocation for Lithium representation changes on ARM

Port r10538 (21c5dc1).

MIPS-specific changes:
-moved MacroAssembler::SmiTagCheckOverflow definition to macro-assembler-mips.cc from the header
-added optimized 3-argument version of said function
-removed the related, completely unused TrySmiTag function

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9296045
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoFix test case to correctly check expected result.
mstarzinger@chromium.org [Tue, 31 Jan 2012 12:31:24 +0000 (12:31 +0000)]
Fix test case to correctly check expected result.

R=vegorov@chromium.org
TEST=mjsunit/regress/regress-1229

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

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

12 years agoMore compile breakage.
erik.corry@gmail.com [Tue, 31 Jan 2012 12:15:21 +0000 (12:15 +0000)]
More compile breakage.
Review URL: https://chromiumcodereview.appspot.com/9303030

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

12 years agoAdd GC handling for new field in DeoptimizedFrameInfo.
yangguo@chromium.org [Tue, 31 Jan 2012 12:08:33 +0000 (12:08 +0000)]
Add GC handling for new field in DeoptimizedFrameInfo.

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

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

12 years agoFix compile error on Mac.
erik.corry@gmail.com [Tue, 31 Jan 2012 12:06:00 +0000 (12:06 +0000)]
Fix compile error on Mac.
Review URL: https://chromiumcodereview.appspot.com/9293032

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

12 years agoReduce memory use immediately after boot.
erik.corry@gmail.com [Tue, 31 Jan 2012 11:22:35 +0000 (11:22 +0000)]
Reduce memory use immediately after boot.
This is a recommit of https://chromiumcodereview.appspot.com/9289047
with changes noted in comments in the codereview tool.
Review URL: https://chromiumcodereview.appspot.com/9233050

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

12 years agoAdd a script to automatically merge patches to a branch
danno@chromium.org [Tue, 31 Jan 2012 11:17:17 +0000 (11:17 +0000)]
Add a script to automatically merge patches to a branch

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

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

12 years agoMIPS: Add signal context definitions for use with Android. (2nd try)
danno@chromium.org [Tue, 31 Jan 2012 08:41:16 +0000 (08:41 +0000)]
MIPS: Add signal context definitions for use with Android. (2nd try)

As with Arm, the kernel defines this stuff, but bionic lib does not.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9298016
Patch from Paul Lind <plind44@gmail.com>.

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

12 years agoGet rid of a useless helper method in the register allocator.
fschneider@chromium.org [Mon, 30 Jan 2012 15:40:50 +0000 (15:40 +0000)]
Get rid of a useless helper method in the register allocator.

Reading the virtual register from a LOperand is only needed used for
unallocated LOperands (LUnallocated). There is no need for having a
method for that on LOperand.
Review URL: http://codereview.chromium.org/9293003

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

12 years agoFix dictionary size for type feedback oracle.
mstarzinger@chromium.org [Mon, 30 Jan 2012 15:24:35 +0000 (15:24 +0000)]
Fix dictionary size for type feedback oracle.

R=erik.corry@gmail.com

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

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

12 years agoFix for an obscure ARM GCC bug
svenpanne@chromium.org [Mon, 30 Jan 2012 14:57:36 +0000 (14:57 +0000)]
Fix for an obscure ARM GCC bug

Removing 2 "static" modifiers which didn't really serve a purpose did
the trick...

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

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

12 years agoHandle CALLBACKS with map transitions when doing GC in the map tree.
svenpanne@chromium.org [Mon, 30 Jan 2012 14:23:35 +0000 (14:23 +0000)]
Handle CALLBACKS with map transitions when doing GC in the map tree.

This is yet anoter part of a long chain of CLs to achieve map sharing
when JavaScript accessors are used.

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

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

12 years agoFind correct source position in inlined functions on debug break.
yangguo@chromium.org [Mon, 30 Jan 2012 13:07:01 +0000 (13:07 +0000)]
Find correct source position in inlined functions on debug break.

BUG=110010
TEST=test-debug/DebugBreakInline

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

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

12 years agoInline an inline function into the CHECK macro
svenpanne@chromium.org [Mon, 30 Jan 2012 13:02:48 +0000 (13:02 +0000)]
Inline an inline function into the CHECK macro

CheckHelper was only used within the macro itself. Furthermore, GCC
with -Winline was not always happy with the inline function. Simple
solution: Inline the inline function into the macro itself. Inlining
squared!

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

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

12 years agoRemoving some dead flags.
yangguo@chromium.org [Mon, 30 Jan 2012 12:25:29 +0000 (12:25 +0000)]
Removing some dead flags.

BUG=
TEST=

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

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

12 years agoRemove a dead method from lithium-* files.
fschneider@chromium.org [Mon, 30 Jan 2012 12:16:31 +0000 (12:16 +0000)]
Remove a dead method from lithium-* files.
Review URL: http://codereview.chromium.org/9297059

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

12 years agoMIPS: Fix and adapt debugger for new call target caches.
mstarzinger@chromium.org [Mon, 30 Jan 2012 11:10:14 +0000 (11:10 +0000)]
MIPS: Fix and adapt debugger for new call target caches.

Port of r10540.

R=yangguo@chromium.org
TEST=mjsunit/debug-stepout-scope

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

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

12 years agoMIPS: Implement target cache for constructor calls.
mstarzinger@chromium.org [Mon, 30 Jan 2012 10:58:22 +0000 (10:58 +0000)]
MIPS: Implement target cache for constructor calls.

Port r10531 (d61db240).

Original commit message:

This caches call targets of constructor calls by associating one element
caches with call sites. The type feedback oracle can use the recorded
valued to gather type information for monomorphic constructor call sites.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9298014
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoFix presubmit.
yangguo@chromium.org [Mon, 30 Jan 2012 10:49:25 +0000 (10:49 +0000)]
Fix presubmit.

BUG=
TEST=

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

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

12 years agoRevert 10542 (boot time memory reduction) due to map alignment
erik.corry@gmail.com [Mon, 30 Jan 2012 10:20:13 +0000 (10:20 +0000)]
Revert 10542 (boot time memory reduction) due to map alignment
issues on 64 bit.
Review URL: https://chromiumcodereview.appspot.com/9295047

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

12 years agoInclude what you use for the files zone*
yangguo@chromium.org [Mon, 30 Jan 2012 10:13:21 +0000 (10:13 +0000)]
Include what you use for the files zone*

BUG=
TEST=

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

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

12 years agoReduce boot-up memory use of V8.
erik.corry@gmail.com [Mon, 30 Jan 2012 09:15:34 +0000 (09:15 +0000)]
Reduce boot-up memory use of V8.
This is a recommit of http://codereview.chromium.org/9179012
after fixing what turned out to be unrelated out-of-memory
errors.
That was a rebase of http://codereview.chromium.org/9017009/
Review URL: https://chromiumcodereview.appspot.com/9289047

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

12 years agoSome assembler-level optimizations on ARM.
yangguo@chromium.org [Fri, 27 Jan 2012 16:54:22 +0000 (16:54 +0000)]
Some assembler-level optimizations on ARM.

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

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

12 years agoFix and adapt debugger for new call target caches.
mstarzinger@chromium.org [Fri, 27 Jan 2012 16:09:20 +0000 (16:09 +0000)]
Fix and adapt debugger for new call target caches.

R=yangguo@chromium.org
TEST=mjsunit/debug-stepout-scope

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

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

12 years agoBreak a circular include dependency.
kmillikin@chromium.org [Fri, 27 Jan 2012 15:53:24 +0000 (15:53 +0000)]
Break a circular include dependency.

1. heap-inl.h has a function Heap::_inline_get_heap_ that calls
Isolate::Current() defined in isolate.h, so heap-inl.h requires
isolate.h.

2. Isolate has an embedded Heap member, so isolate.h requires heap.h.

3. heap.h has inline functions functions defined that call
Heap::_inline_get_heap_, so heap.h requires heap-inl.h (!).

The upshot is that all three need to be included wherever one is.  A
simpler way is to break the cycle by moving the inlined functions in
heap.h to heap-inl.h.

R=vegorov@chromium.org
BUG=
TEST=

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

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

12 years agoImprove register allocation for Lithium representation changes on ARM
danno@chromium.org [Fri, 27 Jan 2012 14:55:20 +0000 (14:55 +0000)]
Improve register allocation for Lithium representation changes on ARM

BUG=none
TEST=none

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

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

12 years agoMIPS: Store transitioned JSArray maps in global context
danno@chromium.org [Fri, 27 Jan 2012 14:40:42 +0000 (14:40 +0000)]
MIPS: Store transitioned JSArray maps in global context

Port r10523 (79463).

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9298011
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoFix build for ARM in release mode after r10531.
mstarzinger@chromium.org [Fri, 27 Jan 2012 13:20:01 +0000 (13:20 +0000)]
Fix build for ARM in release mode after r10531.

TBR=erik.corry@gmail.com

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

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

12 years agoAnother fix for Linux64 compilation.
loislo@chromium.org [Fri, 27 Jan 2012 13:09:15 +0000 (13:09 +0000)]
Another fix for Linux64 compilation.

BUG=none
TEST=none
TBR=mnaganov

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

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

12 years agoDo not turn on typeof null reform with --harmony switch.
rossberg@chromium.org [Fri, 27 Jan 2012 13:07:39 +0000 (13:07 +0000)]
Do not turn on typeof null reform with --harmony switch.

R=yangguo@chromium.org
BUG=v8:1913
TEST=

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

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

12 years agoImplement target cache for constructor calls.
mstarzinger@chromium.org [Fri, 27 Jan 2012 13:03:19 +0000 (13:03 +0000)]
Implement target cache for constructor calls.

This caches call targets of constructor calls by associating one element
caches with call sites. The type feedback oracle can use the recorded
valued to gather type information for monomorphic constructor call sites.

R=kmillikin@chromium.org,vegorov@chromium.org

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

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

12 years agoBuild fix for Linux64 after r10529.
loislo@chromium.org [Fri, 27 Jan 2012 13:01:16 +0000 (13:01 +0000)]
Build fix for Linux64 after r10529.

BUG=none
TEST=none
TBR=mnaganov

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

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

12 years agoBuild fix for Win64 bot after r10528.
loislo@chromium.org [Fri, 27 Jan 2012 12:36:13 +0000 (12:36 +0000)]
Build fix for Win64 bot after r10528.

BUG=none
TEST=none
TBR=mnaganov

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

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

12 years agoDetailed heap snapshot usability improvement.
loislo@chromium.org [Fri, 27 Jan 2012 12:02:57 +0000 (12:02 +0000)]
Detailed heap snapshot usability improvement.

The detailed heap snapshot has two groups of nodes. The first one
is the group for v8 heap nodes and the second one is the group for
native objects. At the moment we have two different sets of native
objects. There are 'Detached DOM trees' and 'Document DOM trees' type of objects.

I think it'd be nice to replace one group containing all native objects with
separate groups for different types of native objects.

BUG=none
TEST=HeapSnapshotRetainedObjectInfo

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

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

12 years agoRollback 10525: MIPS: Add signal context definitions for use with Android.
danno@chromium.org [Fri, 27 Jan 2012 11:43:40 +0000 (11:43 +0000)]
Rollback 10525: MIPS: Add signal context definitions for use with Android.

TBR=ulan@chromium.org
BUG=
TEST=

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

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

12 years agoBy popular demand: Slightly more honest typing in ClearNonLiveMapTransitions
svenpanne@chromium.org [Fri, 27 Jan 2012 09:34:05 +0000 (09:34 +0000)]
By popular demand: Slightly more honest typing in ClearNonLiveMapTransitions

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

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

12 years agoMIPS: Add signal context definitions for use with Android.
danno@chromium.org [Fri, 27 Jan 2012 08:59:42 +0000 (08:59 +0000)]
MIPS: Add signal context definitions for use with Android.

As with Arm, the kernel defines this stuff, but bionic lib does not.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9298003
Patch from Paul Lind <plind44@gmail.com>.

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

12 years agoAdd undefined check for default Array map in ArrayCodeGenericCommon
danno@chromium.org [Thu, 26 Jan 2012 22:33:54 +0000 (22:33 +0000)]
Add undefined check for default Array map in ArrayCodeGenericCommon

TBR=jkummerow@chromium.org
BUG=
TEST=

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

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

12 years agoStore transitioned JSArray maps in global context
danno@chromium.org [Thu, 26 Jan 2012 21:47:57 +0000 (21:47 +0000)]
Store transitioned JSArray maps in global context

BUG=
TEST=

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

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

12 years agoMIPS: Added Android-specific version of cacheflush call.
danno@chromium.org [Thu, 26 Jan 2012 16:54:44 +0000 (16:54 +0000)]
MIPS: Added Android-specific version of cacheflush call.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9234059
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoUse cmp instead of tst to check for zero.
yangguo@chromium.org [Thu, 26 Jan 2012 16:05:28 +0000 (16:05 +0000)]
Use cmp instead of tst to check for zero.

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

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

12 years agoMIPS: Reverted the number of deopt entries to 4096.
fschneider@chromium.org [Thu, 26 Jan 2012 15:53:21 +0000 (15:53 +0000)]
MIPS: Reverted the number of deopt entries to 4096.

On MIPS we cannot double the number of deoptimization entries easily
because the generated code would contain long branches (>128K) and we use
BlockTrampolinePoolScope in the Deoptimizer::TableEntryGenerator::GeneratePrologue method.
Also, we cannot use the Jr instruction here because the Deoptimizer::CreateCode method asserts
that the generated code does not contain reloc information.

BUG=
TEST=
Patch from Daniel Kalmar.
Review URL: http://codereview.chromium.org/9169079

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

12 years agoFlush number string cache on GC (bug 1605). Also start with a small
erik.corry@gmail.com [Thu, 26 Jan 2012 11:32:01 +0000 (11:32 +0000)]
Flush number string cache on GC (bug 1605).  Also start with a small
number string cache and only grow it if needed, which will be useful
for saving boot time memory use.
This is a second try for  https://chromiumcodereview.appspot.com/923502
after fixing an unrelated stack overflow issue.
Review URL: https://chromiumcodereview.appspot.com/9169080

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

12 years agoMIPS: Support inlining at call-sites with mismatched number of arguments.
vegorov@chromium.org [Thu, 26 Jan 2012 11:26:45 +0000 (11:26 +0000)]
MIPS: Support inlining at call-sites with mismatched number of arguments.

Port r10483 (8785a3ef)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9271068
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoFix intermittent stack overflow in Hydrogen code generation in tests.
erik.corry@gmail.com [Thu, 26 Jan 2012 11:14:19 +0000 (11:14 +0000)]
Fix intermittent stack overflow in Hydrogen code generation in tests.
Review URL: https://chromiumcodereview.appspot.com/9290044

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

12 years agoPrepare push to trunk. Now working on version 3.9.0.
yangguo@chromium.org [Thu, 26 Jan 2012 07:35:56 +0000 (07:35 +0000)]
Prepare push to trunk.  Now working on version 3.9.0.

R=svenpanne@chromium.org

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

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

12 years agoInclude what you use for allocation, api, assembler, and ast.
kmillikin@chromium.org [Wed, 25 Jan 2012 16:31:25 +0000 (16:31 +0000)]
Include what you use for allocation, api, assembler, and ast.

R=fschneider@chromium.org
BUG=
TEST=

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

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

12 years agoRevert 10502 (smaller number string cache) due to test failures.
erik.corry@gmail.com [Wed, 25 Jan 2012 15:17:26 +0000 (15:17 +0000)]
Revert 10502 (smaller number string cache) due to test failures.
Review URL: https://chromiumcodereview.appspot.com/9113060

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

12 years agoWhen preparing heap for breakpoints make sure not to flush away non-optimized code...
vegorov@chromium.org [Wed, 25 Jan 2012 15:11:59 +0000 (15:11 +0000)]
When preparing heap for breakpoints make sure not to flush away non-optimized code for inlined functions.

Debug::PrepareForBreakPoints was not fully populating active_functions list.

R=erik.corry@gmail.com
TEST=test/mjsunit/regress/regress-debug-code-recompilation.js

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

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

12 years agoFlush number string cache on GC (bug 1605). Also start with a small
erik.corry@gmail.com [Wed, 25 Jan 2012 14:27:58 +0000 (14:27 +0000)]
Flush number string cache on GC (bug 1605).  Also start with a small
number string cache and only grow it if needed, which will be useful
for saving boot time memory use.
Review URL: https://chromiumcodereview.appspot.com/9235029

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

12 years agoRefactoring only: Extracted 2 methods from ClearNonLiveTransitions
svenpanne@chromium.org [Wed, 25 Jan 2012 14:22:59 +0000 (14:22 +0000)]
Refactoring only: Extracted 2 methods from ClearNonLiveTransitions

This simple refactoring makes it very clear that clearing non-live transitions
actually consists of 2 quite separate things. Things would even be nicer if the
prototype transitions were represented by a separate data structure instead of
reusing FixedArray in an interesting way once again.

As an additional bonus, this CL makes it possible to read each of the methods in
question on a 30" screen without scrolling!

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

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

12 years agoFix responsiveness of high promotion mode heuristics.
mstarzinger@chromium.org [Wed, 25 Jan 2012 13:46:42 +0000 (13:46 +0000)]
Fix responsiveness of high promotion mode heuristics.

This changes the heuristics for the high promotion mode to be checked
on all GCs (including scavenges), so that changes in the applications
behavior are recognized earlier. It also fixes miscalculations in the
survival counter and rate which caused heuristics to fail completely.

R=vegorov@chromium.org
BUG=v8:1899

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

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

12 years agoProvide access to function inferred name in v8 public API
yurys@chromium.org [Wed, 25 Jan 2012 12:45:54 +0000 (12:45 +0000)]
Provide access to function inferred name in v8 public API
Review URL: https://chromiumcodereview.appspot.com/9146039

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

12 years agoFix disasm assertions for undefined instructions.
danno@chromium.org [Wed, 25 Jan 2012 12:43:32 +0000 (12:43 +0000)]
Fix disasm assertions for undefined instructions.

BUG=none
TEST=none

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

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

12 years agoMIPS: added --mips-arch-variant option to test.py.
danno@chromium.org [Wed, 25 Jan 2012 12:37:59 +0000 (12:37 +0000)]
MIPS: added --mips-arch-variant option to test.py.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9270005
Patch from Daniel Kalmar <kalmard@homejinni.com>.

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

12 years agoSilence warning from presubmit lint script
danno@chromium.org [Wed, 25 Jan 2012 12:32:05 +0000 (12:32 +0000)]
Silence warning from presubmit lint script

R=yangguo@chromium.org
BUG=
TEST=

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

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

12 years agoDo not follow accessor map transitions when marking descriptor arrays.
svenpanne@chromium.org [Wed, 25 Jan 2012 08:50:55 +0000 (08:50 +0000)]
Do not follow accessor map transitions when marking descriptor arrays.

Note that we currently have no such transitions, but we will in the future, and
we have to avoid keeping maps live too long.

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

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

12 years agoHandle map transitions in CALLBACKS when doing map tree traversal.
svenpanne@chromium.org [Wed, 25 Jan 2012 07:26:07 +0000 (07:26 +0000)]
Handle map transitions in CALLBACKS when doing map tree traversal.

We will have such transitions in the future and this CL is necessary to keep
slack tracking working then.

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

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

12 years agoInclude what you use in accessors.{h,cc}.
kmillikin@chromium.org [Wed, 25 Jan 2012 00:16:07 +0000 (00:16 +0000)]
Include what you use in accessors.{h,cc}.

R=fschneider@chromium.org
BUG=
TEST=

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

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