radv: only copy the dynamic states that changed
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 13 Sep 2017 11:55:58 +0000 (13:55 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Thu, 26 Oct 2017 07:37:05 +0000 (09:37 +0200)
commit06a12f250f9f8d7790b7777240440c1ea525d908
treecabedafe23c26a71d4d1d2b22fa4a04deb621620
parentb1e31c1911cccd19e765f7f43efdcb209b63ec7c
radv: only copy the dynamic states that changed

When binding a new pipeline, we applied all dynamic states
without checking if they really need to be re-emitted. This
doesn't seem to be useful for the meta operations because only
the viewports/scissors are updated.

This should reduce the number of commands added to the IB
when a new graphics pipeline is bound.

Also, rename radv_dynamic_state_copy() to radv_bind_dynamic_state()
and set the dirty flags directly there.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
src/amd/vulkan/radv_cmd_buffer.c