diff options
author | Ben Skeggs <[email protected]> | 2008-04-28 15:42:19 +1000 |
---|---|---|
committer | Ben Skeggs <[email protected]> | 2008-04-28 19:25:40 +1000 |
commit | 58b1bcaa094ed07a54bd7e4cdbddbcdcf1f629a7 (patch) | |
tree | 49e9b1ec370994abc3f691ef6946a053ab238763 /src/gallium/drivers/nv40/nv40_state.c | |
parent | 2193578851b3b5a99c078b28187cf3158f4218f6 (diff) |
nv40: do full swtnl fallback when edge flags present.
This isn't necessary, with some effort we can do this on the hw. However,
until I encounter something "real" that uses them there's not a lot of
point.
Diffstat (limited to 'src/gallium/drivers/nv40/nv40_state.c')
-rw-r--r-- | src/gallium/drivers/nv40/nv40_state.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv40/nv40_state.c b/src/gallium/drivers/nv40/nv40_state.c index 997beca883a..2d921d2b8a4 100644 --- a/src/gallium/drivers/nv40/nv40_state.c +++ b/src/gallium/drivers/nv40/nv40_state.c @@ -680,6 +680,16 @@ nv40_set_vertex_elements(struct pipe_context *pipe, unsigned count, nv40->draw_dirty |= NV40_NEW_ARRAYS; } +static void +nv40_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield) +{ + struct nv40_context *nv40 = nv40_context(pipe); + + nv40->edgeflags = bitfield; + nv40->dirty |= NV40_NEW_ARRAYS; + nv40->draw_dirty |= NV40_NEW_ARRAYS; +} + void nv40_init_state_functions(struct nv40_context *nv40) { @@ -719,6 +729,7 @@ nv40_init_state_functions(struct nv40_context *nv40) nv40->pipe.set_scissor_state = nv40_set_scissor_state; nv40->pipe.set_viewport_state = nv40_set_viewport_state; + nv40->pipe.set_edgeflags = nv40_set_edgeflags; nv40->pipe.set_vertex_buffers = nv40_set_vertex_buffers; nv40->pipe.set_vertex_elements = nv40_set_vertex_elements; } |