anv: add no reloc flags on empty and simple bo paths.
[mesa.git] / src / intel / compiler / brw_reg_type.h
index 3bc9a36e7bf32c229cfe6499075b711a722f2992..a17c93ee90ed1eb6d41274c4001b3c6834201c70 100644 (file)
@@ -45,6 +45,7 @@ struct gen_device_info;
  */
 enum PACKED brw_reg_type {
    /** Floating-point types: @{ */
+   BRW_REGISTER_TYPE_NF,
    BRW_REGISTER_TYPE_DF,
    BRW_REGISTER_TYPE_F,
    BRW_REGISTER_TYPE_HF,
@@ -71,6 +72,7 @@ static inline bool
 brw_reg_type_is_floating_point(enum brw_reg_type type)
 {
    switch (type) {
+   case BRW_REGISTER_TYPE_NF:
    case BRW_REGISTER_TYPE_DF:
    case BRW_REGISTER_TYPE_F:
    case BRW_REGISTER_TYPE_HF:
@@ -80,6 +82,27 @@ brw_reg_type_is_floating_point(enum brw_reg_type type)
    }
 }
 
+static inline bool
+brw_reg_type_is_integer(enum brw_reg_type type)
+{
+   switch (type) {
+   case BRW_REGISTER_TYPE_Q:
+   case BRW_REGISTER_TYPE_UQ:
+   case BRW_REGISTER_TYPE_D:
+   case BRW_REGISTER_TYPE_UD:
+   case BRW_REGISTER_TYPE_W:
+   case BRW_REGISTER_TYPE_UW:
+   case BRW_REGISTER_TYPE_B:
+   case BRW_REGISTER_TYPE_UB:
+      return true;
+   default:
+      return false;
+   }
+}
+
+#define INVALID_REG_TYPE    ((enum brw_reg_type)-1)
+#define INVALID_HW_REG_TYPE ((unsigned)-1)
+
 unsigned
 brw_reg_type_to_hw_type(const struct gen_device_info *devinfo,
                         enum brw_reg_file file, enum brw_reg_type type);