verwaest@chromium.org
|
75432b7696
|
Revert "Use stability to only conditionally flush information from the CheckMaps table."
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/137863005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-12 15:38:42 +00:00 |
|
verwaest@chromium.org
|
2b7d33572a
|
Use stability to only conditionally flush information from the CheckMaps table.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/153823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-12 15:07:41 +00:00 |
|
jarin@chromium.org
|
af29e31a11
|
Fix for (One|Two)ByteSeqStringSetChar evaluation order/deopt.
This makes the evaluation order consistent between full codegen
and Hydrogen (so that deopt does not screw up stack).
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/159983008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19326 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-12 13:31:24 +00:00 |
|
ulan@chromium.org
|
e95bc7eec8
|
Merge experimental/a64 to bleeding_edge.
BUG=v8:3113
LOG=Y
R=jochen@chromium.org, rmcilroy@chromium.org, rodolph.perfetta@arm.com
Review URL: https://codereview.chromium.org/148293020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-12 09:19:30 +00:00 |
|
ishell@chromium.org
|
b446674c85
|
More check elimination improvements including partial learning on false branches of CompareMap and better handling of unreachable blocks.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/159963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 19:18:06 +00:00 |
|
jarin@chromium.org
|
21bf99e53e
|
Fix environment of the optimized version of the _SetValueOf intrinsic.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/158723006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 16:11:53 +00:00 |
|
ishell@chromium.org
|
994f0f6dda
|
Fix for a smi stores optimization on x64 with a test case.
BUG=338425
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/152923006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19288 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 16:02:18 +00:00 |
|
bmeurer@chromium.org
|
9a0a86fd4c
|
Get rid of the function sorting in for polymorphic calls.
The idea of this code was to sort functions according to
ticks spend executing them, but now these ticks are always
zero and therefore we fall back to sorting by AST length (or
even worse by source length) all the time, which is a bad,
arbitrary measure.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/159653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 10:48:37 +00:00 |
|
bmeurer@chromium.org
|
a5ef6e5eec
|
Improve inobject field tracking during GVN.
Now stores to inobject fields do no longer prevent hoisting
and combining of loads from other inobject fields.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/144423010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 06:53:14 +00:00 |
|
bmeurer@chromium.org
|
40f3b1ba87
|
Revert "Improve inobject field tracking during GVN."
This reverts commit r19427 for breaking the build. Will reland with
fix.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/143203005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 06:46:14 +00:00 |
|
bmeurer@chromium.org
|
cd1b7df638
|
Improve inobject field tracking during GVN.
Now stores to inobject fields do no longer prevent hoisting
and combining of loads from other inobject fields.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/144423010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-11 06:41:06 +00:00 |
|
verwaest@chromium.org
|
c1a08679dc
|
Merge BuildLoadKeyedGeneric and BuildStoreKeyedGeneric, switch on AccessType
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/146623007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-10 14:58:25 +00:00 |
|
verwaest@chromium.org
|
d2d3fc0e4d
|
Use PropertyAccessType for keyed accesses rather than "bool is_store"
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/137883008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-10 11:43:34 +00:00 |
|
verwaest@chromium.org
|
f19aeae06b
|
Unify BuildLoad/StoreNamedGeneric
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/155513008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-10 10:23:59 +00:00 |
|
verwaest@chromium.org
|
43c0a419ed
|
Remove special ArrayLength handling already covered by JSObjectFieldAccessors
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/153743005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-06 13:01:38 +00:00 |
|
jarin@chromium.org
|
476881ce5b
|
Test and fix for _CallFunction intrinsic deoptimization.
I have also cleaned up HOptimizedGraphBuilder::GenerateCallFunction
to use IfBuilder.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/131343013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-06 12:42:26 +00:00 |
|
jarin@chromium.org
|
eb502fe599
|
Binary operation deoptimization fix.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/132453009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-06 09:36:55 +00:00 |
|
dcarney@chromium.org
|
6df537d631
|
inline api setters in crankshaft
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/155913002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-06 07:31:08 +00:00 |
|
dcarney@chromium.org
|
5028ebaa8b
|
inline api getters in crankshaft
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/146023004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19110 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-05 15:52:31 +00:00 |
|
verwaest@chromium.org
|
5949fe1679
|
Merge named part of BuildLoad and BuildStore
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/149803007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-05 15:44:20 +00:00 |
|
verwaest@chromium.org
|
d985948c7a
|
Merge BuildLoad/StoreMonomorphic
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/137263021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-05 15:43:33 +00:00 |
|
verwaest@chromium.org
|
cb044fa2d8
|
Merge polymorphic load/store handling
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/150573010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19106 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-05 15:28:57 +00:00 |
|
verwaest@chromium.org
|
fb306f9811
|
Explicitly disallow stores to JSObjectAccessors (for now).
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/154873002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 22:46:53 +00:00 |
|
verwaest@chromium.org
|
2c3e6b41ff
|
Use PropertyAccessInfo to compute stores in crankshaft.
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/153933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 22:23:26 +00:00 |
|
verwaest@chromium.org
|
8ac80c5308
|
Use Type* in crankshaft rather than HeapType.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/152863002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 12:44:15 +00:00 |
|
ishell@chromium.org
|
0f89c8b91d
|
Fix in array instance type initialization.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/134713004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19058 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 10:59:40 +00:00 |
|
ishell@chromium.org
|
05270212c3
|
Remake of the load elimination fix made earlier (r18884).
R=titzer@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/149063010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 10:48:49 +00:00 |
|
hpayer@chromium.org
|
8d1504b238
|
Just initialize elements pointer in fast literal when pre-tenuring.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/148253004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-04 10:41:16 +00:00 |
|
yangguo@chromium.org
|
9e70f6a4e7
|
Fix short-circuiting logical and/or in HOptimizedGraphBuilder.
R=jkummerow@chromium.org
BUG=336148
LOG=Y
Review URL: https://codereview.chromium.org/143263022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-03 14:29:34 +00:00 |
|
ishell@chromium.org
|
b98637ce5e
|
Elements field of newly allocated JSArray could be left uninitialized in some cases (fast literal case).
BUG=340124
LOG=Y
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/152673004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-03 13:33:26 +00:00 |
|
verwaest@chromium.org
|
ae7a209e71
|
Remove CallICs
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/148223002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-31 16:52:17 +00:00 |
|
jochen@chromium.org
|
253edf246f
|
Remove IsRegExpEquivalent.
It's not used anywhere.
BUG=none
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/141563013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-31 14:17:02 +00:00 |
|
ishell@chromium.org
|
2aa17c6e62
|
Load elimination fix: load should not be replaced with another load if the former is not dominated by the latter.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/151333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-31 12:03:32 +00:00 |
|
verwaest@chromium.org
|
bef13f739c
|
Fix regression caused by supporting inlining accesses to non-JSObjects
TBR=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/150983002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-31 00:29:04 +00:00 |
|
verwaest@chromium.org
|
1280edd4e5
|
Fix polymorphic load handling.
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/150453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-30 16:44:32 +00:00 |
|
dcarney@chromium.org
|
5c589640bf
|
crankshaft support for api method calls
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/148333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-30 13:18:41 +00:00 |
|
verwaest@chromium.org
|
b73101d539
|
Optimize HWrapReceiver
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/135593006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-30 12:52:49 +00:00 |
|
verwaest@chromium.org
|
73529a7d14
|
Support loads from primitive values.
This also changes load computation to use HeapTypes rather than Maps.
TODO: move conversion between maps and heaptypes earlier in the process, already in the oracle.
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/147763006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-30 11:30:38 +00:00 |
|
bmeurer@chromium.org
|
4a0959e360
|
Replace HThrow with HCallRuntime.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/131103021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 14:03:32 +00:00 |
|
bmeurer@chromium.org
|
87a3951c11
|
Remove the HValueOf instruction.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/139233004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 13:41:00 +00:00 |
|
bmeurer@chromium.org
|
3ba2f104c9
|
Turn RegExpConstructResultStub into a HydrogenCodeStub.
This has the additional benefit that it is now possible to
inline the RegExpResult construction code into Hydrogen
builtins.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/141703018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 13:10:35 +00:00 |
|
verwaest@chromium.org
|
0537955a89
|
Extend ArrayPop hydrogen support to COW arrays and popping from empty arrays.
R=mvstanton@chromium.org
BUG=
Review URL: https://codereview.chromium.org/148093009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 12:53:40 +00:00 |
|
bmeurer@chromium.org
|
5bf5849f9f
|
Use IfBuilder instead of handcrafted basic blocks in GenerateSetValueOf().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/130563009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 09:59:16 +00:00 |
|
bmeurer@chromium.org
|
d6458eb9a5
|
Add dependency operand to HLoadNamedField.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/148523011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 09:48:35 +00:00 |
|
bmeurer@chromium.org
|
c12593cf2b
|
Kill obsolete HLoadExternalArrayPointer instruction.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/141583011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 07:27:35 +00:00 |
|
bmeurer@chromium.org
|
1e7bbbc921
|
Both HGlobalObject and HGlobalReceiver can be replaced with HLoadNamedField.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/148453009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-29 07:26:52 +00:00 |
|
ishell@chromium.org
|
9070615980
|
Fix for potential issue related to replacing CheckMaps with values.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/134733007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-28 17:49:13 +00:00 |
|
ishell@chromium.org
|
d330d4801d
|
Load elimination fix with a test case.
R=titzer@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/143413019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-28 16:45:04 +00:00 |
|
hpayer@chromium.org
|
9e462504fb
|
Turn off global pretenuring when allocation site pretenuring is in use.
BUG=
R=mstarzinger@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/133803002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-28 09:47:03 +00:00 |
|
bmeurer@chromium.org
|
f9575fb82a
|
Remove obsolete instruction HOuterContext.
HOuterContext can be expressed in terms of HLoadNamedField.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/131513015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-28 09:42:24 +00:00 |
|