r300g: use a dummy replacement vertex shader if the shader compilation fails
[mesa.git] / src / gallium / drivers / r300 / r300_vs.h
index f6f0b86b683edc946afd71a3dac0d05fa35407e1..261c31ee2f5bc6b10e4e5b3c9b4304c8fe08686e 100644 (file)
@@ -41,6 +41,10 @@ struct r300_vertex_shader {
     struct r300_shader_semantics outputs;
     struct r300_vap_output_state vap_out;
 
+    /* Whether the shader was replaced by a dummy one due to a shader
+     * compilation failure. */
+    boolean dummy;
+
     /* Stream locations for SWTCL or if TCL is bypassed. */
     int stream_loc_notcl[16];
 
@@ -55,11 +59,9 @@ struct r300_vertex_shader {
     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);
+                                  struct r300_vertex_shader* vs,
+                                  const struct tgsi_token *tokens);
 
 /* Return TRUE if VAP (hwfmt) needs to be re-emitted. */
 boolean r300_vertex_shader_setup_wpos(struct r300_context* r300);