summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nvfx/nvfx_context.h
diff options
context:
space:
mode:
authorLuca Barbieri <luca@luca-barbieri.com>2010-02-21 10:55:41 +0100
committerYounes Manton <younes.m@gmail.com>2010-03-15 00:03:02 -0400
commitbcb37411fc9159a5c1af50b7defbf1f526b50793 (patch)
tree425b9852bdcd99d5c44cb3203f8180c3ee7b53ca /src/gallium/drivers/nvfx/nvfx_context.h
parentd9e396ce4a124529fa92ad967f2b3ff72534079b (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.h5
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 28daa1d2e7..0a7a0f1252 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);