i965: Structure code so unsupported inst will not generate more errors.
authorMatt Turner <mattst88@gmail.com>
Tue, 8 Nov 2016 23:42:01 +0000 (15:42 -0800)
committerMatt Turner <mattst88@gmail.com>
Fri, 20 Jan 2017 19:40:52 +0000 (11:40 -0800)
We want to rely on brw_opcode_desc() always returning non-NULL in other
validation functions. Other validation functions will be in the else
case of the block added in this patch.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_eu_validate.c

index 322538637ca71dee710adfa250264faec5aa7de2..d3c15da8c555462aa535c83f75aebee0b1bb3506 100644 (file)
@@ -46,6 +46,7 @@ cat(struct string *dest, const struct string src)
 
 #define error(str) "\tERROR: " str "\n"
 
+#define ERROR(msg) ERROR_IF(true, msg)
 #define ERROR_IF(cond, msg)          \
    do {                              \
       if (cond) {                    \
@@ -168,8 +169,10 @@ brw_validate_instructions(const struct brw_codegen *p, int start_offset,
          break;
       }
 
-      ERROR_IF(is_unsupported_inst(devinfo, inst),
-               "Instruction not supported on this Gen");
+      if (is_unsupported_inst(devinfo, inst)) {
+         ERROR("Instruction not supported on this Gen");
+      } else {
+      }
 
       if (brw_inst_opcode(devinfo, inst) == BRW_OPCODE_SEND) {
          ERROR_IF(brw_inst_src0_address_mode(devinfo, inst) !=