st/xa: Solid fill (tested) and composite (yet untested)
[mesa.git] / src / gallium / drivers / r300 / r300_tgsi_to_rc.h
index f1e66f46bbc50b84968e7e242754c4883fac6dd5..adb044cfe5698582c40bf2432ff6d2ea40720067 100644 (file)
@@ -23,6 +23,8 @@
 #ifndef R300_TGSI_TO_RC_H
 #define R300_TGSI_TO_RC_H
 
+#include "pipe/p_compiler.h"
+
 struct radeon_compiler;
 
 struct tgsi_full_declaration;
@@ -39,8 +41,15 @@ struct tgsi_to_rc {
     const struct tgsi_shader_info * info;
 
     int immediate_offset;
-    struct swizzled_imms imms_to_swizzle[10];
+    struct swizzled_imms * imms_to_swizzle;
     unsigned imms_to_swizzle_count;
+
+    /* Vertex shaders have no half swizzles, and no way to handle them, so
+     * until rc grows proper support, indicate if they're safe to use. */
+    boolean use_half_swizzles;
+
+    /* If an error occured. */
+    boolean error;
 };
 
 void r300_tgsi_to_rc(struct tgsi_to_rc * ttr, const struct tgsi_token * tokens);