Index: test/cctest/types-fuzz.h |
diff --git a/test/cctest/types-fuzz.h b/test/cctest/types-fuzz.h |
index 425011d4aec94a81cc6d4684de6baeb365c70ca4..1d69c2d75d11e1a5b38f85f085f0149fa7ba1048 100644 |
--- a/test/cctest/types-fuzz.h |
+++ b/test/cctest/types-fuzz.h |
@@ -45,6 +45,12 @@ class Types { |
PROPER_BITSET_TYPE_LIST(DECLARE_TYPE) |
#undef DECLARE_TYPE |
+#define DECLARE_TYPE(name, value) \ |
+ Mask##name##ForTesting = Type::Mask##name##ForTesting(region); \ |
+ types.push_back(Mask##name##ForTesting); |
+ MASK_BITSET_TYPE_LIST(DECLARE_TYPE) |
+#undef DECLARE_TYPE |
+ |
SignedSmall = Type::SignedSmall(region); |
UnsignedSmall = Type::UnsignedSmall(region); |
@@ -132,6 +138,10 @@ class Types { |
#define DECLARE_TYPE(name, value) TypeHandle name; |
PROPER_BITSET_TYPE_LIST(DECLARE_TYPE) |
#undef DECLARE_TYPE |
+ |
+#define DECLARE_TYPE(name, value) TypeHandle Mask##name##ForTesting; |
+ MASK_BITSET_TYPE_LIST(DECLARE_TYPE) |
+#undef DECLARE_TYPE |
TypeHandle SignedSmall; |
TypeHandle UnsignedSmall; |
@@ -212,10 +222,19 @@ class Types { |
TypeHandle Union(TypeHandle t1, TypeHandle t2) { |
return Type::Union(t1, t2, region_); |
} |
+ |
TypeHandle Intersect(TypeHandle t1, TypeHandle t2) { |
return Type::Intersect(t1, t2, region_); |
} |
+ TypeHandle ProjectRepresentation(TypeHandle t) { |
rossberg
2015/02/11 12:34:11
The Type class should probably just have two metho
Jarin
2015/02/11 16:10:49
Done.
|
+ return Intersect(t, MaskRepresentationForTesting); |
+ } |
+ |
+ TypeHandle ProjectSemantic(TypeHandle t) { |
+ return Intersect(t, MaskSemanticForTesting); |
+ } |
+ |
template<class Type2, class TypeHandle2> |
TypeHandle Convert(TypeHandle2 t) { |
return Type::template Convert<Type2>(t, region_); |