summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_compile_operation.h
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-06-26 11:33:05 -0600
committerBrian Paul <brianp@vmware.com>2009-06-26 13:16:34 -0600
commit8e6dd8bf7991d8fc4938af692e5ce880ef139b4d (patch)
treed5583ba9921b768351ea4c6a592c15d3d3c9aabe /src/mesa/shader/slang/slang_compile_operation.h
parentaa48becb829932f410ef93cf1bbf02e0386ea646 (diff)
glsl: overhaul 'return' statement handling
A new node type (SLANG_OPER_RETURN_INLINED) is used to denote 'return' statements inside inlined functions which need special handling. All glean glsl1 tests pass for EmitContReturn=FALSE and TRUE.
Diffstat (limited to 'src/mesa/shader/slang/slang_compile_operation.h')
-rw-r--r--src/mesa/shader/slang/slang_compile_operation.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/shader/slang/slang_compile_operation.h b/src/mesa/shader/slang/slang_compile_operation.h
index 17c6c3e349..58f1edeed8 100644
--- a/src/mesa/shader/slang/slang_compile_operation.h
+++ b/src/mesa/shader/slang/slang_compile_operation.h
@@ -42,6 +42,7 @@ typedef enum slang_operation_type_
SLANG_OPER_CONTINUE, /* "continue" statement */
SLANG_OPER_DISCARD, /* "discard" (kill fragment) statement */
SLANG_OPER_RETURN, /* "return" [expr] */
+ SLANG_OPER_RETURN_INLINED, /* "return" [expr] from inlined function */
SLANG_OPER_LABEL, /* a jump target */
SLANG_OPER_EXPRESSION, /* [expr] */
SLANG_OPER_IF, /* "if" [0] then [1] else [2] */