mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-29 03:40:10 +01:00
In some cases we will change the type of the destination register of an instruction. This is the type we should use to verify that we're allow to do the replacement. Otherwise we can hit restrictions on CHV and upcoming Xe-Hp for instance where the copy propagation transforms this : send(16) (mlen: 2) vgrf10:UD, 0u, 0u, vgrf35:D, null:UD mov(16) vgrf11:UW, vgrf10<2>:UW mov(16) vgrf12:UW, vgrf10+0.2<2>:UW mov(16) vgrf15:HF, |vgrf11|:HF mov(16) vgrf16:HF, |vgrf12|:HF mov(8) vgrf41<2>:UW, vgrf15+0.0:UW group0 mov(8) vgrf42<2>:UW, vgrf15+0.16:UW group8 mov(8) vgrf45<2>:UW, vgrf16+0.0:UW group0 mov(8) vgrf46<2>:UW, vgrf16+0.16:UW group8 into this : send(16) (mlen: 2) vgrf10:UD, 0u, 0u, vgrf35:D, null:UD mov(8) vgrf41<2>:HF, |vgrf10+0.0|<2>:HF group0 mov(8) vgrf42<2>:HF, |vgrf10+1.0|<2>:HF group8 mov(8) vgrf45<2>:HF, |vgrf10+0.2|<2>:HF group0 mov(8) vgrf46<2>:HF, |vgrf10+1.2|<2>:HF group8 Because of the floating point use, stride and offets should be the same. v2: Fix final destination type selection (Curro) v3: constify (Curro) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Francisco Jerez <currojerez@riseup.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9832> |
||
|---|---|---|
| .. | ||
| blorp | ||
| common | ||
| compiler | ||
| dev | ||
| genxml | ||
| isl | ||
| nullhw-layer | ||
| perf | ||
| tools | ||
| vulkan | ||
| Android.blorp.mk | ||
| Android.common.mk | ||
| Android.compiler.mk | ||
| Android.dev.mk | ||
| Android.genxml.mk | ||
| Android.isl.mk | ||
| Android.mk | ||
| Android.perf.mk | ||
| Android.vulkan.mk | ||
| Makefile.perf.am | ||
| Makefile.sources | ||
| meson.build | ||