diff options
Diffstat (limited to 'src/compiler/glsl/ir.h')
-rw-r--r-- | src/compiler/glsl/ir.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/compiler/glsl/ir.h b/src/compiler/glsl/ir.h index 840c06e10ac..58e6356566f 100644 --- a/src/compiler/glsl/ir.h +++ b/src/compiler/glsl/ir.h @@ -1579,8 +1579,21 @@ public: virtual ir_variable *variable_referenced() const; + /** + * Determine the number of operands used by an expression + */ + void init_num_operands() + { + if (operation == ir_quadop_vector) { + num_operands = this->type->vector_elements; + } else { + num_operands = get_num_operands(operation); + } + } + ir_expression_operation operation; ir_rvalue *operands[4]; + uint8_t num_operands; }; |