diff options
author | Luca Barbieri <[email protected]> | 2010-02-21 10:55:41 +0100 |
---|---|---|
committer | Younes Manton <[email protected]> | 2010-03-15 00:03:02 -0400 |
commit | bcb37411fc9159a5c1af50b7defbf1f526b50793 (patch) | |
tree | 425b9852bdcd99d5c44cb3203f8180c3ee7b53ca /src/gallium/drivers/nvfx/nvfx_context.h | |
parent | d9e396ce4a124529fa92ad967f2b3ff72534079b (diff) |
nv30, nv40: non-trivially unify nv[34]0_fragprog.c
The files are mostly the same except:
1. On NV40, some TGSI instructions are emulated with several hardware ones
2. Some instructions such as DDX/DDY, and STR were missing from nv30
3. NV40 has more sophisticated register management
nv30 now supports all instructions and uses the nv40 register management.
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_context.h')
-rw-r--r-- | src/gallium/drivers/nvfx/nvfx_context.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_context.h b/src/gallium/drivers/nvfx/nvfx_context.h index 28daa1d2e7a..0a7a0f12527 100644 --- a/src/gallium/drivers/nvfx/nvfx_context.h +++ b/src/gallium/drivers/nvfx/nvfx_context.h @@ -183,6 +183,7 @@ struct nvfx_state_entry { extern struct nvfx_state_entry nvfx_state_blend; extern struct nvfx_state_entry nvfx_state_blend_colour; +extern struct nvfx_state_entry nvfx_state_fragprog; extern struct nvfx_state_entry nvfx_state_framebuffer; extern struct nvfx_state_entry nvfx_state_rasterizer; extern struct nvfx_state_entry nvfx_state_scissor; @@ -198,6 +199,10 @@ extern void nvfx_init_surface_functions(struct nvfx_context *nvfx); extern void nvfx_clear(struct pipe_context *pipe, unsigned buffers, const float *rgba, double depth, unsigned stencil); +/* nvfx_fragprog.c */ +extern void nvfx_fragprog_destroy(struct nvfx_context *, + struct nvfx_fragment_program *); + /* nvfx_state_emit.c */ extern void nvfx_state_flush_notify(struct nouveau_channel *chan); extern boolean nvfx_state_validate(struct nvfx_context *nvfx); |