glsl: Split out part of variable_index_to_cond_assign_visitor::needs_lowering

Other code will soon need to know if an array needs lowering based
exclusively on the storage mode.

Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Ian Romanick 2011-07-18 10:07:24 -07:00
parent 8d5f3cef79
commit d2296e784a
1 changed files with 10 additions and 5 deletions

View File

@ -239,12 +239,8 @@ public:
bool lower_temps;
bool lower_uniforms;
bool needs_lowering(ir_dereference_array *deref) const
bool storage_type_needs_lowering(ir_dereference_array *deref) const
{
if (deref == NULL || deref->array_index->as_constant()
|| !is_array_or_matrix(deref->array))
return false;
if (deref->array->ir_type == ir_type_constant)
return this->lower_temps;
@ -268,6 +264,15 @@ public:
return false;
}
bool needs_lowering(ir_dereference_array *deref) const
{
if (deref == NULL || deref->array_index->as_constant()
|| !is_array_or_matrix(deref->array))
return false;
return this->storage_type_needs_lowering(deref);
}
ir_variable *convert_dereference_array(ir_dereference_array *orig_deref,
ir_assignment* orig_assign)
{