summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/i965/brw_pipe_shader.c
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2009-11-04 23:18:07 +0000
committerKeith Whitwell <keithw@vmware.com>2009-11-04 23:18:07 +0000
commit1b611f99b430333e840908b42471a721689b2529 (patch)
tree35fd0dec976d51a4922f054a5b05f58f4b24de56 /src/gallium/drivers/i965/brw_pipe_shader.c
parentcc8105d7402511c7d0ea8a07faaa8d149d9249f2 (diff)
i965g: hook up some missing vertex shader code
Diffstat (limited to 'src/gallium/drivers/i965/brw_pipe_shader.c')
-rw-r--r--src/gallium/drivers/i965/brw_pipe_shader.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/gallium/drivers/i965/brw_pipe_shader.c b/src/gallium/drivers/i965/brw_pipe_shader.c
index 8e10edb459..2833f2bce0 100644
--- a/src/gallium/drivers/i965/brw_pipe_shader.c
+++ b/src/gallium/drivers/i965/brw_pipe_shader.c
@@ -128,12 +128,19 @@ static void *brw_create_vs_state( struct pipe_context *pipe,
vs->id = brw->program_id++;
//vs->has_flow_control = brw_wm_has_flow_control(vs);
- /* Tell the draw module about this shader:
- */
+ vs->tokens = tgsi_dup_tokens(shader->tokens);
+ if (vs->tokens == NULL)
+ goto fail;
+
+ tgsi_scan_shader(vs->tokens, &vs->info);
/* Done:
*/
return (void *)vs;
+
+fail:
+ FREE(vs);
+ return NULL;
}