mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
vulkan/meta: Use vk_buffer.device_address directly
This saves us jumping through an entrypoing just to fetch a uint64_t. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33897>
This commit is contained in:
parent
b808277d09
commit
c99039e189
1 changed files with 4 additions and 10 deletions
|
|
@ -563,20 +563,14 @@ vk_meta_create_buffer_view(struct vk_command_buffer *cmd,
|
|||
}
|
||||
|
||||
VkDeviceAddress
|
||||
vk_meta_buffer_address(struct vk_device *device, VkBuffer buffer,
|
||||
vk_meta_buffer_address(struct vk_device *device, VkBuffer _buffer,
|
||||
uint64_t offset, uint64_t range)
|
||||
{
|
||||
const VkBufferDeviceAddressInfo info = {
|
||||
.sType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
|
||||
.buffer = buffer,
|
||||
};
|
||||
VkDeviceAddress base = device->dispatch_table.GetBufferDeviceAddress(
|
||||
vk_device_to_handle(device), &info);
|
||||
VK_FROM_HANDLE(vk_buffer, buffer, _buffer);
|
||||
|
||||
/* Only called for the assert()s in vk_buffer_range(), we don't care about
|
||||
* the result.
|
||||
*/
|
||||
vk_buffer_range(vk_buffer_from_handle(buffer), offset, range);
|
||||
|
||||
return base + offset;
|
||||
vk_buffer_range(buffer, offset, range);
|
||||
return vk_buffer_address(buffer, offset);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue