summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_vs.h
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2010-03-07 02:32:09 +0100
committerMarek Olšák <[email protected]>2010-03-07 02:44:20 +0100
commit4f541db80c5ffff8932679a389a6043105f0b1be (patch)
treedf45215651d10d0a52cadf838ab31d9559b8141f /src/gallium/drivers/r300/r300_vs.h
parent6f4a19ca562ccd7e4bc2f7ea32263391abaa16bd (diff)
r300g: share the VS-output-mapping state with SWTCL
And associated cleanups.
Diffstat (limited to 'src/gallium/drivers/r300/r300_vs.h')
-rw-r--r--src/gallium/drivers/r300/r300_vs.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/gallium/drivers/r300/r300_vs.h b/src/gallium/drivers/r300/r300_vs.h
index 18cfeee3cd4..f6f0b86b683 100644
--- a/src/gallium/drivers/r300/r300_vs.h
+++ b/src/gallium/drivers/r300/r300_vs.h
@@ -28,6 +28,7 @@
#include "tgsi/tgsi_scan.h"
#include "radeon_code.h"
+#include "r300_context.h"
#include "r300_shader_semantics.h"
struct r300_context;
@@ -38,7 +39,7 @@ struct r300_vertex_shader {
struct tgsi_shader_info info;
struct r300_shader_semantics outputs;
- uint hwfmt[4];
+ struct r300_vap_output_state vap_out;
/* Stream locations for SWTCL or if TCL is bypassed. */
int stream_loc_notcl[16];
@@ -46,13 +47,17 @@ struct r300_vertex_shader {
/* Output stream location for WPOS. */
int wpos_tex_output;
- /* Has this shader been translated yet? */
- boolean translated;
-
+ /* HWTCL-specific. */
/* Machine code (if translated) */
struct r300_vertex_program_code code;
+
+ /* SWTCL-specific. */
+ void *draw_vs;
};
+void r300_vertex_shader_common_init(struct r300_vertex_shader *vs,
+ const struct pipe_shader_state *shader);
+
void r300_translate_vertex_shader(struct r300_context* r300,
struct r300_vertex_shader* vs);