summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_context.h
diff options
context:
space:
mode:
authorMaciej Cencora <m.cencora@gmail.com>2009-07-04 13:26:49 +0200
committerMaciej Cencora <m.cencora@gmail.com>2009-07-13 19:25:56 +0200
commit7829b7a1b85dd8e6c31189e7f3dec91d71d134c3 (patch)
tree025f56223ead969c4e25657f528cb3a3dddfbc11 /src/mesa/drivers/dri/r300/r300_context.h
parent28066ed012b51f2171866669a2972bc7ee293565 (diff)
r300: cache translated fragment programs
Diffstat (limited to 'src/mesa/drivers/dri/r300/r300_context.h')
-rw-r--r--src/mesa/drivers/dri/r300/r300_context.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_context.h b/src/mesa/drivers/dri/r300/r300_context.h
index 026c33c67c..fc436e1100 100644
--- a/src/mesa/drivers/dri/r300/r300_context.h
+++ b/src/mesa/drivers/dri/r300/r300_context.h
@@ -546,7 +546,7 @@ struct r500_fragment_program_code {
* to render with that program.
*/
struct r300_fragment_program {
- struct gl_fragment_program Base;
+ struct gl_program *Base;
GLboolean translated;
GLboolean error;
@@ -559,6 +559,13 @@ struct r300_fragment_program {
GLboolean writes_depth;
GLuint optimization;
+
+ struct r300_fragment_program *next;
+};
+
+struct r300_fragment_program_cont {
+ struct gl_fragment_program Base;
+ struct r300_fragment_program *progs;
};
struct r300_fragment_program_compiler {
@@ -633,6 +640,7 @@ struct r300_context {
struct r300_hw_state hw;
struct r300_vertex_program *selected_vp;
+ struct r300_fragment_program *selected_fp;
/* Vertex buffers
*/