glsl: tidy up get_num_operands()
Also add a comment that this should only be used by the ir_reader interface for testing purposes. v2: - fix grammar in comment - use unreachable rather than assert Reviewed-by: Thomas Helland <thomashelland90@gmail.com>
This commit is contained in:
@@ -556,7 +556,11 @@ ir_expression::ir_expression(int op, ir_rvalue *op0, ir_rvalue *op1,
|
||||
}
|
||||
}
|
||||
|
||||
unsigned int
|
||||
/**
|
||||
* This is only here for ir_reader to used for testing purposes. Please use
|
||||
* the precomputed num_operands field if you need the number of operands.
|
||||
*/
|
||||
unsigned
|
||||
ir_expression::get_num_operands(ir_expression_operation op)
|
||||
{
|
||||
assert(op <= ir_last_opcode);
|
||||
@@ -573,8 +577,7 @@ ir_expression::get_num_operands(ir_expression_operation op)
|
||||
if (op <= ir_last_quadop)
|
||||
return 4;
|
||||
|
||||
assert(false);
|
||||
return 0;
|
||||
unreachable("Could not calculate number of operands");
|
||||
}
|
||||
|
||||
#include "ir_expression_operation_strings.h"
|
||||
|
@@ -1538,18 +1538,10 @@ public:
|
||||
virtual ir_constant *constant_expression_value(struct hash_table *variable_context = NULL);
|
||||
|
||||
/**
|
||||
* Determine the number of operands used by an expression
|
||||
* This is only here for ir_reader to used for testing purposes please use
|
||||
* the precomputed num_operands field if you need the number of operands.
|
||||
*/
|
||||
static unsigned int get_num_operands(ir_expression_operation);
|
||||
|
||||
/**
|
||||
* Determine the number of operands used by an expression
|
||||
*/
|
||||
unsigned int get_num_operands() const
|
||||
{
|
||||
return (this->operation == ir_quadop_vector)
|
||||
? this->type->vector_elements : get_num_operands(operation);
|
||||
}
|
||||
static unsigned get_num_operands(ir_expression_operation);
|
||||
|
||||
/**
|
||||
* Return whether the expression operates on vectors horizontally.
|
||||
|
Reference in New Issue
Block a user