[Mesa-dev] [PATCH 2/2] ac: convert nir_op_f2f32 src to a float

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri Feb 9 13:01:35 UTC 2018


Series is:

Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

On 02/09/2018 07:20 AM, Timothy Arceri wrote:
> Fixes the following piglit test:
> 
> ./bin/arb_vertex_attrib_64bit-check-explicit-location -auto -fbo
> 
> Where we would end up with the nir such as:
> 
> 	vec1 64 ssa_11 = pack_64_2x32_split ssa_9, ssa_10
> 	vec1 32 ssa_12 = f2f32 ssa_2
> 
> And our pack_64_2x32_split nir to llvm code always produces
> a 64bit integer as output.
> ---
>   src/amd/common/ac_nir_to_llvm.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
> index 5da82cfd05..a6f0673735 100644
> --- a/src/amd/common/ac_nir_to_llvm.c
> +++ b/src/amd/common/ac_nir_to_llvm.c
> @@ -1948,6 +1948,7 @@ static void visit_alu(struct ac_nir_context *ctx, const nir_alu_instr *instr)
>   		result = LLVMBuildFPExt(ctx->ac.builder, src[0], ac_to_float_type(&ctx->ac, def_type), "");
>   		break;
>   	case nir_op_f2f32:
> +		src[0] = ac_to_float(&ctx->ac, src[0]);
>   		result = LLVMBuildFPTrunc(ctx->ac.builder, src[0], ac_to_float_type(&ctx->ac, def_type), "");
>   		break;
>   	case nir_op_u2u32:
> 


More information about the mesa-dev mailing list