diff options
Diffstat (limited to 'src/mesa/pipe/tgsi/exec/tgsi_exec.h')
-rw-r--r-- | src/mesa/pipe/tgsi/exec/tgsi_exec.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/mesa/pipe/tgsi/exec/tgsi_exec.h b/src/mesa/pipe/tgsi/exec/tgsi_exec.h index d50f786029..f87d6e8862 100644 --- a/src/mesa/pipe/tgsi/exec/tgsi_exec.h +++ b/src/mesa/pipe/tgsi/exec/tgsi_exec.h @@ -120,6 +120,10 @@ struct tgsi_exec_cond_stack unsigned Index; /* into States[] */ }; + +#define TGSI_EXEC_MAX_COND_NESTING 10 + + struct tgsi_exec_machine { /* @@ -152,9 +156,15 @@ struct tgsi_exec_machine /* FRAGMENT processor only. */ const struct tgsi_interp_coef *InterpCoefs; - struct tgsi_exec_cond_stack CondStack; + /* Conditional execution mask */ + uint CondMask; + + /* Condition mask stack (for nested conditionals) */ + uint condStack[TGSI_EXEC_MAX_COND_NESTING]; + int CondStackTop; }; + void tgsi_exec_machine_init( struct tgsi_exec_machine *mach, |