diff options
Diffstat (limited to 'src/mesa/pipe/tgsi/core/tgsi_exec.h')
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_exec.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/mesa/pipe/tgsi/core/tgsi_exec.h b/src/mesa/pipe/tgsi/core/tgsi_exec.h index d2ff40cabb..b92d1b5918 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_exec.h +++ b/src/mesa/pipe/tgsi/core/tgsi_exec.h @@ -85,6 +85,29 @@ struct tgsi_exec_labels #define TGSI_EXEC_NUM_TEMPS (32 + 4) #define TGSI_EXEC_NUM_ADDRS 1 +/* XXX: This is temporary */ +struct tgsi_exec_cond_regs +{ + struct tgsi_exec_vector TempsAddrs[TGSI_EXEC_NUM_TEMPS + TGSI_EXEC_NUM_ADDRS]; + struct tgsi_exec_vector Outputs[2]; /* XXX: That's just enough for fragment shader only! */ +}; + +/* XXX: This is temporary */ +struct tgsi_exec_cond_state +{ + struct tgsi_exec_cond_regs IfPortion; + struct tgsi_exec_cond_regs ElsePortion; + GLuint Condition; + GLboolean WasElse; +}; + +/* XXX: This is temporary */ +struct tgsi_exec_cond_stack +{ + struct tgsi_exec_cond_state States[8]; + GLuint Index; /* into States[] */ +}; + struct tgsi_exec_machine { /* @@ -112,6 +135,8 @@ struct tgsi_exec_machine GLuint Processor; GLuint *Primitives; + + struct tgsi_exec_cond_stack CondStack; #if XXX_SSE struct x86_function Function; #endif |