mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 08:58:02 +02:00
glsl: use ir_rvalue instead of ir_dereference in auxiliary functions
In a later commit we will need to handle ir_swizzle nodes too, which are not an ir_dereference. That can happen, for example, when we pass a component of an integer vector as argument to any of the SSBO atomic functions. Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
parent
ea0a1f5beb
commit
da659087b9
1 changed files with 4 additions and 4 deletions
|
|
@ -57,7 +57,7 @@ using namespace ir_builder;
|
|||
* thing referenced is row-major.
|
||||
*/
|
||||
static bool
|
||||
is_dereferenced_thing_row_major(const ir_dereference *deref)
|
||||
is_dereferenced_thing_row_major(const ir_rvalue *deref)
|
||||
{
|
||||
bool matrix = false;
|
||||
const ir_rvalue *ir = deref;
|
||||
|
|
@ -143,7 +143,7 @@ public:
|
|||
ir_visitor_status visit_enter(ir_assignment *ir);
|
||||
|
||||
void setup_for_load_or_store(ir_variable *var,
|
||||
ir_dereference *deref,
|
||||
ir_rvalue *deref,
|
||||
ir_rvalue **offset,
|
||||
unsigned *const_offset,
|
||||
bool *row_major,
|
||||
|
|
@ -196,7 +196,7 @@ public:
|
|||
* \c UniformBlocks array.
|
||||
*/
|
||||
static const char *
|
||||
interface_field_name(void *mem_ctx, char *base_name, ir_dereference *d,
|
||||
interface_field_name(void *mem_ctx, char *base_name, ir_rvalue *d,
|
||||
ir_rvalue **nonconst_block_index)
|
||||
{
|
||||
ir_rvalue *previous_index = NULL;
|
||||
|
|
@ -255,7 +255,7 @@ interface_field_name(void *mem_ctx, char *base_name, ir_dereference *d,
|
|||
|
||||
void
|
||||
lower_ubo_reference_visitor::setup_for_load_or_store(ir_variable *var,
|
||||
ir_dereference *deref,
|
||||
ir_rvalue *deref,
|
||||
ir_rvalue **offset,
|
||||
unsigned *const_offset,
|
||||
bool *row_major,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue