[Mesa-dev] [PATCH 1/3] glsl: Make is_lvalue() and variable_referenced() const.
Kenneth Graunke
kenneth at whitecape.org
Fri Aug 5 13:19:26 PDT 2011
On 08/04/2011 06:55 PM, Chad Versace wrote:
> On 08/02/2011 05:38 PM, Paul Berry wrote:
>> These functions don't modify the target instruction, so it makes sense
>> to make them const. This allows these functions to be called from ir
>> validation code (which uses const to ensure that it doesn't
>> accidentally modify the IR being validated).
>> ---
>> src/glsl/ir.cpp | 4 ++--
>> src/glsl/ir.h | 18 +++++++++---------
>> 2 files changed, 11 insertions(+), 11 deletions(-)
>>
>> diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp
>> index 827fe8e..6f8676e 100644
>> --- a/src/glsl/ir.cpp
>> +++ b/src/glsl/ir.cpp
>> @@ -1096,7 +1096,7 @@ ir_dereference_record::ir_dereference_record(ir_variable *var,
>> }
>>
>> bool
>> -ir_dereference::is_lvalue()
>> +ir_dereference::is_lvalue() const
>> {
>> ir_variable *var = this->variable_referenced();
>>
>> @@ -1310,7 +1310,7 @@ ir_swizzle::create(ir_rvalue *val, const char *str, unsigned vector_length)
>> #undef I
>>
>> ir_variable *
>> -ir_swizzle::variable_referenced()
>> +ir_swizzle::variable_referenced() const
>> {
>> return this->val->variable_referenced();
>> }
>> diff --git a/src/glsl/ir.h b/src/glsl/ir.h
>> index 50a9d6e..04fa97b 100644
>> --- a/src/glsl/ir.h
>> +++ b/src/glsl/ir.h
>> @@ -144,7 +144,7 @@ public:
>>
>> ir_rvalue *as_rvalue_to_saturate();
>>
>> - virtual bool is_lvalue()
>> + virtual bool is_lvalue() const
>> {
>> return false;
>> }
>> @@ -152,7 +152,7 @@ public:
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced()
>> + virtual ir_variable *variable_referenced() const
>> {
>> return NULL;
>> }
>> @@ -1355,7 +1355,7 @@ public:
>>
>> virtual ir_visitor_status accept(ir_hierarchical_visitor *);
>>
>> - bool is_lvalue()
>> + bool is_lvalue() const
>> {
>> return val->is_lvalue() && !mask.has_duplicates;
>> }
>> @@ -1363,7 +1363,7 @@ public:
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced();
>> + virtual ir_variable *variable_referenced() const;
>>
>> ir_rvalue *val;
>> ir_swizzle_mask mask;
>> @@ -1387,12 +1387,12 @@ public:
>> return this;
>> }
>>
>> - bool is_lvalue();
>> + bool is_lvalue() const;
>>
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced() = 0;
>> + virtual ir_variable *variable_referenced() const = 0;
>> };
>>
>>
>> @@ -1413,7 +1413,7 @@ public:
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced()
>> + virtual ir_variable *variable_referenced() const
>> {
>> return this->var;
>> }
>> @@ -1462,7 +1462,7 @@ public:
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced()
>> + virtual ir_variable *variable_referenced() const
>> {
>> return this->array->variable_referenced();
>> }
>> @@ -1496,7 +1496,7 @@ public:
>> /**
>> * Get the variable that is ultimately referenced by an r-value
>> */
>> - virtual ir_variable *variable_referenced()
>> + virtual ir_variable *variable_referenced() const
>> {
>> return this->record->variable_referenced();
>> }
>
> This patch is sensible and straightforward.
> Reviwed-by: Chad Versace <chad at chad-versace.us>
For patch 1:
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
More information about the mesa-dev
mailing list