Mesa (main): intel/eu: Clarify spec citations for XeHP region restrictions

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Jul 28 22:07:37 UTC 2022


Module: Mesa
Branch: main
Commit: 986b49a56d4c7cf2857f3fda903f1a048602d6e6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=986b49a56d4c7cf2857f3fda903f1a048602d6e6

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Tue Jul 19 01:59:15 2022 -0700

intel/eu: Clarify spec citations for XeHP region restrictions

When this rule started causing issues, I looked it up in the
documentation, and found the rule for 64-bit destinations and
integer DWord multiplication, but there was no mention of floating
point destinations, as the text in brackets suggested.  The actual
restriction text had been updated, so this led to some confusion
where I thought the conditions had been changed in newer docs.

However, what's actually going on is that there are two separate
conditions, each listed in separate rows of the table.  One lists
64-bit destinations or integer DWord multiplication, and the other
mentions floating-point destinations.  In both cases, the actual
restrictions are identical, so we handle them together in the code.

Try to update the comment to avoid future confusion.

Reviewed-by: Francisco Jerez <currojerez at riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17624>

---

 src/intel/compiler/brw_eu_validate.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/intel/compiler/brw_eu_validate.c b/src/intel/compiler/brw_eu_validate.c
index 9abfb5c651d..05e3add22c9 100644
--- a/src/intel/compiler/brw_eu_validate.c
+++ b/src/intel/compiler/brw_eu_validate.c
@@ -1973,12 +1973,17 @@ special_requirements_for_handling_double_precision_data_types(
       }
 
       /* From the hardware spec section "Register Region Restrictions":
+       *
+       * There are two rules:
+       *
+       * "In case of all floating point data types used in destination:" and
        *
        * "In case where source or destination datatype is 64b or operation is
-       *  integer DWord multiply [or in case where a floating point data type
-       *  is used as destination]:
+       *  integer DWord multiply:"
+       *
+       * both of which list the same restrictions:
        *
-       *   1. Register Regioning patterns where register data bit location
+       *  "1. Register Regioning patterns where register data bit location
        *      of the LSB of the channels are changed between source and
        *      destination are not supported on Src0 and Src1 except for
        *      broadcast of a scalar.



More information about the mesa-commit mailing list