fschneider@chromium.org
1604871e80
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
2012-01-30 15:40:50 +00:00
mstarzinger@chromium.org
ef45c3bfc9
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
2012-01-30 15:24:35 +00:00
svenpanne@chromium.org
96b590d95e
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
2012-01-30 14:57:36 +00:00
svenpanne@chromium.org
d466fbd312
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
2012-01-30 14:23:35 +00:00
yangguo@chromium.org
f7c09d99b7
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
2012-01-30 13:07:01 +00:00
svenpanne@chromium.org
375be4ae25
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
2012-01-30 13:02:48 +00:00
yangguo@chromium.org
f8115b345d
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
2012-01-30 12:25:29 +00:00
fschneider@chromium.org
c26695e75b
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
2012-01-30 12:16:31 +00:00
mstarzinger@chromium.org
f97cd1a0ef
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
2012-01-30 11:10:14 +00:00
mstarzinger@chromium.org
9ece818b56
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
2012-01-30 10:58:22 +00:00
yangguo@chromium.org
95c37ecbc9
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
2012-01-30 10:49:25 +00:00
erik.corry@gmail.com
a9428d2bcc
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
2012-01-30 10:20:13 +00:00
yangguo@chromium.org
97a0e497ca
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
2012-01-30 10:13:21 +00:00
erik.corry@gmail.com
419ea5fcc3
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
2012-01-30 09:15:34 +00:00
yangguo@chromium.org
f2eda210d0
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
2012-01-27 16:54:22 +00:00
mstarzinger@chromium.org
74feaa6c3d
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
2012-01-27 16:09:20 +00:00
kmillikin@chromium.org
87ccb1d740
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
2012-01-27 15:53:24 +00:00
danno@chromium.org
900a0012ce
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
2012-01-27 14:55:20 +00:00
danno@chromium.org
1c254fb59c
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
2012-01-27 14:40:42 +00:00
mstarzinger@chromium.org
7bc6526e64
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
2012-01-27 13:20:01 +00:00
loislo@chromium.org
e3f2cc292e
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
2012-01-27 13:09:15 +00:00
rossberg@chromium.org
b05d7619c8
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
2012-01-27 13:07:39 +00:00
mstarzinger@chromium.org
8c12b6b743
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
2012-01-27 13:03:19 +00:00
loislo@chromium.org
449d7e7def
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
2012-01-27 13:01:16 +00:00
loislo@chromium.org
b60805627f
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
2012-01-27 12:36:13 +00:00
loislo@chromium.org
07d720ec41
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
2012-01-27 12:02:57 +00:00
danno@chromium.org
a890d245b4
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
2012-01-27 11:43:40 +00:00
svenpanne@chromium.org
a538072a08
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
2012-01-27 09:34:05 +00:00
danno@chromium.org
14d23b710b
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
2012-01-27 08:59:42 +00:00
danno@chromium.org
39cab48faf
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
2012-01-26 22:33:54 +00:00
danno@chromium.org
57525ef893
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
2012-01-26 21:47:57 +00:00
danno@chromium.org
18f28fb2c0
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
2012-01-26 16:54:44 +00:00
yangguo@chromium.org
ea041a187c
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
2012-01-26 16:05:28 +00:00
fschneider@chromium.org
0d4fc913d0
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
2012-01-26 15:53:21 +00:00
erik.corry@gmail.com
448b6bbc41
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
2012-01-26 11:32:01 +00:00
vegorov@chromium.org
c712ecfdb0
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
2012-01-26 11:26:45 +00:00
erik.corry@gmail.com
d6f476dd41
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
2012-01-26 11:14:19 +00:00
yangguo@chromium.org
8e7c28c5b2
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
2012-01-26 07:35:56 +00:00
kmillikin@chromium.org
cb876c25a4
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
2012-01-25 16:31:25 +00:00
erik.corry@gmail.com
248adeb110
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
2012-01-25 15:17:26 +00:00
vegorov@chromium.org
67d72eab45
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
2012-01-25 15:11:59 +00:00
erik.corry@gmail.com
a49c8a19ee
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
2012-01-25 14:27:58 +00:00
svenpanne@chromium.org
7719981078
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
2012-01-25 14:22:59 +00:00
mstarzinger@chromium.org
4b913965a9
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
2012-01-25 13:46:42 +00:00
yurys@chromium.org
09ff5c4c44
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
2012-01-25 12:45:54 +00:00
danno@chromium.org
557e2cd90e
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
2012-01-25 12:43:32 +00:00
danno@chromium.org
2120206520
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
2012-01-25 12:37:59 +00:00
danno@chromium.org
adc196d86e
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
2012-01-25 12:32:05 +00:00
svenpanne@chromium.org
6859247172
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
2012-01-25 08:50:55 +00:00
svenpanne@chromium.org
891f0efa3f
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
2012-01-25 07:26:07 +00:00