early-access version 2516

This commit is contained in:
pineappleEA 2022-02-27 11:40:21 +01:00
parent b746cd6ca4
commit e13f73efb6
2 changed files with 5 additions and 5 deletions

View File

@ -1,7 +1,7 @@
yuzu emulator early access yuzu emulator early access
============= =============
This is the source code for early-access 2515. This is the source code for early-access 2516.
## Legal Notice ## Legal Notice

View File

@ -1119,10 +1119,10 @@ void BufferCache<P>::BindHostGraphicsStorageBuffers(size_t stage) {
const Binding& binding = storage_buffers[stage][index]; const Binding& binding = storage_buffers[stage][index];
Buffer& buffer = slot_buffers[binding.buffer_id]; Buffer& buffer = slot_buffers[binding.buffer_id];
TouchBuffer(buffer, binding.buffer_id); TouchBuffer(buffer, binding.buffer_id);
const u32 offset = buffer.Offset(binding.cpu_addr); const u32 size = binding.size;
const u32 size = static_cast<u32>(buffer.SizeBytes()) - offset;
SynchronizeBuffer(buffer, binding.cpu_addr, size); SynchronizeBuffer(buffer, binding.cpu_addr, size);
const u32 offset = buffer.Offset(binding.cpu_addr);
const bool is_written = ((written_storage_buffers[stage] >> index) & 1) != 0; const bool is_written = ((written_storage_buffers[stage] >> index) & 1) != 0;
if constexpr (NEEDS_BIND_STORAGE_INDEX) { if constexpr (NEEDS_BIND_STORAGE_INDEX) {
runtime.BindStorageBuffer(stage, binding_index, buffer, offset, size, is_written); runtime.BindStorageBuffer(stage, binding_index, buffer, offset, size, is_written);
@ -1204,10 +1204,10 @@ void BufferCache<P>::BindHostComputeStorageBuffers() {
const Binding& binding = compute_storage_buffers[index]; const Binding& binding = compute_storage_buffers[index];
Buffer& buffer = slot_buffers[binding.buffer_id]; Buffer& buffer = slot_buffers[binding.buffer_id];
TouchBuffer(buffer, binding.buffer_id); TouchBuffer(buffer, binding.buffer_id);
const u32 offset = buffer.Offset(binding.cpu_addr); const u32 size = binding.size;
const u32 size = static_cast<u32>(buffer.SizeBytes()) - offset;
SynchronizeBuffer(buffer, binding.cpu_addr, size); SynchronizeBuffer(buffer, binding.cpu_addr, size);
const u32 offset = buffer.Offset(binding.cpu_addr);
const bool is_written = ((written_compute_storage_buffers >> index) & 1) != 0; const bool is_written = ((written_compute_storage_buffers >> index) & 1) != 0;
if constexpr (NEEDS_BIND_STORAGE_INDEX) { if constexpr (NEEDS_BIND_STORAGE_INDEX) {
runtime.BindComputeStorageBuffer(binding_index, buffer, offset, size, is_written); runtime.BindComputeStorageBuffer(binding_index, buffer, offset, size, is_written);