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

Author: Francisco Jerez <curroje...@riseup.net>
Date:   Tue Jan 10 21:10:24 2023 -0800

intel/eu/gfx12.5+: Don't fail validation with ARF register restriction error 
for indirect addressing.

The "file" field doesn't exist for indirect operands, so it contains
garbage.

Reviewed-by: Caio Oliveira <caio.olive...@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26994>

---

 src/intel/compiler/brw_eu_validate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/intel/compiler/brw_eu_validate.c 
b/src/intel/compiler/brw_eu_validate.c
index ac2d4d10ba0..37b9ae11151 100644
--- a/src/intel/compiler/brw_eu_validate.c
+++ b/src/intel/compiler/brw_eu_validate.c
@@ -1977,7 +1977,7 @@ 
special_requirements_for_handling_double_precision_data_types(
                   "source and destination are not supported except for "
                   "broadcast of a scalar.");
 
-         ERROR_IF((file == BRW_ARCHITECTURE_REGISTER_FILE &&
+         ERROR_IF((address_mode == BRW_ADDRESS_DIRECT && file == 
BRW_ARCHITECTURE_REGISTER_FILE &&
                    reg != BRW_ARF_NULL && !(reg >= BRW_ARF_ACCUMULATOR && reg 
< BRW_ARF_FLAG)) ||
                   (dst_file == BRW_ARCHITECTURE_REGISTER_FILE &&
                    dst_reg != BRW_ARF_NULL && dst_reg != BRW_ARF_ACCUMULATOR),

Reply via email to