diff options
author | Matt Turner <[email protected]> | 2020-01-06 13:17:49 -0800 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-22 00:19:20 +0000 |
commit | 0b70d46f7a614888e999bfda443636c9bc1d8d97 (patch) | |
tree | 15b035b648a095eae9631fea108f6a8285477b38 | |
parent | ab7c25b9aa241b2754a48fc04fd4752a511b7a2c (diff) |
intel/compiler: Add a INVALID_{,HW_}REG_TYPE macros
Since the enum brw_reg_type is packed, comparisons with -1 don't work
directly, necessitating the cast. Add a macro to avoid this confusion.
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2635>
-rw-r--r-- | src/intel/compiler/brw_eu_compact.c | 4 | ||||
-rw-r--r-- | src/intel/compiler/brw_reg_type.c | 6 | ||||
-rw-r--r-- | src/intel/compiler/brw_reg_type.h | 3 |
3 files changed, 8 insertions, 5 deletions
diff --git a/src/intel/compiler/brw_eu_compact.c b/src/intel/compiler/brw_eu_compact.c index 4d2e617b3ed..7c42aeec3dd 100644 --- a/src/intel/compiler/brw_eu_compact.c +++ b/src/intel/compiler/brw_eu_compact.c @@ -1512,10 +1512,10 @@ has_immediate(const struct gen_device_info *devinfo, const brw_inst *inst, { if (brw_inst_src0_reg_file(devinfo, inst) == BRW_IMMEDIATE_VALUE) { *type = brw_inst_src0_type(devinfo, inst); - return *type != (enum brw_reg_type)-1; + return *type != INVALID_REG_TYPE; } else if (brw_inst_src1_reg_file(devinfo, inst) == BRW_IMMEDIATE_VALUE) { *type = brw_inst_src1_type(devinfo, inst); - return *type != (enum brw_reg_type)-1; + return *type != INVALID_REG_TYPE; } return false; diff --git a/src/intel/compiler/brw_reg_type.c b/src/intel/compiler/brw_reg_type.c index e3fff5d2d1a..f4d435b647e 100644 --- a/src/intel/compiler/brw_reg_type.c +++ b/src/intel/compiler/brw_reg_type.c @@ -289,7 +289,7 @@ brw_hw_type_to_reg_type(const struct gen_device_info *devinfo, } } } - return (enum brw_reg_type)-1; + return INVALID_REG_TYPE; } /** @@ -339,7 +339,7 @@ brw_a16_hw_3src_type_to_reg_type(const struct gen_device_info *devinfo, return i; } } - return (enum brw_reg_type)-1; + return INVALID_REG_TYPE; } /** @@ -359,7 +359,7 @@ brw_a1_hw_3src_type_to_reg_type(const struct gen_device_info *devinfo, return i; } } - return (enum brw_reg_type)-1; + return INVALID_REG_TYPE; } /** diff --git a/src/intel/compiler/brw_reg_type.h b/src/intel/compiler/brw_reg_type.h index 086770d2e03..a17c93ee90e 100644 --- a/src/intel/compiler/brw_reg_type.h +++ b/src/intel/compiler/brw_reg_type.h @@ -100,6 +100,9 @@ brw_reg_type_is_integer(enum brw_reg_type type) } } +#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); |