Home | History | Annotate | Download | only in glsl

Lines Matching defs:function

33  * 4. Replace all "return"s with a single return at the end of the function,
34 * for the main function and/or other functions
51 * until the end of the function.
89 * jump back to the top, or return from the function).
102 * of it, or return from the function.
110 * of it, or return from the function.
117 * of it, or return from the function.
124 * it or return from the function.
131 * only return from the function.
186 /* also supported for the "function loop" */
248 /* Postconditions: on exit of any visit() function:
265 * responsibility of the statement (or function signature) that
271 struct function_record function;
313 ir_variable* return_flag = this->function.get_return_flag();
314 if(!this->function.signature->return_type->is_void()) {
315 ir_variable* return_value = this->function.get_return_value();
333 * It is safe to pass NULL to this function.
349 void *ctx = this->function.signature;
361 * It is safe to pass NULL to this function.
481 /* never lower return at the end of a this->function */
482 if(this->function.nesting_depth == 0 && ir->get_next()->is_tail_sentinel())
485 lower = this->function.lower_return;
517 ++this->function.nesting_depth;
574 else if(jump_strengths[0] == strength_return && this->function.signature->return_type->is_void())
624 * function doesn't have one already) and add instructions
625 * that: 1. store the return value (if this function has a
646 * false to prevent the rest of the function from
661 * The visit() function for the loop will ensure that the
825 --this->function.nesting_depth;
847 ++this->function.nesting_depth;
849 this->loop = loop_record(this->function.signature, ir);
870 if (this->function.lower_return)
912 assert(this->function.return_flag);
914 ir_if* return_if = new(ir) ir_if(new(ir) ir_dereference_variable(this->function.return_flag));
940 --this->function.nesting_depth;
946 assert(!this->function.signature);
955 function_record saved_function = this->function;
957 this->function = function_record(ir, lower_return);
962 /* Visit the body of the function to lower any jumps that occur
982 if(this->function.return_value)
983 ir->body.push_tail(new(ir) ir_return(new (ir) ir_dereference_variable(this->function.return_value)));
986 this->function = saved_function;