aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2017-03-30 12:06:52 +1000
committerDave Airlie <[email protected]>2017-03-30 12:07:32 +1000
commitaa27a9f68790db83c728a721d7625f688119cf6c (patch)
tree729c342f9725811738b456be9795b32b027ee86e
parent2b35b60df15a158541f147750085fe051909ba5d (diff)
radv: fix regression with mask attrib setting code.
Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r--src/amd/common/ac_nir_to_llvm.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 8f09b0d0d56..5e69a75b4cb 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -4181,6 +4181,7 @@ handle_shader_output_decl(struct nir_to_llvm_context *ctx,
unsigned mask_attribs;
variable->data.driver_location = idx * 4;
+ mask_attribs = ((1ull << attrib_count) - 1) << idx;
if (ctx->stage == MESA_SHADER_VERTEX ||
ctx->stage == MESA_SHADER_GEOMETRY) {
if (idx == VARYING_SLOT_CLIP_DIST0) {
@@ -4194,10 +4195,9 @@ handle_shader_output_decl(struct nir_to_llvm_context *ctx,
attrib_count = 2;
else
attrib_count = 1;
+ mask_attribs = 1 << idx;
}
- mask_attribs = 1 << idx;
- } else
- mask_attribs = ((1ull << attrib_count) - 1) << idx;
+ }
for (unsigned i = 0; i < attrib_count; ++i) {
for (unsigned chan = 0; chan < 4; chan++) {