bmeurer@chromium.org
|
0d1c01cb92
|
Properly pass dim to recursive calls in TypePrint().
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/224723007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20502 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-04 09:00:30 +00:00 |
|
bmeurer@chromium.org
|
0968128371
|
TypePrint() does not depend on Object::Print().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/225353004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-04 07:21:59 +00:00 |
|
bmeurer@chromium.org
|
e054f08006
|
Add unhandlified versions of Of() and NowOf().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/221813002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-02 07:01:43 +00:00 |
|
rossberg@chromium.org
|
5d5adbc452
|
Provide Type::Contains methods.
Also, rename all *Currently methods to Now*.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/219523003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-01 13:11:12 +00:00 |
|
yangguo@chromium.org
|
10abff3498
|
Remove internalized cons string types.
Currently, internalizing a cons string could result in either an
in-place converted internalized cons string or a newly created
internalized sequential string, depending on allocation success.
The former could end up being embedded into an IC, which is not
supported.
R=mstarzinger@chromium.org
BUG=357103
LOG=N
Review URL: https://codereview.chromium.org/218993011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-01 11:30:31 +00:00 |
|
bmeurer@chromium.org
|
7c38cdb2bc
|
Make it possible to use HeapType inside objects-inl.h.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/220193007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-04-01 11:07:09 +00:00 |
|
rossberg@chromium.org
|
282a7ca14e
|
Fix Type::Intersect to skip uninhabited bitsets
R=verwaest@chromium.org, bmeurer@chromium.org
BUG=chromium:357330
LOG=Y
Review URL: https://codereview.chromium.org/219333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-03-31 15:53:21 +00:00 |
|
rossberg@chromium.org
|
9b28aed3f6
|
Introduce representation types
Also:
- improve type pretty-printing,
- update doc comments,
- some renamings for consistency.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/176843006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-03-18 11:50:18 +00:00 |
|
rossberg@chromium.org
|
9abfab09fa
|
Types: cache lub bitset to avoid heap access
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/186743002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-03-11 10:28:38 +00:00 |
|
verwaest@chromium.org
|
8a3d715250
|
Revert "Use Representation::Integer32() for smi types on 32-bit-tagged systems."
Due to performance regression.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/189843006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-03-07 09:29:07 +00:00 |
|
verwaest@chromium.org
|
7bf33c53eb
|
Use Representation::Integer32() for smi types on 32-bit-tagged systems.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/187353005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-03-06 09:49:10 +00:00 |
|
bmeurer@chromium.org
|
3841070294
|
Handle the uninitialized oddball in Type::LubBitset().
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/166203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19378 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-02-14 12:34:28 +00:00 |
|
rossberg@chromium.org
|
2311b678ae
|
Type representation converter
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/145083007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-24 11:47:47 +00:00 |
|
rossberg@chromium.org
|
0d906a8bdb
|
Zonify types in compiler frontend
Clean up some zone/isolate handling in AST and its visitors on the way.
(Based on https://codereview.chromium.org/103743004/)
R=jkummerow@chromium.org, titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/102563004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18719 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-21 16:22:52 +00:00 |
|
rossberg@chromium.org
|
928d71f83b
|
Retry landing "Implement zone-allocated types"
Works around apparent scoping bug in VS, the only change to before being a method rename in the test suite:
--- a/test/cctest/test-types.cc
+++ b/test/cctest/test-types.cc
@@ -153,7 +153,7 @@ struct ZoneRep {
return reinterpret_cast<ZoneList<ZoneType*>*>(AsTagged(t));
}
- static Zone* Region(Zone* zone, Isolate* isolate) { return zone; }
+ static Zone* ToRegion(Zone* zone, Isolate* isolate) { return zone; }
};
@@ -168,7 +168,7 @@ struct HeapRep {
static Object* AsConstant(Handle<Type> t) { return Box::cast(*t)->value(); }
static FixedArray* AsUnion(Handle<Type> t) { return FixedArray::cast(*t); }
- static Isolate* Region(Zone* zone, Isolate* isolate) { return isolate; }
+ static Isolate* ToRegion(Zone* zone, Isolate* isolate) { return isolate; }
};
@@ -183,7 +183,7 @@ struct Tests : Rep {
isolate(CcTest::i_isolate()),
scope(isolate),
zone(isolate),
- T(Rep::Region(&zone, isolate), isolate) {
+ T(Rep::ToRegion(&zone, isolate), isolate) {
}
static void CheckEqual(TypeHandle type1, TypeHandle type2) {
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/143693003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18711 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-21 14:14:12 +00:00 |
|
rossberg@chromium.org
|
99359d389c
|
Revert "Implement zone-allocated types"
This reverts commit 4308974b16d1ee67d9f64d797c5ea64ffaab51df.
TBR=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/133353005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-10 15:33:37 +00:00 |
|
rossberg@chromium.org
|
d849dfa5d4
|
Implement zone-allocated types
More template magic FTW.
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/103743004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18543 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-10 14:43:48 +00:00 |
|
rossberg@chromium.org
|
cb28b7f837
|
Retry "Templatise type representation" after making clang happy
The only thing different now is line types.h:208/236, which had a static_cast<Type*> before.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/133683002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-10 12:19:01 +00:00 |
|
machenbach@chromium.org
|
8ffcd2a281
|
[Sheriff] Revert "Templatise type representation" and "Fix Mac warnings".
This reverts commit r18521 and r18522 for breaking mac and win builders.
BUG=
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/132493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18524 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-09 19:52:15 +00:00 |
|
rossberg@chromium.org
|
1c33a2d840
|
Templatise type representation
This is to support both heap- and zone-allocated types in the future (the latter not yet implemented).
Also, handlify the type API some more.
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/107933005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2014-01-09 17:12:48 +00:00 |
|
rossberg@chromium.org
|
e78783a35c
|
Introduce Type::IsCurrently
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/83003003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-11-22 13:16:40 +00:00 |
|
rossberg@chromium.org
|
6aec0d39ae
|
Minor clean-up of Type::Print
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/75423002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-11-22 12:38:49 +00:00 |
|
rossberg@chromium.org
|
edb648277a
|
Provide Type::Of and Type::CurrentOf operators
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/73193004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-11-15 15:14:09 +00:00 |
|
rossberg@chromium.org
|
814fe1f5cb
|
Reenable 17167: "Ensure lower <= upper bound"
Fixed handlification bug (see 2nd patch).
Will handlify Type::Union and Type::Intersect in separate CL.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/27164003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-10-14 12:14:42 +00:00 |
|
danno@chromium.org
|
f55fc759dc
|
Revert 17167: "Ensure lower <= upper bound"
Due to crashes in nosnap ia32
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/27046002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-10-11 16:41:34 +00:00 |
|
rossberg@chromium.org
|
68cc8da20c
|
Ensure lower <= upper bound
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26959004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-10-11 15:17:58 +00:00 |
|
rossberg@chromium.org
|
792dd705af
|
More precise type lub for numbers
R=jkummerow@chromium.org
BUG=v8:2910
Review URL: https://codereview.chromium.org/25722002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-10-10 12:30:06 +00:00 |
|
verwaest@chromium.org
|
5de783d47e
|
Adding Smi support to Add, Sub, Mul, and Bitwise
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/20070005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-25 11:53:38 +00:00 |
|
verwaest@chromium.org
|
b94d2cd610
|
Add fixed array to Type::LubBitset
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19960002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-22 15:27:38 +00:00 |
|
mstarzinger@chromium.org
|
ce81b0d3a8
|
ES6: Implement WeakSet
WeakSets work similar to ordinary Sets but the value (which must be an
object) is held weakly.
This is available under --harmony-collections
BUG=v8:2785
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/19678023
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-22 08:32:24 +00:00 |
|
olivf@chromium.org
|
01b4c2831e
|
Use static_cast instead of reinterpret_cast
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/18899003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-10 16:00:08 +00:00 |
|
olivf@chromium.org
|
9a61947869
|
Fix missing spaces
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/18991004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-10 12:01:29 +00:00 |
|
olivf@chromium.org
|
c5f20ef8dc
|
Type::GetName(...) for inspecting Types in the debugger
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/18587007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-10 11:20:00 +00:00 |
|
yangguo@chromium.org
|
02674ee414
|
Keep two empty lines between declarations for cpp files
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/18509003
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-05 09:52:11 +00:00 |
|
olivf@chromium.org
|
240c7aced9
|
Convert UnaryOpStub to a HydrogenCodeStub
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/18712002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-05 09:26:22 +00:00 |
|
olivf@chromium.org
|
950a372834
|
Revert "Convert UnaryOpStub to a HydrogenCodeStub"
The problem is the HCallConstantFunction which is not context sensitive, so we leak the builtin. We first need a Hydrogen version of __ IvokeBuiltin.
BUG=
R=danno@chromium.org, machenbach@chromium.org
Review URL: https://codereview.chromium.org/18650003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-03 19:57:25 +00:00 |
|
olivf@chromium.org
|
0d2fed8f26
|
Convert UnaryOpStub to a HydrogenCodeStub
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/17229005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-07-03 14:56:53 +00:00 |
|
danno@chromium.org
|
5b1ccfb952
|
Type handling for special cases and optimization
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/18078002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-27 15:31:49 +00:00 |
|
rossberg@chromium.org
|
e60acec321
|
Introduce Unsigned32 and RegExp types
Also, renamed Integer31 back to Smi, and Integer32 to Signed32.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17589013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15332 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-26 09:51:57 +00:00 |
|
dslomov@chromium.org
|
91eb5f8d25
|
DataView implementation.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/17153011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-21 13:02:38 +00:00 |
|
rossberg@chromium.org
|
0977c60984
|
Use AST's type field and merge types for unary, binary & compare ICs
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17468003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-21 11:10:06 +00:00 |
|
rossberg@chromium.org
|
eb099a1a8c
|
Introduce Type::Intersect function
Also, fix bugs in Type::Union and Type::Maybe.
(This subsumes the in-flight fix for Union in https://codereview.chromium.org/16925008/, including test cases).
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17335003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-20 09:10:10 +00:00 |
|
rossberg@chromium.org
|
94f651bc1b
|
Migrate Compare ICs to new type rep
(Does not yet use common AST expression type field.)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16361015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-12 17:20:37 +00:00 |
|
rossberg@chromium.org
|
372457a793
|
Allow smis for singleton types
To that end, introduce a generic Box struct.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16562003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-06 15:40:28 +00:00 |
|
rossberg@chromium.org
|
9e8279e952
|
New unified type representation
Not used yet, only unit tests.
R=jkummerow@chromium.org, svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16154027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
|
2013-06-05 15:43:53 +00:00 |
|