From 30e0a258e4b4fca546691f92e8da5d7a104c65f8 Mon Sep 17 00:00:00 2001 From: DrChat Date: Thu, 15 Feb 2018 17:05:54 -0600 Subject: [PATCH] [Vulkan] Buffers typically aren't aligned. --- src/xenia/gpu/vulkan/buffer_cache.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/xenia/gpu/vulkan/buffer_cache.cc b/src/xenia/gpu/vulkan/buffer_cache.cc index 5050e7469..72b2f2d39 100644 --- a/src/xenia/gpu/vulkan/buffer_cache.cc +++ b/src/xenia/gpu/vulkan/buffer_cache.cc @@ -297,12 +297,12 @@ std::pair BufferCache::UploadIndexBuffer( // TODO(benvanik): memcpy then use compute shaders to swap? if (format == IndexFormat::kInt16) { // Endian::k8in16, swap half-words. - xe::copy_and_swap_16_aligned(transient_buffer_->host_base() + offset, - source_ptr, source_length / 2); + xe::copy_and_swap_16_unaligned(transient_buffer_->host_base() + offset, + source_ptr, source_length / 2); } else if (format == IndexFormat::kInt32) { // Endian::k8in32, swap words. - xe::copy_and_swap_32_aligned(transient_buffer_->host_base() + offset, - source_ptr, source_length / 4); + xe::copy_and_swap_32_unaligned(transient_buffer_->host_base() + offset, + source_ptr, source_length / 4); } transient_buffer_->Flush(offset, source_length); @@ -348,11 +348,11 @@ std::pair BufferCache::UploadVertexBuffer( // TODO(benvanik): memcpy then use compute shaders to swap? if (endian == Endian::k8in32) { // Endian::k8in32, swap words. - xe::copy_and_swap_32_aligned(transient_buffer_->host_base() + offset, - source_ptr, source_length / 4); + xe::copy_and_swap_32_unaligned(transient_buffer_->host_base() + offset, + source_ptr, source_length / 4); } else if (endian == Endian::k16in32) { - xe::copy_and_swap_16_in_32_aligned(transient_buffer_->host_base() + offset, - source_ptr, source_length / 4); + xe::copy_and_swap_16_in_32_unaligned( + transient_buffer_->host_base() + offset, source_ptr, source_length / 4); } else { assert_always(); }