From: Brian Date: Fri, 2 Feb 2007 19:02:53 +0000 (-0700) Subject: use _slang_simplify() to evaluate array sizes X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=06daf74a7131fa092139d09ad7d035f737bc3fe1;p=mesa.git use _slang_simplify() to evaluate array sizes --- diff --git a/src/mesa/shader/slang/slang_compile.c b/src/mesa/shader/slang/slang_compile.c index 65329c9db19..4203c3cc6f2 100644 --- a/src/mesa/shader/slang/slang_compile.c +++ b/src/mesa/shader/slang/slang_compile.c @@ -40,6 +40,7 @@ #include "slang_error.h" #include "slang_emit.h" #include "slang_vartable.h" +#include "slang_simplify.h" #include "slang_print.h" @@ -367,8 +368,11 @@ parse_array_len(slang_parse_ctx * C, slang_output_ctx * O, GLuint * len) space.funcs = O->funs; space.structs = O->structs; space.vars = O->vars; - result = _slang_evaluate_int(O->assembly, O->machine, &space, - &array_size, len, C->atoms); + + /* evaluate compile-time expression which is array size */ + _slang_simplify(&array_size, &space, C->atoms); + result = (array_size.type == slang_oper_literal_int); + slang_operation_destruct(&array_size); return result; }