glsl: Move is_builtin flag back to ir_function_signature.

This effectively reverts b6f15869b3.

In desktop GLSL, defining a function with the same name as a built-in
hides that built-in function completely, so there would never be
built-in and user function signatures in the same ir_function.

However, in GLSL ES, overloading built-ins is allowed, and does not
hide the built-in signatures - so we're back to needing this.
This commit is contained in:
Kenneth Graunke
2010-09-05 01:48:11 -07:00
parent c98deb18d5
commit f412fac5b4
9 changed files with 28 additions and 15 deletions

View File

@@ -153,15 +153,14 @@ void ir_print_visitor::visit(ir_function_signature *ir)
void ir_print_visitor::visit(ir_function *ir)
{
/* Don't print built-in functions as part of the IR. */
if (ir->is_builtin)
return;
printf("(function %s\n", ir->name);
indentation++;
foreach_iter(exec_list_iterator, iter, *ir) {
ir_function_signature *const sig = (ir_function_signature *) iter.get();
if (sig->is_builtin)
continue;
indent();
sig->accept(this);
printf("\n");