summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2009-06-04 23:56:32 -0700
committerCorbin Simpson <[email protected]>2009-06-04 23:56:32 -0700
commit4c66c5bf921357c94611e583d1a64f653e957765 (patch)
tree8f4a517dcea32947ea8fef3dc36e0cdec4af99b3
parent571b36831bed3c8dd5691cad5b544667d07c60b0 (diff)
r300-gallium: vs: Fix negation calculation.
Still doesn't draw right, but at least it's the right numbers now. Thanks to taiu in #dri-devel.
-rw-r--r--src/gallium/drivers/r300/r300_state_tcl.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gallium/drivers/r300/r300_state_tcl.c b/src/gallium/drivers/r300/r300_state_tcl.c
index 30a8dab307a..8cf8250425e 100644
--- a/src/gallium/drivers/r300/r300_state_tcl.c
+++ b/src/gallium/drivers/r300/r300_state_tcl.c
@@ -164,13 +164,13 @@ static uint32_t r300_vs_op(unsigned op)
static uint32_t r300_vs_swiz(struct tgsi_full_src_register* reg)
{
if (reg->SrcRegister.Extended) {
- return (reg->SrcRegister.Negate ? R300_PVS_NEGATE_XYZW : 0) |
+ return (reg->SrcRegister.Negate ? (0xf << 12) : 0) |
reg->SrcRegisterExtSwz.ExtSwizzleX |
(reg->SrcRegisterExtSwz.ExtSwizzleY << 3) |
(reg->SrcRegisterExtSwz.ExtSwizzleZ << 6) |
(reg->SrcRegisterExtSwz.ExtSwizzleW << 9);
} else {
- return (reg->SrcRegister.Negate ? R300_PVS_NEGATE_XYZW : 0) |
+ return (reg->SrcRegister.Negate ? (0xf << 12) : 0) |
reg->SrcRegister.SwizzleX |
(reg->SrcRegister.SwizzleY << 3) |
(reg->SrcRegister.SwizzleZ << 6) |
@@ -182,13 +182,13 @@ static uint32_t r300_vs_swiz(struct tgsi_full_src_register* reg)
static uint32_t r300_vs_scalar_swiz(struct tgsi_full_src_register* reg)
{
if (reg->SrcRegister.Extended) {
- return (reg->SrcRegister.Negate ? R300_PVS_NEGATE_XYZW : 0) |
+ return (reg->SrcRegister.Negate ? (0xf << 12) : 0) |
reg->SrcRegisterExtSwz.ExtSwizzleX |
(reg->SrcRegisterExtSwz.ExtSwizzleX << 3) |
(reg->SrcRegisterExtSwz.ExtSwizzleX << 6) |
(reg->SrcRegisterExtSwz.ExtSwizzleX << 9);
} else {
- return (reg->SrcRegister.Negate ? R300_PVS_NEGATE_XYZW : 0) |
+ return (reg->SrcRegister.Negate ? (0xf << 12) : 0) |
reg->SrcRegister.SwizzleX |
(reg->SrcRegister.SwizzleX << 3) |
(reg->SrcRegister.SwizzleX << 6) |