danno@chromium.org [Thu, 9 Feb 2012 14:55:32 +0000 (14:55 +0000)]
Ensure expected behavior for transition hosting tests by flushing ICs
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9373027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10668
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 9 Feb 2012 13:54:45 +0000 (13:54 +0000)]
Make constructors explicit.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9368026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10666
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 9 Feb 2012 13:49:30 +0000 (13:49 +0000)]
Prepare push to trunk. Now working on version 3.9.6.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9374017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10664
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 9 Feb 2012 13:40:41 +0000 (13:40 +0000)]
Extend AST with basic module constructs (yet unused).
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9373023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10663
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 9 Feb 2012 13:39:26 +0000 (13:39 +0000)]
Split AST Declaration class, in preparation for new module declaration forms.
Turns Declaration into an abstract class, and introduces VariableDeclaration as a concrete subclass.
R=kmillikin@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9348057
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10662
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 9 Feb 2012 13:32:11 +0000 (13:32 +0000)]
MIPS: Convert fast smi-only to fast object in generated code for array push.
Port r10648 (818a1aa).
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9372022
Patch from Daniel Kalmar <kalmard@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10661
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 9 Feb 2012 13:30:01 +0000 (13:30 +0000)]
Split experimental profiler flags
Review URL: https://chromiumcodereview.appspot.com/9374015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10660
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 9 Feb 2012 13:07:46 +0000 (13:07 +0000)]
Revert 9111036: Promote double arrays to FAST_ELEMENT that use generic KeyedLoadIC
It tanked Kraken.
TBR=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9368024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10659
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 9 Feb 2012 10:46:50 +0000 (10:46 +0000)]
Handlify GetSourceCode-related functions.
Review URL: https://chromiumcodereview.appspot.com/9374013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10658
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 9 Feb 2012 10:19:46 +0000 (10:19 +0000)]
Count-based profiling for primitive functions (hidden behind a flag)
Review URL: https://chromiumcodereview.appspot.com/9361026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10657
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 9 Feb 2012 09:55:14 +0000 (09:55 +0000)]
Cleaned up DescriptorArray::CopyInsert a bit.
The point of this refactoring is to remove some copy 'n' paste from the code,
preparing some upcoming changes related to CopyFrom and CALLBACKS with
transitions. The index fiddling is tricky enough to warrant a separate
refacoring-only CL...
Review URL: https://chromiumcodereview.appspot.com/9371013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10656
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 9 Feb 2012 09:52:38 +0000 (09:52 +0000)]
Fix d8-os unit test to be skipped for isolates.
This test sets the umask on a per-process basis and hence cannot be
used in multi-threaded runs.
R=yangguo@chromium.org
TEST=mjsunit/d8-os
Review URL: https://chromiumcodereview.appspot.com/9372018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10655
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Thu, 9 Feb 2012 09:43:37 +0000 (09:43 +0000)]
Simplify handler pushing.
Instead of using two separate bits to encode three possible values, use
three values to encode the three possible values.
R=svenpanne@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9372016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10654
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 9 Feb 2012 09:13:31 +0000 (09:13 +0000)]
Simplify stackframe of construct stub on ARM and MIPS.
This unifies the stackframe layout of the generic constructor stub to be
in sync with ia32 and x64. There was an unecessary copy of the construct
function saved on the stack which wasn't used at all.
R=erik.corry@gmail.com
Review URL: https://chromiumcodereview.appspot.com/9348058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10653
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 9 Feb 2012 09:11:04 +0000 (09:11 +0000)]
Promote double arrays to FAST_ELEMENT that use generic KeyedLoadIC
Review URL: https://chromiumcodereview.appspot.com/9111036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10652
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 9 Feb 2012 08:58:19 +0000 (08:58 +0000)]
Improve GVN handling of ElementTransitions.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9141016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10651
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Thu, 9 Feb 2012 08:47:18 +0000 (08:47 +0000)]
Increase timeout when running test.py with the --stress-opt option.
Review URL: https://chromiumcodereview.appspot.com/9361033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10650
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 8 Feb 2012 17:20:35 +0000 (17:20 +0000)]
Bash completion for d8: fix directory name completion
TEST="out/ia32.release/d8 te<tab>" gets completed to "test/" with trailing slash
Review URL: https://chromiumcodereview.appspot.com/9363025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10649
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 8 Feb 2012 17:05:59 +0000 (17:05 +0000)]
Convert fast smi-only to fast object in generated code for array push.
Review URL: https://chromiumcodereview.appspot.com/9365020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10648
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Wed, 8 Feb 2012 15:44:07 +0000 (15:44 +0000)]
Ensure that regexp code flushing correctly updates slots buffer.
Enable code compaction again.
R=erik.corry@gmail.com
Review URL: https://chromiumcodereview.appspot.com/9365019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10647
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Wed, 8 Feb 2012 15:39:41 +0000 (15:39 +0000)]
Remove 5 unused flags.
Review URL: https://chromiumcodereview.appspot.com/9362014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10646
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 8 Feb 2012 14:43:36 +0000 (14:43 +0000)]
MIPS: Handle single element array growth + transition in generic KeyedStoreIC
Port r10583 (505679e).
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9316061
Patch from Daniel Kalmar <kalmard@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10645
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 8 Feb 2012 14:41:10 +0000 (14:41 +0000)]
MIPS: Don't allow large immediates for certain instructions.
Some instructions can use >16 bit immediates if they represent a <=16 bit signed value.
However some logical instructions (andi, xori, ori, lui) should always treat the immediate value as unsigned.
This patch adds an ASSERT to these places and a minor change to MacroAssembler::li to satisfy this.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9309077
Patch from Daniel Kalmar <kalmard@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10644
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Wed, 8 Feb 2012 13:53:24 +0000 (13:53 +0000)]
Remove the JSON AST printing support.
We are not currently maintaining or testing this.
R=danno@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9363019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10643
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 8 Feb 2012 13:14:24 +0000 (13:14 +0000)]
MIPS: Enabled native/cross-compilation for MIPS targets in the gyp system.
Also added selectable mips32r2 mode.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9361024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10642
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 8 Feb 2012 12:49:04 +0000 (12:49 +0000)]
Remove remaining occurrences of the unused --opt-eagerly flag.
Fix a lint error.
Review URL: https://chromiumcodereview.appspot.com/9365015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10641
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 8 Feb 2012 12:08:46 +0000 (12:08 +0000)]
Inline builtin Math functions functions in more cases.
Until now we only could inline as specialized HIR instructions when called
as a method (e.g. Math.abs)
It is very common practice to abbreviate calls to those functions by defining
a global or local variable like:
var a = Math.abs;
var x = a(123);
This change allows inlining them when called as a function (global or local).
Review URL: https://chromiumcodereview.appspot.com/9365013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10640
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 8 Feb 2012 10:59:19 +0000 (10:59 +0000)]
Fix d8-os unit test to work with isolates.
We cannot use chdir to set the working directory on a per-isolate basis,
hence we need to specify absolute directories instead for this test to
work properly on multi-threaded runs.
R=yangguo@chromium.org
TEST=mjsunit/d8-os
Review URL: https://chromiumcodereview.appspot.com/9348051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10639
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 8 Feb 2012 10:53:58 +0000 (10:53 +0000)]
Extend scanner with new Harmony module keywords (under flag).
R=mstarzinger@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9352013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10638
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 8 Feb 2012 10:33:30 +0000 (10:33 +0000)]
MIPS: Fix compilation error after removing an unused flag.
TBR=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9348049
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10637
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 8 Feb 2012 10:26:17 +0000 (10:26 +0000)]
Remove another two unused flags.
Review URL: https://chromiumcodereview.appspot.com/9358019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10634
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 8 Feb 2012 10:23:10 +0000 (10:23 +0000)]
Prepare push to trunk. Now working on version 3.9.5.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9358021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10633
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 8 Feb 2012 10:14:18 +0000 (10:14 +0000)]
Enable membrane example for proxies again.
R=rossberg@chromium.org
BUG=v8:1845
TEST=mjsunit/harmony/proxies-example-membrane
Review URL: https://chromiumcodereview.appspot.com/9365011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10632
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 8 Feb 2012 09:56:33 +0000 (09:56 +0000)]
Collect AstNode type information
Review URL: https://chromiumcodereview.appspot.com/9221011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10631
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Wed, 8 Feb 2012 09:55:25 +0000 (09:55 +0000)]
Remove unused --peephole-optimization flag.
R=danno@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9361022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10630
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 8 Feb 2012 09:50:13 +0000 (09:50 +0000)]
Fix elements transition bug related to array.concat.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9358018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10629
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Wed, 8 Feb 2012 08:40:11 +0000 (08:40 +0000)]
Fix handling of 'c: if (0) break c; else ()' where a parser optimization
leaves a trailing ";" after removing the break.
Review URL: https://chromiumcodereview.appspot.com/9159043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10628
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 8 Feb 2012 07:23:14 +0000 (07:23 +0000)]
Fixed assertions when accessing the hidden properties dictionary.
TBR=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9360012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10627
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 7 Feb 2012 16:34:26 +0000 (16:34 +0000)]
Disable code compaction again.
Check failures are gone but now layout tests are failing.
R=fschneider@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9351019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10626
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 7 Feb 2012 14:43:51 +0000 (14:43 +0000)]
Try enabling (non-incremental) code compaction again.
This time include slot-recording fixes in code flushing that were accidentally omitted from the previous commit.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9348018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10625
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 7 Feb 2012 14:03:13 +0000 (14:03 +0000)]
Properly initialize element-transitioning array literals on ARM.
R=erikcorry@gmail.com
BUG=v8:1930
TEST=unit tests with enable_vfp3=true
Review URL: https://chromiumcodereview.appspot.com/9316131
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10624
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 7 Feb 2012 12:40:48 +0000 (12:40 +0000)]
Add filename completion to d8's bash completion.
Review URL: https://chromiumcodereview.appspot.com/9346017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10623
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 7 Feb 2012 12:04:36 +0000 (12:04 +0000)]
Prepare push to trunk. Now working on version 3.9.4.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9348014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10620
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 7 Feb 2012 10:03:08 +0000 (10:03 +0000)]
Disable code compaction again while we investigate buildbot check failures.
Review URL: https://chromiumcodereview.appspot.com/9351013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10619
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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