glsl: Add type queries for fp16+float and fp16+float+double
authorKristian H. Kristensen <hoegsberg@google.com>
Wed, 4 Mar 2020 21:57:33 +0000 (13:57 -0800)
committerMarge Bot <eric+marge@anholt.net>
Mon, 9 Mar 2020 16:31:08 +0000 (16:31 +0000)
Following the is_integer_32_64() convention, add is_float_16_32() and
float_16_32_64() for these commonly tested combinations.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3929>

src/compiler/glsl_types.h

index 9b64427df67faf523aac22d26857cd090aadc537..f709bdd702e2c977d7b04bc96771d155e040a8f1 100644 (file)
@@ -761,6 +761,22 @@ public:
       return base_type == GLSL_TYPE_FLOAT;
    }
 
+   /**
+    * Query whether or not a type is a half-float or float type
+    */
+   bool is_float_16_32() const
+   {
+      return base_type == GLSL_TYPE_FLOAT16 || is_float();
+   }
+
+   /**
+    * Query whether or not a type is a half-float, float or double
+    */
+   bool is_float_16_32_64() const
+   {
+      return base_type == GLSL_TYPE_FLOAT16 || is_float() || is_double();
+   }
+
    /**
     * Query whether or not a type is a double type
     */