Mesa (master): i965: Claim that SEND/math has two sources.

Matt Turner mattst88 at kemper.freedesktop.org
Fri Jan 20 20:10:58 UTC 2017


Module: Mesa
Branch: master
Commit: fce0612fc2c91cc48f9897a6ac66634aa19ec0f4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fce0612fc2c91cc48f9897a6ac66634aa19ec0f4

Author: Matt Turner <mattst88 at gmail.com>
Date:   Sun Nov  6 21:50:14 2016 -0800

i965: Claim that SEND/math has two sources.

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 -> MRF move.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_eu_validate.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_eu_validate.c b/src/mesa/drivers/dri/i965/brw_eu_validate.c
index 8c2eb99..9648f0d 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.




More information about the mesa-commit mailing list