radv: use common entrypoints for VK_KHR_copy_commands2

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9600>
This commit is contained in:
Samuel Pitoiset 2021-03-15 15:10:27 +01:00 committed by Marge Bot
parent f29de817eb
commit fb648634b0
5 changed files with 0 additions and 273 deletions

View File

@ -531,17 +531,6 @@ void sqtt_CmdDispatchIndirect(
EVENT_MARKER(DispatchIndirect, commandBuffer, buffer, offset);
}
void sqtt_CmdCopyBuffer(
VkCommandBuffer commandBuffer,
VkBuffer srcBuffer,
VkBuffer destBuffer,
uint32_t regionCount,
const VkBufferCopy* pRegions)
{
EVENT_MARKER(CopyBuffer, commandBuffer, srcBuffer, destBuffer,
regionCount, pRegions);
}
void sqtt_CmdCopyBuffer2KHR(
VkCommandBuffer commandBuffer,
const VkCopyBufferInfo2KHR* pCopyBufferInfo)
@ -572,19 +561,6 @@ void sqtt_CmdUpdateBuffer(
dataSize, pData);
}
void sqtt_CmdCopyImage(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkImage destImage,
VkImageLayout destImageLayout,
uint32_t regionCount,
const VkImageCopy* pRegions)
{
EVENT_MARKER(CopyImage, commandBuffer, srcImage, srcImageLayout,
destImage, destImageLayout, regionCount, pRegions);
}
void sqtt_CmdCopyImage2KHR(
VkCommandBuffer commandBuffer,
const VkCopyImageInfo2KHR* pCopyImageInfo)
@ -593,18 +569,6 @@ void sqtt_CmdCopyImage2KHR(
pCopyImageInfo);
}
void sqtt_CmdCopyBufferToImage(
VkCommandBuffer commandBuffer,
VkBuffer srcBuffer,
VkImage destImage,
VkImageLayout destImageLayout,
uint32_t regionCount,
const VkBufferImageCopy* pRegions)
{
EVENT_MARKER(CopyBufferToImage, commandBuffer, srcBuffer, destImage,
destImageLayout, regionCount, pRegions);
}
void sqtt_CmdCopyBufferToImage2KHR(
VkCommandBuffer commandBuffer,
const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo)
@ -613,18 +577,6 @@ void sqtt_CmdCopyBufferToImage2KHR(
commandBuffer, pCopyBufferToImageInfo);
}
void sqtt_CmdCopyImageToBuffer(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkBuffer destBuffer,
uint32_t regionCount,
const VkBufferImageCopy* pRegions)
{
EVENT_MARKER(CopyImageToBuffer, commandBuffer, srcImage, srcImageLayout,
destBuffer, regionCount, pRegions);
}
void sqtt_CmdCopyImageToBuffer2KHR(
VkCommandBuffer commandBuffer,
const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo)
@ -633,20 +585,6 @@ void sqtt_CmdCopyImageToBuffer2KHR(
commandBuffer, pCopyImageToBufferInfo);
}
void sqtt_CmdBlitImage(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkImage destImage,
VkImageLayout destImageLayout,
uint32_t regionCount,
const VkImageBlit* pRegions,
VkFilter filter)
{
EVENT_MARKER(BlitImage, commandBuffer, srcImage, srcImageLayout,
destImage, destImageLayout, regionCount, pRegions, filter);
}
void sqtt_CmdBlitImage2KHR(
VkCommandBuffer commandBuffer,
const VkBlitImageInfo2KHR* pBlitImageInfo)
@ -690,19 +628,6 @@ void sqtt_CmdClearAttachments(
pAttachments, rectCount, pRects);
}
void sqtt_CmdResolveImage(
VkCommandBuffer commandBuffer,
VkImage src_image_h,
VkImageLayout src_image_layout,
VkImage dest_image_h,
VkImageLayout dest_image_layout,
uint32_t region_count,
const VkImageResolve* regions)
{
EVENT_MARKER(ResolveImage, commandBuffer, src_image_h, src_image_layout,
dest_image_h, dest_image_layout, region_count, regions);
}
void sqtt_CmdResolveImage2KHR(
VkCommandBuffer commandBuffer,
const VkResolveImageInfo2KHR* pResolveImageInfo)

View File

@ -659,43 +659,6 @@ blit_image(struct radv_cmd_buffer *cmd_buffer,
&cmd_buffer->pool->alloc);
}
void radv_CmdBlitImage(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkImage dstImage,
VkImageLayout dstImageLayout,
uint32_t regionCount,
const VkImageBlit* pRegions,
VkFilter filter)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
RADV_FROM_HANDLE(radv_image, src_image, srcImage);
RADV_FROM_HANDLE(radv_image, dst_image, dstImage);
for (unsigned r = 0; r < regionCount; r++) {
VkImageBlit2KHR blit = {
.sType = VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR,
.srcSubresource = pRegions[r].srcSubresource,
.srcOffsets = {
pRegions[r].srcOffsets[0],
pRegions[r].srcOffsets[1],
},
.dstSubresource = pRegions[r].dstSubresource,
.dstOffsets = {
pRegions[r].dstOffsets[0],
pRegions[r].dstOffsets[1],
},
};
blit_image(cmd_buffer,
src_image, srcImageLayout,
dst_image, dstImageLayout,
&blit, filter);
}
}
void radv_CmdBlitImage2KHR(
VkCommandBuffer commandBuffer,
const VkBlitImageInfo2KHR* pBlitImageInfo)

View File

@ -466,29 +466,6 @@ copy_buffer(struct radv_cmd_buffer *cmd_buffer,
cmd_buffer->state.predicating = old_predicating;
}
void radv_CmdCopyBuffer(
VkCommandBuffer commandBuffer,
VkBuffer srcBuffer,
VkBuffer destBuffer,
uint32_t regionCount,
const VkBufferCopy* pRegions)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
RADV_FROM_HANDLE(radv_buffer, src_buffer, srcBuffer);
RADV_FROM_HANDLE(radv_buffer, dst_buffer, destBuffer);
for (unsigned r = 0; r < regionCount; r++) {
VkBufferCopy2KHR copy = {
.sType = VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR,
.srcOffset = pRegions[r].srcOffset,
.dstOffset = pRegions[r].dstOffset,
.size = pRegions[r].size,
};
copy_buffer(cmd_buffer, src_buffer, dst_buffer, &copy);
}
}
void radv_CmdCopyBuffer2KHR(
VkCommandBuffer commandBuffer,
const VkCopyBufferInfo2KHR* pCopyBufferInfo)

View File

@ -253,34 +253,6 @@ copy_buffer_to_image(struct radv_cmd_buffer *cmd_buffer,
radv_meta_restore(&saved_state, cmd_buffer);
}
void radv_CmdCopyBufferToImage(
VkCommandBuffer commandBuffer,
VkBuffer srcBuffer,
VkImage dstImage,
VkImageLayout dstImageLayout,
uint32_t regionCount,
const VkBufferImageCopy* pRegions)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
RADV_FROM_HANDLE(radv_image, dst_image, dstImage);
RADV_FROM_HANDLE(radv_buffer, src_buffer, srcBuffer);
for (unsigned r = 0; r < regionCount; r++) {
VkBufferImageCopy2KHR copy = {
.sType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR,
.bufferOffset = pRegions[r].bufferOffset,
.bufferRowLength = pRegions[r].bufferRowLength,
.bufferImageHeight = pRegions[r].bufferImageHeight,
.imageSubresource = pRegions[r].imageSubresource,
.imageOffset = pRegions[r].imageOffset,
.imageExtent = pRegions[r].imageExtent,
};
copy_buffer_to_image(cmd_buffer, src_buffer, dst_image,
dstImageLayout, &copy);
}
}
void radv_CmdCopyBufferToImage2KHR(
VkCommandBuffer commandBuffer,
const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo)
@ -410,34 +382,6 @@ copy_image_to_buffer(struct radv_cmd_buffer *cmd_buffer,
radv_meta_restore(&saved_state, cmd_buffer);
}
void radv_CmdCopyImageToBuffer(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkBuffer destBuffer,
uint32_t regionCount,
const VkBufferImageCopy* pRegions)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
RADV_FROM_HANDLE(radv_image, src_image, srcImage);
RADV_FROM_HANDLE(radv_buffer, dst_buffer, destBuffer);
for (unsigned r = 0; r < regionCount; r++) {
VkBufferImageCopy2KHR copy = {
.sType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR,
.bufferOffset = pRegions[r].bufferOffset,
.bufferRowLength = pRegions[r].bufferRowLength,
.bufferImageHeight = pRegions[r].bufferImageHeight,
.imageSubresource = pRegions[r].imageSubresource,
.imageOffset = pRegions[r].imageOffset,
.imageExtent = pRegions[r].imageExtent,
};
copy_image_to_buffer(cmd_buffer, dst_buffer, src_image,
srcImageLayout, &copy);
}
}
void radv_CmdCopyImageToBuffer2KHR(
VkCommandBuffer commandBuffer,
const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo)
@ -608,36 +552,6 @@ copy_image(struct radv_cmd_buffer *cmd_buffer,
radv_meta_restore(&saved_state, cmd_buffer);
}
void radv_CmdCopyImage(
VkCommandBuffer commandBuffer,
VkImage srcImage,
VkImageLayout srcImageLayout,
VkImage dstImage,
VkImageLayout dstImageLayout,
uint32_t regionCount,
const VkImageCopy* pRegions)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
RADV_FROM_HANDLE(radv_image, src_image, srcImage);
RADV_FROM_HANDLE(radv_image, dst_image, dstImage);
for (unsigned r = 0; r < regionCount; r++) {
VkImageCopy2KHR copy = {
.sType = VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR,
.srcSubresource = pRegions[r].srcSubresource,
.srcOffset = pRegions[r].srcOffset,
.dstSubresource = pRegions[r].dstSubresource,
.dstOffset = pRegions[r].dstOffset,
.extent = pRegions[r].extent,
};
copy_image(cmd_buffer,
src_image, srcImageLayout,
dst_image, dstImageLayout,
&copy);
}
}
void radv_CmdCopyImage2KHR(
VkCommandBuffer commandBuffer,
const VkCopyImageInfo2KHR* pCopyImageInfo)

View File

@ -668,58 +668,6 @@ resolve_image(struct radv_cmd_buffer *cmd_buffer,
}
}
void radv_CmdResolveImage(
VkCommandBuffer cmd_buffer_h,
VkImage src_image_h,
VkImageLayout src_image_layout,
VkImage dest_image_h,
VkImageLayout dest_image_layout,
uint32_t region_count,
const VkImageResolve* regions)
{
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, cmd_buffer_h);
RADV_FROM_HANDLE(radv_image, src_image, src_image_h);
RADV_FROM_HANDLE(radv_image, dest_image, dest_image_h);
enum radv_resolve_method resolve_method = RESOLVE_HW;
/* we can use the hw resolve only for single full resolves */
if (region_count == 1) {
if (regions[0].srcOffset.x ||
regions[0].srcOffset.y ||
regions[0].srcOffset.z)
resolve_method = RESOLVE_COMPUTE;
if (regions[0].dstOffset.x ||
regions[0].dstOffset.y ||
regions[0].dstOffset.z)
resolve_method = RESOLVE_COMPUTE;
if (regions[0].extent.width != src_image->info.width ||
regions[0].extent.height != src_image->info.height ||
regions[0].extent.depth != src_image->info.depth)
resolve_method = RESOLVE_COMPUTE;
} else
resolve_method = RESOLVE_COMPUTE;
radv_pick_resolve_method_images(cmd_buffer->device, src_image,
src_image->vk_format, dest_image,
dest_image_layout, false, cmd_buffer,
&resolve_method);
for (uint32_t r = 0; r < region_count; r++) {
VkImageResolve2KHR region = {
.sType = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR,
.srcSubresource = regions[r].srcSubresource,
.srcOffset = regions[r].srcOffset,
.dstSubresource = regions[r].dstSubresource,
.dstOffset = regions[r].dstOffset,
.extent = regions[r].extent,
};
resolve_image(cmd_buffer, src_image, src_image_layout,
dest_image, dest_image_layout,
&region, resolve_method);
}
}
void radv_CmdResolveImage2KHR(
VkCommandBuffer commandBuffer,
const VkResolveImageInfo2KHR* pResolveImageInfo)