nir,ac/nir/ngg,radv: split shader_query_enabled_amd
authorQiang Yu <yuq825@gmail.com>
Mon, 10 Oct 2022 03:08:40 +0000 (11:08 +0800)
committerMarge Bot <emma+marge@anholt.net>
Tue, 25 Oct 2022 02:42:52 +0000 (02:42 +0000)
commit83643e4dc82d86b15d78bb764721fb731b45c85b
tree8dc58759d32abc9b97738827b0968d6d494f1e02
parent1dcbf2575734e1ccdcb6bc186d646376e4ad9a0f
nir,ac/nir/ngg,radv: split shader_query_enabled_amd

For used by different counter.

Vulkan:
1. VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT,
   sum generated primitives of all 4 streams when GS.
2. VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT, count generated
   primitives for all 4 streams when VS/TES/GS.
3. VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT, count generated
   and streamout primitives for all 4 streams when VS/TES/GS.

OpenGL:
1. GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB, sum generated
   primitives for all 4 streams when GS.
2. GL_PRIMITIVES_GENERATED, count generated primitives for all 4
   streams when VS/TES/GS.
3. GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, count streamout
   primitives for all 4 streams when VS/TES/GS.

pipeline_stat_query_enabled_amd is for Vulkan 1 and OpenGL 1.
xfb_query_enabled_amd is for Vulkan 2/3 and OpenGL 2/3.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19015>
src/amd/common/ac_nir_lower_ngg.c
src/amd/vulkan/radv_nir_lower_abi.c
src/compiler/nir/nir_divergence_analysis.c
src/compiler/nir/nir_intrinsics.py
src/compiler/nir/nir_opt_preamble.c