diff options
author | Brian <[email protected]> | 2007-02-02 16:10:02 -0700 |
---|---|---|
committer | Brian <[email protected]> | 2007-02-02 16:10:02 -0700 |
commit | 1f9def3163e26310b688336ef6dd513b99506151 (patch) | |
tree | 8cdb2f31eae88f9ed7df50042dbd3e3795faa2a1 /src/mesa/shader/slang/slang_codegen.c | |
parent | 9cfee527f6ff5ff3e4de43b46ef098cb86211d2d (diff) |
move _slang_locate_function()
Diffstat (limited to 'src/mesa/shader/slang/slang_codegen.c')
-rw-r--r-- | src/mesa/shader/slang/slang_codegen.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c index 295292e0761..17d1a6bb82f 100644 --- a/src/mesa/shader/slang/slang_codegen.c +++ b/src/mesa/shader/slang/slang_codegen.c @@ -1264,58 +1264,6 @@ _slang_first_function(struct slang_function_scope_ *scope, const char *name) -slang_function * -_slang_locate_function(const slang_function_scope * funcs, slang_atom a_name, - const slang_operation * args, GLuint num_args, - const slang_name_space * space, - slang_atom_pool * atoms) -{ - GLuint i; - - for (i = 0; i < funcs->num_functions; i++) { - slang_function *f = &funcs->functions[i]; - const GLuint haveRetValue = _slang_function_has_return_value(f); - GLuint j; - - if (a_name != f->header.a_name) - continue; - if (f->param_count - haveRetValue != num_args) - continue; - - /* compare parameter / argument types */ - for (j = 0; j < num_args; j++) { - slang_typeinfo ti; - - if (!slang_typeinfo_construct(&ti)) - return NULL; - if (!_slang_typeof_operation_(&args[j], space, &ti, atoms)) { - slang_typeinfo_destruct(&ti); - return NULL; - } - if (!slang_type_specifier_equal(&ti.spec, - &f->parameters->variables[j/* + haveRetValue*/]->type.specifier)) { - slang_typeinfo_destruct(&ti); - break; - } - slang_typeinfo_destruct(&ti); - - /* "out" and "inout" formal parameter requires the actual parameter to be l-value */ - if (!ti.can_be_referenced && - (f->parameters->variables[j/* + haveRetValue*/]->type.qualifier == slang_qual_out || - f->parameters->variables[j/* + haveRetValue*/]->type.qualifier == slang_qual_inout)) - break; - } - if (j == num_args) - return f; - } - if (funcs->outer_scope != NULL) - return _slang_locate_function(funcs->outer_scope, a_name, args, - num_args, space, atoms); - return NULL; -} - - - /** * Assemble a function call, given a particular function name. * \param name the function's name (operators like '*' are possible). |