diff options
author | Dave Airlie <[email protected]> | 2018-02-19 06:19:07 +0000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2018-02-21 00:01:23 +0000 |
commit | 77fd1b9187a3aec665257ced5e58fae6fc89290f (patch) | |
tree | 6a3fbf2cfb878505fde0a48da5a6411b89792722 /src/amd/common | |
parent | 0e6f0d400b9078262844de6664f5f83f6566b567 (diff) |
ac/radv: cleanup some tcs output values access
Just consolidates some code to make it easier to change.
Reviewed-by: Samuel Pitoiset <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/common')
-rw-r--r-- | src/amd/common/ac_nir_to_llvm.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index 88b1abd2ae3..ec4dd098ed1 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -383,6 +383,12 @@ get_tcs_out_patch_stride(struct radv_shader_context *ctx) } static LLVMValueRef +get_tcs_out_vertex_stride(struct radv_shader_context *ctx) +{ + return unpack_param(&ctx->ac, ctx->tcs_out_layout, 13, 8); +} + +static LLVMValueRef get_tcs_out_patch0_offset(struct radv_shader_context *ctx) { return LLVMBuildMul(ctx->ac.builder, @@ -2899,7 +2905,7 @@ load_tcs_varyings(struct ac_shader_abi *abi, dw_addr = get_tcs_in_current_patch_offset(ctx); } else { if (!is_patch) { - stride = unpack_param(&ctx->ac, ctx->tcs_out_layout, 13, 8); + stride = get_tcs_out_vertex_stride(ctx); dw_addr = get_tcs_out_current_patch_offset(ctx); } else { dw_addr = get_tcs_out_current_patch_data_offset(ctx); @@ -2955,7 +2961,7 @@ store_tcs_output(struct ac_shader_abi *abi, } if (!is_patch) { - stride = unpack_param(&ctx->ac, ctx->tcs_out_layout, 13, 8); + stride = get_tcs_out_vertex_stride(ctx); dw_addr = get_tcs_out_current_patch_offset(ctx); } else { dw_addr = get_tcs_out_current_patch_data_offset(ctx); |