summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2009-11-19 19:31:32 -0800
committerKeith Whitwell <keithw@vmware.com>2009-11-19 19:31:32 -0800
commit4fb77ef840a42c3c8e2a43aa772a73614528fc4d (patch)
treefd6aa618cfe3fbd83a5e04562d5d6f853afdc98f /src/gallium/drivers
parent34a01929d54266e8e5fec47e94859405bce588fa (diff)
i965g: include interpolation info in fs signature
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/i965/brw_context.h5
-rw-r--r--src/gallium/drivers/i965/brw_pipe_shader.c1
2 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/i965/brw_context.h b/src/gallium/drivers/i965/brw_context.h
index 65859be0ec..64279c4676 100644
--- a/src/gallium/drivers/i965/brw_context.h
+++ b/src/gallium/drivers/i965/brw_context.h
@@ -174,8 +174,9 @@ struct brw_vertex_shader {
struct brw_fs_signature {
GLuint nr_inputs;
struct {
- GLuint semantic:5;
- GLuint semantic_index:27;
+ GLuint interp:3; /* TGSI_INTERPOLATE_x */
+ GLuint semantic:5; /* TGSI_SEMANTIC_x */
+ GLuint semantic_index:24;
} input[PIPE_MAX_SHADER_INPUTS];
};
diff --git a/src/gallium/drivers/i965/brw_pipe_shader.c b/src/gallium/drivers/i965/brw_pipe_shader.c
index c755fa6889..3222ee7777 100644
--- a/src/gallium/drivers/i965/brw_pipe_shader.c
+++ b/src/gallium/drivers/i965/brw_pipe_shader.c
@@ -109,6 +109,7 @@ static void *brw_create_fs_state( struct pipe_context *pipe,
fs->signature.nr_inputs = fs->info.num_inputs;
for (i = 0; i < fs->info.num_inputs; i++) {
+ fs->signature.input[i].interp = fs->info.input_interpolate[i];
fs->signature.input[i].semantic = fs->info.input_semantic_name[i];
fs->signature.input[i].semantic_index = fs->info.input_semantic_index[i];
}