Tested-by: Alex Smith <asm...@feralinteractive.com>

This fixes a regression seen after 41c36c45 ("amd/common: use
ac_build_buffer_load() for emitting UBO loads").

On 24 January 2018 at 22:26, Samuel Pitoiset <samuel.pitoi...@gmail.com>
wrote:

> UBOs are constants buffers.
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
> ---
>  src/amd/common/ac_nir_to_llvm.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_
> llvm.c
> index 1a52367602..07089349e2 100644
> --- a/src/amd/common/ac_nir_to_llvm.c
> +++ b/src/amd/common/ac_nir_to_llvm.c
> @@ -4568,8 +4568,14 @@ static LLVMValueRef radv_load_ssbo(struct
> ac_shader_abi *abi,
>  static LLVMValueRef radv_load_ubo(struct ac_shader_abi *abi, LLVMValueRef
> buffer_ptr)
>  {
>         struct nir_to_llvm_context *ctx = nir_to_llvm_context_from_abi(
> abi);
> +       LLVMValueRef result;
>
> -       return LLVMBuildLoad(ctx->builder, buffer_ptr, "");
> +       LLVMSetMetadata(buffer_ptr, ctx->ac.uniform_md_kind,
> ctx->ac.empty_md);
> +
> +       result = LLVMBuildLoad(ctx->builder, buffer_ptr, "");
> +       LLVMSetMetadata(result, ctx->ac.invariant_load_md_kind,
> ctx->ac.empty_md);
> +
> +       return result;
>  }
>
>  static LLVMValueRef radv_get_sampler_desc(struct ac_shader_abi *abi,
> --
> 2.16.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to