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 <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2635>
This commit is contained in:
Matt Turner 2020-01-06 13:17:49 -08:00 committed by Marge Bot
parent ab7c25b9aa
commit 0b70d46f7a
3 changed files with 8 additions and 5 deletions

View file

@ -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;

View file

@ -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;
}
/**

View file

@ -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);