vk: Rework anv_batch and use chaining batch buffers
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 27 May 2015 18:42:55 +0000 (11:42 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 27 May 2015 18:48:28 +0000 (11:48 -0700)
commitda8f1482036d35e56250173d479f74b6514d27c7
tree9dba065896b29ffb90093ccf3ab366f96c603880
parent59def43fc8bb8c980748004333a9b3d6a00f734b
vk: Rework anv_batch and use chaining batch buffers

This mega-commit primarily does two things.  First, is to turn anv_batch
into a better abstraction of a batch.  Instead of actually having a BO, it
now has a few pointers to some piece of memory that are used to add data to
the "batch".  If it gets to the end, there is a function pointer that it
can call to attempt to grow the batch.

The second change is to start using chained batch buffers.  When the end of
the current batch BO is reached, it automatically creates a new one and
ineserts an MI_BATCH_BUFFER_START command to chain to it.  In this way, our
batch buffers are effectively infinite in length.
src/vulkan/aub.c
src/vulkan/device.c
src/vulkan/pipeline.c
src/vulkan/private.h