Mesa (master): intel/fs: End computer shader with message gateway on XeHP.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 16 08:39:03 UTC 2021


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

Author: Jordan Justen <jordan.l.justen at intel.com>
Date:   Mon Jan  6 02:16:57 2020 -0800

intel/fs: End computer shader with message gateway on XeHP.

Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
Reviewed-by: Francisco Jerez <currojerez at riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10000>

---

 src/intel/compiler/brw_fs_generator.cpp | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/intel/compiler/brw_fs_generator.cpp b/src/intel/compiler/brw_fs_generator.cpp
index 447f17bcf91..ed7eeea5d69 100644
--- a/src/intel/compiler/brw_fs_generator.cpp
+++ b/src/intel/compiler/brw_fs_generator.cpp
@@ -889,9 +889,14 @@ fs_generator::generate_cs_terminate(fs_inst *inst, struct brw_reg payload)
    if (devinfo->ver < 12)
       brw_set_src1(p, insn, brw_imm_ud(0u));
 
-   /* Terminate a compute shader by sending a message to the thread spawner.
+   /* For XeHP and newer send a message to the message gateway to terminate a
+    * compute shader. For older devices, a message is sent to the thread
+    * spawner.
     */
-   brw_inst_set_sfid(devinfo, insn, BRW_SFID_THREAD_SPAWNER);
+   if (devinfo->verx10 >= 125)
+      brw_inst_set_sfid(devinfo, insn, BRW_SFID_MESSAGE_GATEWAY);
+   else
+      brw_inst_set_sfid(devinfo, insn, BRW_SFID_THREAD_SPAWNER);
    brw_inst_set_mlen(devinfo, insn, 1);
    brw_inst_set_rlen(devinfo, insn, 0);
    brw_inst_set_eot(devinfo, insn, inst->eot);



More information about the mesa-commit mailing list