diff options
author | Patrice Mandin <[email protected]> | 2008-07-12 00:48:26 +0200 |
---|---|---|
committer | Patrice Mandin <[email protected]> | 2008-07-12 00:48:26 +0200 |
commit | 58737dc87575625438d288fe2f816b6a9d2086f1 (patch) | |
tree | e4b89db836a2712be232dac764e9e4a0b1f50b0f /src/gallium/drivers/nv30/nv30_state.c | |
parent | 2419a5fe3601851989506a11b0bd4e3cfb071035 (diff) |
nv30: Emit fragment program using state objects
Diffstat (limited to 'src/gallium/drivers/nv30/nv30_state.c')
-rw-r--r-- | src/gallium/drivers/nv30/nv30_state.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/gallium/drivers/nv30/nv30_state.c b/src/gallium/drivers/nv30/nv30_state.c index 92695ce23c0..8dc16d361d8 100644 --- a/src/gallium/drivers/nv30/nv30_state.c +++ b/src/gallium/drivers/nv30/nv30_state.c @@ -539,6 +539,8 @@ nv30_fp_state_create(struct pipe_context *pipe, fp = CALLOC(1, sizeof(struct nv30_fragment_program)); fp->pipe = *cso; + tgsi_scan_shader(fp->pipe.tokens, &fp->info); + return (void *)fp; } @@ -546,13 +548,8 @@ static void nv30_fp_state_bind(struct pipe_context *pipe, void *hwcso) { struct nv30_context *nv30 = nv30_context(pipe); - struct nv30_fragment_program *fp = hwcso; - - if (!hwcso) { - return; - } - nv30->fragprog.current = fp; + nv30->fragprog = hwcso; nv30->dirty |= NV30_NEW_FRAGPROG; } |