if (first != NULL) {
simple_node *ptr = first;
do {
- ir_instruction *const result =
+ ir_rvalue *const result =
((ast_node *) ptr)->hir(instructions, state);
ptr = ptr->next;
exec_list_iterator formal_iter = sig->parameters.iterator();
while (actual_iter.has_next()) {
- ir_rvalue *actual =
- ((ir_instruction *) actual_iter.get())->as_rvalue();
- ir_variable *formal =
- ((ir_instruction *) formal_iter.get())->as_variable();
+ ir_rvalue *actual = (ir_rvalue *) actual_iter.get();
+ ir_variable *formal = (ir_variable *) formal_iter.get();
assert(actual != NULL);
assert(formal != NULL);
const struct glsl_type *return_type;
/**
- * List of function parameters stored as ir_variable objects.
+ * List of ir_variable of function parameters.
+ *
+ * This represents the storage. The paramaters passed in a particular
+ * call will be in ir_call::actual_paramaters.
*/
struct exec_list parameters;
private:
/**
- * Set of overloaded functions with this name.
+ * List of ir_function_signature for each overloaded function with this name.
*/
struct exec_list signatures;
};
}
ir_rvalue *condition;
+ /** List of ir_instruction for the body of the then branch */
exec_list then_instructions;
+ /** List of ir_instruction for the body of the else branch */
exec_list else_instructions;
};
return body_instructions.iterator();
}
- /** List of instructions that make up the body of the loop. */
+ /** List of ir_instruction that make up the body of the loop. */
exec_list body_instructions;
/**
}
const ir_function_signature *callee;
+
+ /* List of ir_rvalue of paramaters passed in this call. */
exec_list actual_parameters;
};