mesa/src/intel
Ian Romanick 25de9dcd76 brw/algebraic: Fix MUL constant folding
Some callers of brw_constant_fold_instruction depend on the result being
a MOV of immediate when progress is made. Previously `MUL dst:D src0:D
1:D` would be converted to `MOV dst:D src0:D`. There was also no
handling for `MUL dst:D imm0:D imm1:D`.

This could cause problems if one of the immedate values was -1. The
existing code would convert this to a `MOV dst:D imm0:D` and set the
negate flag on src0. That is not correct.

v2: Fix the is_negative_one case handling of the non-negative-one
source. Add a comment explaining the assertion. Both suggested by Caio.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Fixes: 2cc1575a31 ("brw/algebraic: Refactor constant folding out of brw_fs_opt_algebraic")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32436>
2024-12-13 01:24:26 +00:00
..
blorp blorp: use 2D dimension for 1D tiled images 2024-12-12 17:10:45 +00:00
ci brw/build: Use SIMD8 temporaries in emit_uniformize 2024-12-05 00:15:27 +00:00
common intel/common: Enable mi_builder test for PTL 2024-11-20 01:47:04 +00:00
compiler brw/algebraic: Fix MUL constant folding 2024-12-13 01:24:26 +00:00
decoder intel/decoder: fix COMPUTE_WALKER handling 2024-12-12 07:35:18 +00:00
dev intel/dev: update mesa_defs.json from internal database 2024-12-11 17:32:52 +00:00
ds anv: add BVH building tracking through u_trace 2024-12-09 14:45:00 +00:00
executor intel/executor: Enable PTL 2024-11-22 10:26:12 -08:00
genxml anv: implement Wa_16011107343/22018402687 for generated draws 2024-11-12 22:48:39 +00:00
isl intel/isl: Fix DecompressInL3 assignment on gfx12.5 2024-12-03 22:54:34 +00:00
nullhw-layer build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
perf anv: Protect memcpy/memset/qsort calls against NULL arguments 2024-11-14 01:05:01 +00:00
shaders anv: implement Wa_16011107343/22018402687 for generated draws 2024-11-12 22:48:39 +00:00
tools intel/hang_replay: remove EXEC_OBJECT_WRITE 2024-10-04 21:37:41 +00:00
vulkan anv: document UBO descriptor range alignments 2024-12-12 07:35:18 +00:00
vulkan_hasvk vulkan: rename depth bias graphics states 2024-12-06 13:48:26 -05:00
meson.build intel: Add executor tool 2024-08-14 03:03:46 +00:00