diff options
author | Corbin Simpson <[email protected]> | 2010-02-10 18:38:53 -0800 |
---|---|---|
committer | Corbin Simpson <[email protected]> | 2010-02-10 18:40:12 -0800 |
commit | 229db2b8ade33571e4cece1d838234895db220c2 (patch) | |
tree | 37831eb0fc978d15574b7efdc6bfbc8f3f96f94c /src/gallium/drivers/r300/r300_tgsi_to_rc.h | |
parent | 218590f70723ce0683f70a0c7aab229f9bbd89a6 (diff) |
r300g: Work around "defect" in r300compiler.
r300compiler doesn't handle half swizzles for vert shaders, which don't
have them. So, for now, disable them.
Diffstat (limited to 'src/gallium/drivers/r300/r300_tgsi_to_rc.h')
-rw-r--r-- | src/gallium/drivers/r300/r300_tgsi_to_rc.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.h b/src/gallium/drivers/r300/r300_tgsi_to_rc.h index 39b473c7bf5..97641a954b9 100644 --- a/src/gallium/drivers/r300/r300_tgsi_to_rc.h +++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.h @@ -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; @@ -41,6 +43,10 @@ struct tgsi_to_rc { int immediate_offset; 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; }; void r300_tgsi_to_rc(struct tgsi_to_rc * ttr, const struct tgsi_token * tokens); |