From bd5630439e3a2ff0dbe298ee820ddf2e6c4ceda5 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Fri, 11 Oct 2019 13:06:55 +0200 Subject: [PATCH] [dxvk] Inline freeBufferSlice implementation May save a cycle or two in invalidateBuffer. --- src/dxvk/dxvk_buffer.cpp | 7 ------- src/dxvk/dxvk_buffer.h | 17 ++++++++++++++--- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/dxvk/dxvk_buffer.cpp b/src/dxvk/dxvk_buffer.cpp index 33e5e73b..7282894a 100644 --- a/src/dxvk/dxvk_buffer.cpp +++ b/src/dxvk/dxvk_buffer.cpp @@ -181,13 +181,6 @@ namespace dxvk { DxvkBufferTracker::~DxvkBufferTracker() { } - void DxvkBufferTracker::freeBufferSlice( - const Rc& buffer, - const DxvkBufferSliceHandle& slice) { - m_entries.push_back({ buffer, slice }); - } - - void DxvkBufferTracker::reset() { for (const auto& e : m_entries) e.buffer->freeSlice(e.slice); diff --git a/src/dxvk/dxvk_buffer.h b/src/dxvk/dxvk_buffer.h index d5f40792..c180f124 100644 --- a/src/dxvk/dxvk_buffer.h +++ b/src/dxvk/dxvk_buffer.h @@ -645,10 +645,21 @@ namespace dxvk { DxvkBufferTracker(); ~DxvkBufferTracker(); - void freeBufferSlice( - const Rc& buffer, - const DxvkBufferSliceHandle& slice); + /** + * \brief Add buffer slice for tracking + * + * The slice will be returned to the + * buffer on the next call to \c reset. + * \param [in] buffer The parent buffer + * \param [in] slice The buffer slice + */ + void freeBufferSlice(const Rc& buffer, const DxvkBufferSliceHandle& slice) { + m_entries.push_back({ buffer, slice }); + } + /** + * \brief Returns tracked buffer slices + */ void reset(); private: