summaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/p_state.h
diff options
context:
space:
mode:
authorBrian <[email protected]>2007-09-19 18:53:36 -0600
committerBrian <[email protected]>2007-09-19 18:53:59 -0600
commit37cf13ed9a429c755f121daa1776b1b30a985ab3 (patch)
tree8ae423c054011d6826024b173e1de892c8bed78e /src/mesa/pipe/p_state.h
parent83a674a7af4e58f677a56aae2111d2cbdbf1e21d (diff)
Checkpoint: replacement of TGSI_ATTRIB_x tokens with input/output semantics.
TGSI_ATTRIB_x tokens still present and used in a few places. Expanded set of TGSI_SEMANTIC_x tokens for describing the meaning of inputs/outputs. These tokens are in a crude state ATM. Lots of #if 0 / disabled code to be removed yet, etc... Softpipe and i915 drivers should be in working condition but not heavily tested.
Diffstat (limited to 'src/mesa/pipe/p_state.h')
-rw-r--r--src/mesa/pipe/p_state.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mesa/pipe/p_state.h b/src/mesa/pipe/p_state.h
index d2cc76a59b2..6396d49b844 100644
--- a/src/mesa/pipe/p_state.h
+++ b/src/mesa/pipe/p_state.h
@@ -50,6 +50,8 @@
#define PIPE_MAX_COLOR_BUFS 8
#define PIPE_MAX_TEXTURE_LEVELS 16
#define PIPE_MAX_FEEDBACK_ATTRIBS 16
+#define PIPE_MAX_SHADER_INPUTS 16
+#define PIPE_MAX_SHADER_OUTPUTS 16
/* fwd decl */
@@ -140,13 +142,14 @@ struct pipe_constant_buffer {
struct pipe_shader_state {
- unsigned inputs_read; /**< TGSI_ATTRIB_ bits */
- unsigned outputs_written; /**< TGSI_ATTRIB_ bits */
const struct tgsi_token *tokens;
void *executable;
- uint num_inputs;
- uint num_outputs;
+ /** These fields somewhat constitute the shader "signature" */
+ ubyte num_inputs;
+ ubyte num_outputs;
+ ubyte input_semantics[PIPE_MAX_SHADER_INPUTS];
+ ubyte output_semantics[PIPE_MAX_SHADER_OUTPUTS];
};
struct pipe_depth_stencil_state