mvstanton@chromium.org
f26bcd9fef
Add field nested_sites to AllocationSite. This field is used to maintain
...
allocation site information for nested array and object literals.
It's not used productively in this CL, merely maintained in a minimal
way. (that comes next :)).
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/23463047
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 10:30:41 +00:00
mstarzinger@chromium.org
8cbb4dcb49
Handlify JSObject::MigrateInstance and friends.
...
This relands the original change from r16899 together with a bugfix for
two unhandlified values which became stale.
R=verwaest@chromium.org
TEST=mjsunit/debug-evaluate-locals-optimized (in GC stress mode)
Review URL: https://codereview.chromium.org/24210011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 19:56:36 +00:00
mstarzinger@chromium.org
40decafa84
Revert "Handlify JSObject::MigrateInstance and friends."
...
This is reverted due to mozilla/ecma/Date/15.9.5.9 failing on Windows.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/24374002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 16:53:59 +00:00
mstarzinger@chromium.org
1279103806
Handlify JSObject::MigrateInstance and friends.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23583052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 15:02:25 +00:00
mstarzinger@chromium.org
4d64bf9737
Handlify JSObject::AllocateStorageForMap method.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23464089
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:57:34 +00:00
mstarzinger@chromium.org
d87c0679dd
Hanldify JSObject::PreventExtensions method.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/24200005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 12:54:02 +00:00
mstarzinger@chromium.org
35142b817f
Handlify JSObject::NormalizeProperties method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23976010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:37:02 +00:00
verwaest@chromium.org
0bff3fa74b
Remove duplicate way of encoding the holder in the flags.
...
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24316002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:22:23 +00:00
mstarzinger@chromium.org
220c40542b
Handlify JSObject::Freeze method.
...
R=adamk@chromium.org
Review URL: https://codereview.chromium.org/24256004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 21:26:01 +00:00
mstarzinger@chromium.org
cd4dba243c
Handlify JSReceiver::SetPropertyWithDefinedSetter method.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/24176002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 17:03:32 +00:00
mvstanton@chromium.org
137b43c9a3
Added a DependentCode field to AllocationSite. It's not currently used,
...
this initial CL is just to get the object layout correct.
BUG=
R=hpayer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23567003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 14:13:34 +00:00
mstarzinger@chromium.org
137029a756
Handlify JSObject::AddFastPropertyUsingMap method.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/24195003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-18 16:41:12 +00:00
mstarzinger@chromium.org
83cb6a6351
Handlify JSObject::SetNormalizedProperty methods.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/24096017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-18 16:25:52 +00:00
mstarzinger@chromium.org
4c85efb597
Handlify JSReceiver::HasProperty and friends.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23496058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16762 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-17 11:34:20 +00:00
mstarzinger@chromium.org
16a22a96c3
Handlify JSReceiver::SetProperty and friends.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23601031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16758 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-17 11:01:43 +00:00
verwaest@chromium.org
223ac69ff6
Rename StubType MAP_TRANSITION to TRANSITION.
...
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24120007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16726 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-16 09:30:43 +00:00
dcarney@chromium.org
564a9a68b8
remove getcurrent from stubs
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23756009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-13 10:23:04 +00:00
mstarzinger@chromium.org
50b0567640
Handlify JSObject::DeepCopy method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/22934006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-13 09:51:11 +00:00
verwaest@chromium.org
e9c4a49866
Reland Handle non-JSObject heap objects using slow-path IC stub guarded by the map.
...
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23578030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 22:04:04 +00:00
mvstanton@chromium.org
5521e2e825
Bugfix: array constructors that expect a type feedback cell that points
...
to an AllocationSite were being passed the undefined object in some
cases. Clearly separate the cases where we have an AllocationSite and
where we don't in the general ArrayConstructorStub.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23477071
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 17:59:41 +00:00
verwaest@chromium.org
ff412d8c37
Revert "Handle non-JSObject heap objects using slow-path IC stub guarded by the map."
...
TBR=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23475039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 16:57:37 +00:00
verwaest@chromium.org
f375e0514b
Handle non-JSObject heap objects using slow-path IC stub guarded by the map.
...
BUG=chromium:280632
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23691056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 16:12:04 +00:00
mstarzinger@chromium.org
6c18fbc229
Use trampoline or handlified JSObject::SetLocalPropertyIgnoreAttributes.
...
R=verwaest@chromium.org
Committed: http://code.google.com/p/v8/source/detail?r=16642
Review URL: https://codereview.chromium.org/24093002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 13:27:42 +00:00
yangguo@chromium.org
151e514930
Simplify installing concurrently recompiled code.
...
Instead of overwriting the code entry of the function, we trigger
an interrupt to install the code on the main thread.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23542029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 11:30:56 +00:00
ulan@chromium.org
0e8e003077
Implement in-place rehashing of HashTable.
...
The algorithm puts elements into correct positions in multiple iterations.
On the first iteration it tries to put elements at entries specified by
their first hash probe. On the second iteration -- by the second
hash probe, and so on. Overall it does O(k*n) memory accesses, where
k is the maximum number of probes required for an element and n is the
capacity of the hash table. The expectation is that k will be small.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23658031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-12 11:03:27 +00:00
mstarzinger@chromium.org
8bf91ffe71
Revert "Use trampoline or handlified JSObject::SetLocalPropertyIgnoreAttributes".
...
This was reverted due to performance regressions on Sunspider and other
benchmarks due to double GCs caused by the trampoline.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23435006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16659 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-11 15:16:56 +00:00
mstarzinger@chromium.org
5dc202d274
Revert "Handlify JSObject::AddProperty method" for performance.
...
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23464069
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-11 13:42:57 +00:00
mstarzinger@chromium.org
c570640334
Handlify JSObject::AddProperty method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23883007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-11 11:00:36 +00:00
mstarzinger@chromium.org
ae7813cacf
Use trampoline or handlified JSObject::SetLocalPropertyIgnoreAttributes.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/24093002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-11 10:46:49 +00:00
dcarney@chromium.org
cc2257b92a
move HEAP to /test
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23468021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-11 07:14:41 +00:00
mstarzinger@chromium.org
448d98e19d
Use raw-to-handle trampoline in [Get/Set]HiddenPropertiesHashTable.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/23629040
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16623 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-10 14:33:06 +00:00
titzer@chromium.org
49d9555a97
Generate a custom OSR entrypoint for OSR compiles on all platforms, and transition to optimized code using the special entrypoint, instead of through the deoptimizer. Do not install the OSR compiled code as _the_ optimized code for a function.
...
Remove OSR-related stuff from deoptimizer.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/21340002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 16:34:40 +00:00
mstarzinger@chromium.org
1a26455d22
Handlify JSObject::EnsureCanContainHeapObjectElements method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23818005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 14:29:47 +00:00
dcarney@chromium.org
c20f87a654
add uncached Function::New
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24071002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 07:52:52 +00:00
dcarney@chromium.org
5b0a281604
revert 16584 for breaking build
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23680014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 07:16:24 +00:00
dcarney@chromium.org
ddc5d437bb
add uncached Function::New
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23561007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 07:08:34 +00:00
loislo@chromium.org
bbd26abedb
Functions may not be optimized and we would like to know in cpu profiler what was the reason.
...
Current v8 implementation may disable optimization for a particular function or block it with help of dont_optimize flag.
The patch propagates the reason of that to the SharedFunctionInfo where cpu profiler can get it.
SharedFunctionInfo is a heap object so I extracted 8 bits from OptsCount for handling bailout reason code.
BUG=none
TEST=test-profile-generator/BailoutReason
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23817003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16555 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-05 13:20:51 +00:00
dcarney@chromium.org
d208d048ac
remove most Isolate::Current asserts
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23493019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16552 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-05 11:27:22 +00:00
titzer@chromium.org
35490d82a9
Add OptimizedCodeList and DeoptimizedCodeList to native contexts. Both lists are weak. This makes it possible to find optimized code that is not referred to by any function, but still needs to be deoptimized. It obsoletes the weak deoptimizing code list in the deoptimizer data and generally simplifies the process of deoptimizing code.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23444029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 13:53:24 +00:00
yangguo@chromium.org
070e3b0af4
Introduce concurrent on-stack replacement.
...
Currently disabled behind --concurrent-osr.
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23710014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16527 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 12:55:59 +00:00
dcarney@chromium.org
7dcc12abf6
build fix for 16520
...
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23874010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16523 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 11:09:55 +00:00
dcarney@chromium.org
2b7efe05ae
remove Isolate::Current from most files starting with 'j' through 'o'
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23578012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 10:34:42 +00:00
dcarney@chromium.org
615c34869c
Push SetAccessor to Template
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23182003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 07:45:36 +00:00
dcarney@chromium.org
3e76d8b870
remove Isolate::Current from most files starting with 'o' through 'r'
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23757017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-04 07:05:11 +00:00
verwaest@chromium.org
3f70c3b07b
Allow uncacheable identifiers to go generic.
...
BUG=v8:2867
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23453019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-02 16:32:11 +00:00
jkummerow@chromium.org
6e4bec8f88
Bump MaxRegularSpaceAllocationSize to InitialSemiSpaceSize() * 4/5
...
to allow allocation of large packed arrays in paged spaces.
BUG=v8:2790
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23604023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-02 13:36:49 +00:00
titzer@chromium.org
7bd61f8ca4
Remove OptimizedCodeEntry *sigh*.
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23584004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-02 10:35:34 +00:00
mstarzinger@chromium.org
28fbc630d3
Handlify JSObject::SetAccessor method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23819003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-30 14:08:15 +00:00
mstarzinger@chromium.org
756a99bdba
Handlify JSObject::SetIdentityHash method.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23495011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-30 13:42:16 +00:00
mstarzinger@chromium.org
5d87a6c8e0
Handlify JSObject::DeleteHiddenProperty method.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23600011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-30 13:28:52 +00:00