summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2017-02-03 01:03:13 +0000
committerDave Airlie <airlied@redhat.com>2017-02-03 19:51:52 +0000
commit66463b7f7540ed3d21ca6ae7c729fbb671453188 (patch)
tree349a37c132fdf32e6bf64b040c01ee430bbd60f3 /src
parent023a9e3d92e6f41d000352a5c0e2b833ffd9df69 (diff)
radv: fix compute shared memory stores since 64-bit.
These regressed and caused doom to stop loading. Fixes: 03724af26 radv/ac: Implement Float64 load/store var. Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/amd/common/ac_nir_to_llvm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 728294cc46..ddec74fa1a 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -2351,9 +2351,11 @@ visit_store_var(struct nir_to_llvm_context *ctx,
if (indir_index)
index = LLVMBuildAdd(ctx->builder, index, indir_index, "");
+
+ value = llvm_extract_elem(ctx, src, chan);
derived_ptr = LLVMBuildGEP(ctx->builder, ptr, &index, 1, "");
LLVMBuildStore(ctx->builder,
- to_integer(ctx, src), derived_ptr);
+ to_integer(ctx, value), derived_ptr);
}
break;
}