diff options
author | Corbin Simpson <[email protected]> | 2009-10-16 08:39:59 -0700 |
---|---|---|
committer | Corbin Simpson <[email protected]> | 2009-10-16 08:43:02 -0700 |
commit | fc8a156cfc539b9c04dc3527e4fc61cb4b0b688e (patch) | |
tree | d9eafbd3c0645c66f0223143e1e9dcce56d3d3c9 /src/gallium/drivers/r300/r300_context.h | |
parent | 3924d8611513eea74446d655b554596ab66381ff (diff) |
r300g: Use a hash table to look up vertex info.
Need to move rs_block to this, too.
Also, I'm getting massive amounts of flicker for some reason; I bet we've gotta
re-re-examine PSC and friends. :C
Diffstat (limited to 'src/gallium/drivers/r300/r300_context.h')
-rw-r--r-- | src/gallium/drivers/r300/r300_context.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index 2acce0fd4a4..2a62c67fc73 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -30,12 +30,14 @@ #include "tgsi/tgsi_scan.h" +#include "util/u_hash_table.h" #include "util/u_memory.h" #include "util/u_simple_list.h" #include "r300_clear.h" #include "r300_query.h" #include "r300_screen.h" +#include "r300_state_derived.h" #include "r300_winsys.h" struct r300_fragment_shader; @@ -248,6 +250,12 @@ struct r300_context { struct r300_query *query_current; struct r300_query query_list; + /* Shader hash table. Used to store vertex formatting information, which + * depends on the combination of both currently loaded shaders. */ + struct u_hash_table* shader_hash_table; + /* Vertex formatting information. */ + struct r300_vertex_format* vertex_info; + /* Various CSO state objects. */ /* Blend state. */ struct r300_blend_state* blend_state; @@ -278,8 +286,6 @@ struct r300_context { /* Vertex buffers for Gallium. */ struct pipe_vertex_buffer vertex_buffers[PIPE_MAX_ATTRIBS]; int vertex_buffer_count; - /* Vertex information. */ - struct r300_vertex_format vertex_info; /* Vertex shader. */ struct r300_vertex_shader* vs; /* Viewport state. */ |