[Mesa-dev] [PATCH 4/4] radeonsi: don't set the last parameter component of llvm.AMDGPU.cube
Nicolai Hähnle
nhaehnle at gmail.com
Tue Aug 2 13:46:36 UTC 2016
The series is
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
On 31.07.2016 22:34, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> LLVM doesn't use it.
> ---
> src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
> index e7354de..d75311e 100644
> --- a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
> +++ b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
> @@ -902,7 +902,7 @@ static void kil_emit(const struct lp_build_tgsi_action *action,
> }
>
> static LLVMValueRef build_cube_intrinsic(struct gallivm_state *gallivm,
> - LLVMValueRef in[4])
> + LLVMValueRef in[3])
> {
> if (HAVE_LLVM >= 0x0309) {
> LLVMTypeRef f32 = LLVMTypeOf(in[0]);
> @@ -919,7 +919,13 @@ static LLVMValueRef build_cube_intrinsic(struct gallivm_state *gallivm,
>
> return lp_build_gather_values(gallivm, out, 4);
> } else {
> - LLVMValueRef vec = lp_build_gather_values(gallivm, in, 4);
> + LLVMValueRef c[4] = {
> + in[0],
> + in[1],
> + in[2],
> + LLVMGetUndef(LLVMTypeOf(in[0]))
> + };
> + LLVMValueRef vec = lp_build_gather_values(gallivm, c, 4);
>
> return lp_build_intrinsic(gallivm->builder, "llvm.AMDGPU.cube",
> LLVMTypeOf(vec), &vec, 1,
>
More information about the mesa-dev
mailing list