summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/i965/brw_eu_validate.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_eu_validate.c b/src/mesa/drivers/dri/i965/brw_eu_validate.c
index 8c2eb99f8e5..9648f0d0732 100644
--- a/src/mesa/drivers/dri/i965/brw_eu_validate.c
+++ b/src/mesa/drivers/dri/i965/brw_eu_validate.c
@@ -96,7 +96,14 @@ num_sources_from_inst(const struct gen_device_info *devinfo,
} else if (devinfo->gen < 6 &&
brw_inst_opcode(devinfo, inst) == BRW_OPCODE_SEND) {
if (brw_inst_sfid(devinfo, inst) == BRW_SFID_MATH) {
- math_function = brw_inst_math_msg_function(devinfo, inst);
+ /* src1 must be a descriptor (including the information to determine
+ * that the SEND is doing an extended math operation), but src0 can
+ * actually be null since it serves as the source of the implicit GRF
+ * to MRF move.
+ *
+ * If we stop using that functionality, we'll have to revisit this.
+ */
+ return 2;
} else {
/* Send instructions are allowed to have null sources since they use
* the base_mrf field to specify which message register source.