mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 22:08:26 +02:00
glsl: Skip unavailable built-ins when matching signatures.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Paul Berry <stereotype441@gmail.com>
This commit is contained in:
parent
3e820e3aef
commit
1ffcef04ce
1 changed files with 8 additions and 0 deletions
|
|
@ -145,6 +145,10 @@ ir_function::matching_signature(_mesa_glsl_parse_state *state,
|
||||||
ir_function_signature *const sig =
|
ir_function_signature *const sig =
|
||||||
(ir_function_signature *) iter.get();
|
(ir_function_signature *) iter.get();
|
||||||
|
|
||||||
|
/* Skip over any built-ins that aren't available in this shader. */
|
||||||
|
if (sig->is_builtin() && !sig->is_builtin_available(state))
|
||||||
|
continue;
|
||||||
|
|
||||||
switch (parameter_lists_match(& sig->parameters, actual_parameters)) {
|
switch (parameter_lists_match(& sig->parameters, actual_parameters)) {
|
||||||
case PARAMETER_LIST_EXACT_MATCH:
|
case PARAMETER_LIST_EXACT_MATCH:
|
||||||
*is_exact = true;
|
*is_exact = true;
|
||||||
|
|
@ -212,6 +216,10 @@ ir_function::exact_matching_signature(_mesa_glsl_parse_state *state,
|
||||||
ir_function_signature *const sig =
|
ir_function_signature *const sig =
|
||||||
(ir_function_signature *) iter.get();
|
(ir_function_signature *) iter.get();
|
||||||
|
|
||||||
|
/* Skip over any built-ins that aren't available in this shader. */
|
||||||
|
if (sig->is_builtin() && !sig->is_builtin_available(state))
|
||||||
|
continue;
|
||||||
|
|
||||||
if (parameter_lists_match_exact(&sig->parameters, actual_parameters))
|
if (parameter_lists_match_exact(&sig->parameters, actual_parameters))
|
||||||
return sig;
|
return sig;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue