[Mesa-dev] [PATCH] radv: fix gathering clip/cull distance masks for GS

Samuel Pitoiset samuel.pitoiset at gmail.com
Wed Jul 17 08:38:40 UTC 2019


On 7/17/19 10:25 AM, Juan A. Suarez Romero wrote:
> On Tue, 2019-07-16 at 08:37 +0200, Samuel Pitoiset wrote:
>> For NGG, the driver relies on the VS outinfo struct.
>>
>> This fixes
>> dEQP-VK.clipping.user_defined.clip_*_vert_tess_geom_*
>>
> Should this be included in 19.1 stable branch?
No, it's GFX10 specific.
>
>
>> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>> ---
>>   src/amd/vulkan/radv_nir_to_llvm.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c
>> index 76d784b3374..b890ce56f16 100644
>> --- a/src/amd/vulkan/radv_nir_to_llvm.c
>> +++ b/src/amd/vulkan/radv_nir_to_llvm.c
>> @@ -2407,6 +2407,11 @@ scan_shader_output_decl(struct radv_shader_context *ctx,
>>   				ctx->shader_info->tes.outinfo.cull_dist_mask = (1 << shader->info.cull_distance_array_size) - 1;
>>   				ctx->shader_info->tes.outinfo.cull_dist_mask <<= shader->info.clip_distance_array_size;
>>   			}
>> +			if (stage == MESA_SHADER_GEOMETRY) {
>> +				ctx->shader_info->vs.outinfo.clip_dist_mask = (1 << shader->info.clip_distance_array_size) - 1;
>> +				ctx->shader_info->vs.outinfo.cull_dist_mask = (1 << shader->info.cull_distance_array_size) - 1;
>> +				ctx->shader_info->vs.outinfo.cull_dist_mask <<= shader->info.clip_distance_array_size;
>> +			}
>>   		}
>>   	}
>>   


More information about the mesa-dev mailing list