[Mesa-dev] [PATCH] radv: Check for GFX9 for 1D arrays in image_size intrinsic.

Nicolai Hähnle nhaehnle at gmail.com
Mon Sep 18 10:58:16 UTC 2017


On 15.09.2017 21:46, Bas Nieuwenhuizen wrote:
> Only on GFX9 we implement them as 2D images.
> 
> This fixes:
> dEQP-VK.image.image_size.1d_array.readonly_12x34
> dEQP-VK.image.image_size.1d_array.readonly_1x1
> dEQP-VK.image.image_size.1d_array.readonly_32x32
> dEQP-VK.image.image_size.1d_array.readonly_7x1
> dEQP-VK.image.image_size.1d_array.readonly_writeonly_12x34
> dEQP-VK.image.image_size.1d_array.readonly_writeonly_1x1
> dEQP-VK.image.image_size.1d_array.readonly_writeonly_32x32
> dEQP-VK.image.image_size.1d_array.readonly_writeonly_7x1
> dEQP-VK.image.image_size.1d_array.writeonly_12x34
> dEQP-VK.image.image_size.1d_array.writeonly_1x1
> dEQP-VK.image.image_size.1d_array.writeonly_32x32
> dEQP-VK.image.image_size.1d_array.writeonly_7x1
> 
> Fixes: 1bcb953e166 "radv: handle GFX9 1D textures"

Acked-by: Nicolai Hähnle <nicolai.haehnle at amd.com>


> ---
>   src/amd/common/ac_nir_to_llvm.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
> index 1388ebd998b..42398d1230b 100644
> --- a/src/amd/common/ac_nir_to_llvm.c
> +++ b/src/amd/common/ac_nir_to_llvm.c
> @@ -3579,7 +3579,8 @@ static LLVMValueRef visit_image_size(struct ac_nir_context *ctx,
>   		z = LLVMBuildSDiv(ctx->ac.builder, z, six, "");
>   		res = LLVMBuildInsertElement(ctx->ac.builder, res, z, two, "");
>   	}
> -	if (glsl_get_sampler_dim(type) == GLSL_SAMPLER_DIM_1D &&
> +	if (ctx->abi->chip_class >= GFX9 &&
> +	    glsl_get_sampler_dim(type) == GLSL_SAMPLER_DIM_1D &&
>   	    glsl_sampler_type_is_array(type)) {
>   		LLVMValueRef layers = LLVMBuildExtractElement(ctx->ac.builder, res, two, "");
>   		res = LLVMBuildInsertElement(ctx->ac.builder, res, layers,
> 


-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.


More information about the mesa-dev mailing list