[Mesa-dev] [PATCH 2/9] ac: rename LLVM <= 7 helpers for readability

Samuel Pitoiset samuel.pitoiset at gmail.com
Tue Jun 4 06:16:52 UTC 2019


Patches 1-2:

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

On 6/4/19 2:02 AM, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> ---
>   src/amd/common/ac_llvm_build.c | 74 +++++++++++++++++-----------------
>   1 file changed, 37 insertions(+), 37 deletions(-)
>
> diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
> index 79058f53b4e..2a1a133c392 100644
> --- a/src/amd/common/ac_llvm_build.c
> +++ b/src/amd/common/ac_llvm_build.c
> @@ -1100,30 +1100,30 @@ LLVMValueRef ac_build_load_to_sgpr(struct ac_llvm_context *ctx,
>   }
>   
>   /* See ac_build_load_custom() documentation. */
>   LLVMValueRef ac_build_load_to_sgpr_uint_wraparound(struct ac_llvm_context *ctx,
>   				   LLVMValueRef base_ptr, LLVMValueRef index)
>   {
>   	return ac_build_load_custom(ctx, base_ptr, index, true, true, false);
>   }
>   
>   static void
> -ac_build_buffer_store_common(struct ac_llvm_context *ctx,
> -			     LLVMValueRef rsrc,
> -			     LLVMValueRef data,
> -			     LLVMValueRef vindex,
> -			     LLVMValueRef voffset,
> -			     unsigned num_channels,
> -			     bool glc,
> -			     bool slc,
> -			     bool writeonly_memory,
> -			     bool use_format)
> +ac_build_llvm7_buffer_store_common(struct ac_llvm_context *ctx,
> +				   LLVMValueRef rsrc,
> +				   LLVMValueRef data,
> +				   LLVMValueRef vindex,
> +				   LLVMValueRef voffset,
> +				   unsigned num_channels,
> +				   bool glc,
> +				   bool slc,
> +				   bool writeonly_memory,
> +				   bool use_format)
>   {
>   	LLVMValueRef args[] = {
>   		data,
>   		LLVMBuildBitCast(ctx->builder, rsrc, ctx->v4i32, ""),
>   		vindex ? vindex : ctx->i32_0,
>   		voffset,
>   		LLVMConstInt(ctx->i1, glc, 0),
>   		LLVMConstInt(ctx->i1, slc, 0)
>   	};
>   	unsigned func = CLAMP(num_channels, 1, 3) - 1;
> @@ -1195,23 +1195,23 @@ ac_build_buffer_store_format(struct ac_llvm_context *ctx,
>   			     unsigned num_channels,
>   			     bool glc,
>   			     bool writeonly_memory)
>   {
>   	if (HAVE_LLVM >= 0x800) {
>   		ac_build_llvm8_buffer_store_common(ctx, rsrc, data, vindex,
>   						   voffset, NULL, num_channels,
>   						   ctx->f32, glc, false,
>   						   writeonly_memory, true, true);
>   	} else {
> -		ac_build_buffer_store_common(ctx, rsrc, data, vindex, voffset,
> -					     num_channels, glc, false,
> -					     writeonly_memory, true);
> +		ac_build_llvm7_buffer_store_common(ctx, rsrc, data, vindex, voffset,
> +						   num_channels, glc, false,
> +						   writeonly_memory, true);
>   	}
>   }
>   
>   /* TBUFFER_STORE_FORMAT_{X,XY,XYZ,XYZW} <- the suffix is selected by num_channels=1..4.
>    * The type of vdata must be one of i32 (num_channels=1), v2i32 (num_channels=2),
>    * or v4i32 (num_channels=3,4).
>    */
>   void
>   ac_build_buffer_store_dword(struct ac_llvm_context *ctx,
>   			    LLVMValueRef rsrc,
> @@ -1264,54 +1264,54 @@ ac_build_buffer_store_dword(struct ac_llvm_context *ctx,
>   							   voffset, offset,
>   							   num_channels,
>   							   ctx->f32,
>   							   glc, slc,
>   							   writeonly_memory,
>   							   false, false);
>   		} else {
>   			if (voffset)
>   				offset = LLVMBuildAdd(ctx->builder, offset, voffset, "");
>   
> -			ac_build_buffer_store_common(ctx, rsrc,
> -						     ac_to_float(ctx, vdata),
> -						     ctx->i32_0, offset,
> -						     num_channels, glc, slc,
> -						     writeonly_memory, false);
> +			ac_build_llvm7_buffer_store_common(ctx, rsrc,
> +							   ac_to_float(ctx, vdata),
> +							   ctx->i32_0, offset,
> +							   num_channels, glc, slc,
> +							   writeonly_memory, false);
>   		}
>   		return;
>   	}
>   
>   	static const unsigned dfmts[] = {
>   		V_008F0C_BUF_DATA_FORMAT_32,
>   		V_008F0C_BUF_DATA_FORMAT_32_32,
>   		V_008F0C_BUF_DATA_FORMAT_32_32_32,
>   		V_008F0C_BUF_DATA_FORMAT_32_32_32_32
>   	};
>   	unsigned dfmt = dfmts[num_channels - 1];
>   	unsigned nfmt = V_008F0C_BUF_NUM_FORMAT_UINT;
>   	LLVMValueRef immoffset = LLVMConstInt(ctx->i32, inst_offset, 0);
>   
>   	ac_build_raw_tbuffer_store(ctx, rsrc, vdata, voffset, soffset,
>   			           immoffset, num_channels, dfmt, nfmt, glc,
>   				   slc, writeonly_memory);
>   }
>   
>   static LLVMValueRef
> -ac_build_buffer_load_common(struct ac_llvm_context *ctx,
> -			    LLVMValueRef rsrc,
> -			    LLVMValueRef vindex,
> -			    LLVMValueRef voffset,
> -			    unsigned num_channels,
> -			    bool glc,
> -			    bool slc,
> -			    bool can_speculate,
> -			    bool use_format)
> +ac_build_llvm7_buffer_load_common(struct ac_llvm_context *ctx,
> +				  LLVMValueRef rsrc,
> +				  LLVMValueRef vindex,
> +				  LLVMValueRef voffset,
> +				  unsigned num_channels,
> +				  bool glc,
> +				  bool slc,
> +				  bool can_speculate,
> +				  bool use_format)
>   {
>   	LLVMValueRef args[] = {
>   		LLVMBuildBitCast(ctx->builder, rsrc, ctx->v4i32, ""),
>   		vindex ? vindex : ctx->i32_0,
>   		voffset,
>   		LLVMConstInt(ctx->i1, glc, 0),
>   		LLVMConstInt(ctx->i1, slc, 0)
>   	};
>   	unsigned func = CLAMP(num_channels, 1, 3) - 1;
>   
> @@ -1427,42 +1427,42 @@ ac_build_buffer_load(struct ac_llvm_context *ctx,
>   
>   	if (HAVE_LLVM >= 0x0800) {
>   		return ac_build_llvm8_buffer_load_common(ctx, rsrc, vindex,
>   							 offset, ctx->i32_0,
>   							 num_channels, ctx->f32,
>   							 glc, slc,
>   							 can_speculate, false,
>   							 false);
>   	}
>   
> -	return ac_build_buffer_load_common(ctx, rsrc, vindex, offset,
> -					   num_channels, glc, slc,
> -					   can_speculate, false);
> +	return ac_build_llvm7_buffer_load_common(ctx, rsrc, vindex, offset,
> +						 num_channels, glc, slc,
> +						 can_speculate, false);
>   }
>   
>   LLVMValueRef ac_build_buffer_load_format(struct ac_llvm_context *ctx,
>   					 LLVMValueRef rsrc,
>   					 LLVMValueRef vindex,
>   					 LLVMValueRef voffset,
>   					 unsigned num_channels,
>   					 bool glc,
>   					 bool can_speculate)
>   {
>   	if (HAVE_LLVM >= 0x800) {
>   		return ac_build_llvm8_buffer_load_common(ctx, rsrc, vindex, voffset, ctx->i32_0,
>   							 num_channels, ctx->f32,
>   							 glc, false,
>   							 can_speculate, true, true);
>   	}
> -	return ac_build_buffer_load_common(ctx, rsrc, vindex, voffset,
> -					   num_channels, glc, false,
> -					   can_speculate, true);
> +	return ac_build_llvm7_buffer_load_common(ctx, rsrc, vindex, voffset,
> +						 num_channels, glc, false,
> +						 can_speculate, true);
>   }
>   
>   LLVMValueRef ac_build_buffer_load_format_gfx9_safe(struct ac_llvm_context *ctx,
>                                                     LLVMValueRef rsrc,
>                                                     LLVMValueRef vindex,
>                                                     LLVMValueRef voffset,
>                                                     unsigned num_channels,
>                                                     bool glc,
>                                                     bool can_speculate)
>   {
> @@ -1477,23 +1477,23 @@ LLVMValueRef ac_build_buffer_load_format_gfx9_safe(struct ac_llvm_context *ctx,
>   	LLVMValueRef stride = LLVMBuildExtractElement(ctx->builder, rsrc, ctx->i32_1, "");
>   	stride = LLVMBuildLShr(ctx->builder, stride, LLVMConstInt(ctx->i32, 16, 0), "");
>   
>   	LLVMValueRef new_elem_count = LLVMBuildSelect(ctx->builder,
>   	                                              LLVMBuildICmp(ctx->builder, LLVMIntUGT, elem_count, stride, ""),
>   	                                              elem_count, stride, "");
>   
>   	LLVMValueRef new_rsrc = LLVMBuildInsertElement(ctx->builder, rsrc, new_elem_count,
>   	                                               LLVMConstInt(ctx->i32, 2, 0), "");
>   
> -	return ac_build_buffer_load_common(ctx, new_rsrc, vindex, voffset,
> -	                                   num_channels, glc, false,
> -	                                   can_speculate, true);
> +	return ac_build_llvm7_buffer_load_common(ctx, new_rsrc, vindex, voffset,
> +						 num_channels, glc, false,
> +						 can_speculate, true);
>   }
>   
>   static LLVMValueRef
>   ac_build_llvm8_tbuffer_load(struct ac_llvm_context *ctx,
>   			    LLVMValueRef rsrc,
>   			    LLVMValueRef vindex,
>   			    LLVMValueRef voffset,
>   			    LLVMValueRef soffset,
>   			    unsigned num_channels,
>   			    unsigned dfmt,
> @@ -1804,21 +1804,21 @@ ac_build_opencoded_load_format(struct ac_llvm_context *ctx,
>   		if (HAVE_LLVM >= 0x0800) {
>   			LLVMTypeRef channel_type = load_log_size == 0 ? ctx->i8 :
>   						   load_log_size == 1 ? ctx->i16 : ctx->i32;
>   			unsigned num_channels = 1 << (MAX2(load_log_size, 2) - 2);
>   			loads[i] = ac_build_llvm8_buffer_load_common(
>   					ctx, rsrc, vindex, voffset, tmp,
>   					num_channels, channel_type, glc, slc,
>   					can_speculate, false, true);
>   		} else {
>   			tmp = LLVMBuildAdd(ctx->builder, voffset, tmp, "");
> -			loads[i] = ac_build_buffer_load_common(
> +			loads[i] = ac_build_llvm7_buffer_load_common(
>   					ctx, rsrc, vindex, tmp,
>   					1 << (load_log_size - 2), glc, slc, can_speculate, false);
>   		}
>   		if (load_log_size >= 2)
>   			loads[i] = ac_to_integer(ctx, loads[i]);
>   	}
>   
>   	if (log_recombine > 0) {
>   		/* Recombine bytes if necessary (GFX6 only) */
>   		LLVMTypeRef dst_type = log_recombine == 2 ? ctx->i32 : ctx->i16;


More information about the mesa-dev mailing list