Index: src/IceTypes.def |
diff --git a/src/IceTypes.def b/src/IceTypes.def |
index 6e1935b3d4f516613c3ff5713875d64bdeeabe0c..26e92166c3e85133af07130b416da6c6d7601e0e 100644 |
--- a/src/IceTypes.def |
+++ b/src/IceTypes.def |
@@ -40,23 +40,25 @@ |
// I - Is integer value (scalar or vector). |
// F - Is floating point value (scalar or vector). |
// IA - Is integer arithmetic type |
+// CR - Result type of compare instruction for argument type |
+// (IceType_void if disallowed) |
#define ICETYPE_PROPS_TABLE \ |
- /* Enum Value V I F IA */ \ |
- X(IceType_void, 0, 0, 0, 0) \ |
- X(IceType_i1, 0, 1, 0, 0) \ |
- X(IceType_i8, 0, 1, 0, 1) \ |
- X(IceType_i16, 0, 1, 0, 1) \ |
- X(IceType_i32, 0, 1, 0, 1) \ |
- X(IceType_i64, 0, 1, 0, 1) \ |
- X(IceType_f32, 0, 0, 1, 0) \ |
- X(IceType_f64, 0, 0, 1, 0) \ |
- X(IceType_v4i1, 1, 1, 0, 0) \ |
- X(IceType_v8i1, 1, 1, 0, 0) \ |
- X(IceType_v16i1, 1, 1, 0, 0) \ |
- X(IceType_v16i8, 1, 1, 0, 1) \ |
- X(IceType_v8i16, 1, 1, 0, 1) \ |
- X(IceType_v4i32, 1, 1, 0, 1) \ |
- X(IceType_v4f32, 1, 0, 1, 0) \ |
-//#define X(tag, IsVec, IsInt, IsFloat, IsIntArith) |
+ /* Enum Value V I F IA CR */ \ |
+ X(IceType_void, 0, 0, 0, 0, IceType_void) \ |
+ X(IceType_i1, 0, 1, 0, 0, IceType_i1) \ |
+ X(IceType_i8, 0, 1, 0, 1, IceType_i1) \ |
+ X(IceType_i16, 0, 1, 0, 1, IceType_i1) \ |
+ X(IceType_i32, 0, 1, 0, 1, IceType_i1) \ |
+ X(IceType_i64, 0, 1, 0, 1, IceType_i1) \ |
+ X(IceType_f32, 0, 0, 1, 0, IceType_i1) \ |
+ X(IceType_f64, 0, 0, 1, 0, IceType_i1) \ |
+ X(IceType_v4i1, 1, 1, 0, 0, IceType_v4i1) \ |
+ X(IceType_v8i1, 1, 1, 0, 0, IceType_v8i1) \ |
+ X(IceType_v16i1, 1, 1, 0, 0, IceType_v16i1) \ |
+ X(IceType_v16i8, 1, 1, 0, 1, IceType_v16i1) \ |
+ X(IceType_v8i16, 1, 1, 0, 1, IceType_v8i1) \ |
+ X(IceType_v4i32, 1, 1, 0, 1, IceType_v4i1) \ |
+ X(IceType_v4f32, 1, 0, 1, 0, IceType_v4i1) \ |
+//#define X(tag, IsVec, IsInt, IsFloat, IsIntArith, CompareResult) |
#endif // SUBZERO_SRC_ICETYPES_DEF |