intel/fs: make sure shuffle is lowered to supported types
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Thu, 20 May 2021 20:30:19 +0000 (23:30 +0300)
committerMarge Bot <eric+marge@anholt.net>
Sat, 22 May 2021 21:55:33 +0000 (21:55 +0000)
commit474eaa25ad209f3d8c5e2dbcab32b20f2a9b5006
tree3da7e3ba93523a527cac7c631b2315fa84ddc5e2
parent8ab36670e96ae4cfadccff13eea7263baf298c85
intel/fs: make sure shuffle is lowered to supported types

On XeHP there are restrictions on types of source and destinations
with float types. As shuffle is implemented using MOV we need to make
sure we lower it to supported types.

This fixes tests like :

    dEQP-VK.subgroups.arithmetic.framebuffer.subgroupexclusivemax_vec4_vertex
    dEQP-VK.subgroups.arithmetic.framebuffer.subgroupexclusivemul_f16vec3_vertex

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Suggested-by: Francisco Jerez <currojerez@riseup.net>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10902>
src/intel/compiler/brw_fs_lower_regioning.cpp