diff options
author | Dave Airlie <[email protected]> | 2017-09-11 07:14:05 +0100 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2017-09-11 23:55:15 +0100 |
commit | ded1dbfd9616945ea235d186bc877b667d853d1e (patch) | |
tree | c53c1bac75336072d2809eef4931fe19165f8f49 /src/amd/vulkan/radv_private.h | |
parent | d2490eb2d1c73054c0022f02d425d5f9c6d56c56 (diff) |
radv: calculate non-draw related ia_multi_vgt_param bits in pipeline
This moves a bunch of non-draw dependent calcs into the pipeline code,
to reduce CPU overheads in the draw path.
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_private.h')
-rw-r--r-- | src/amd/vulkan/radv_private.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h index c647efdcbcc..af3024f30ed 100644 --- a/src/amd/vulkan/radv_private.h +++ b/src/amd/vulkan/radv_private.h @@ -1044,6 +1044,8 @@ struct radv_vertex_elements_info { uint32_t count; }; +#define SI_GS_PER_ES 128 + struct radv_pipeline { struct radv_device * device; uint32_t dynamic_state_mask; @@ -1075,6 +1077,7 @@ struct radv_pipeline { uint32_t vgt_gs_mode; bool vgt_primitiveid_en; bool prim_restart_enable; + bool partial_es_wave; uint8_t primgroup_size; unsigned esgs_ring_size; unsigned gsvs_ring_size; @@ -1083,6 +1086,9 @@ struct radv_pipeline { uint32_t pa_cl_vs_out_cntl; uint32_t vgt_shader_stages_en; uint32_t vtx_base_sgpr; + bool wd_switch_on_eop; + bool ia_switch_on_eoi; + bool partial_vs_wave; uint8_t vtx_emit_num; struct radv_prim_vertex_count prim_vertex_count; bool can_use_guardband; |