spirv: Let vtn_ssa_value hold references to variables
authorCaio Oliveira <caio.oliveira@intel.com>
Sat, 23 Sep 2023 08:19:26 +0000 (01:19 -0700)
committerMarge Bot <emma+marge@anholt.net>
Thu, 28 Sep 2023 07:35:02 +0000 (07:35 +0000)
commitb17a2c35bce4c84bf137deaecb0884b13d1d2943
treeb791d60e9f392fd1d0d5e5a14b6cfb753158562c
parent3d7e5ec758b5de13fa46c4d75b5119896df3ae76
spirv: Let vtn_ssa_value hold references to variables

In certain cases, we have complex opaque objects that are loaded
into (SPIR-V) SSA values.  To represent these, we now can store a
reference to a variable in vtn_ssa_value.

Also implements a few operations we know will have to be supported,
like Select and Copy.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23825>
src/compiler/spirv/spirv_to_nir.c
src/compiler/spirv/vtn_private.h
src/compiler/spirv/vtn_variables.c