nv50/ir: fix reversed order of lane ops in quadops
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Wed, 9 May 2012 18:32:44 +0000 (20:32 +0200)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Thu, 17 May 2012 13:24:58 +0000 (15:24 +0200)
src/gallium/drivers/nv50/codegen/nv50_ir_lowering_nv50.cpp
src/gallium/drivers/nvc0/codegen/nv50_ir_lowering_nvc0.cpp

index 16bba0e172392e6e930fa542aaa7ca717b52723b..39e0cfa613db44c22f90f85e9d1969d57cbdb4e1 100644 (file)
@@ -109,9 +109,10 @@ expandIntegerMUL(BuildUtil *bld, Instruction *mul)
 #define QOP_SUB  2
 #define QOP_MOV2 3
 
+//             UL UR LL LR
 #define QUADOP(q, r, s, t)            \
-   ((QOP_##q << 0) | (QOP_##r << 2) | \
-    (QOP_##s << 4) | (QOP_##t << 6))
+   ((QOP_##q << 6) | (QOP_##r << 4) | \
+    (QOP_##s << 2) | (QOP_##t << 0))
 
 class NV50LegalizePostRA : public Pass
 {
index 900e998df8d3c909ca67f3152783627730d12af9..8fd4541a96a158953f2ff5abcf72278d5619ef30 100644 (file)
@@ -34,9 +34,10 @@ namespace nv50_ir {
 #define QOP_SUB  2
 #define QOP_MOV2 3
 
+//             UL UR LL LR
 #define QUADOP(q, r, s, t)                      \
-   ((QOP_##q << 0) | (QOP_##r << 2) |           \
-    (QOP_##s << 4) | (QOP_##t << 6))
+   ((QOP_##q << 6) | (QOP_##r << 4) |           \
+    (QOP_##s << 2) | (QOP_##t << 0))
 
 class NVC0LegalizeSSA : public Pass
 {