[Mesa-dev] [PATCH 13/18] anv/pass: Store subpass attachment reference list
Nanley Chery
nanleychery at gmail.com
Tue Feb 28 16:48:47 UTC 2017
On Mon, Feb 27, 2017 at 09:22:13PM -0800, Jason Ekstrand wrote:
> On Feb 27, 2017 5:21 PM, "Nanley Chery" <nanleychery at gmail.com> wrote:
>
> We'll loop through this array when performing automatic layout
> transitions.
>
> Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
> ---
> src/intel/vulkan/anv_pass.c | 6 +++++-
> src/intel/vulkan/anv_private.h | 7 +++++++
> 2 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/src/intel/vulkan/anv_pass.c b/src/intel/vulkan/anv_pass.c
> index 5bd205d2f0..9d7fa7f83a 100644
> --- a/src/intel/vulkan/anv_pass.c
> +++ b/src/intel/vulkan/anv_pass.c
> @@ -86,9 +86,11 @@ VkResult anv_CreateRenderPass(
> const VkSubpassDescription *desc = &pCreateInfo->pSubpasses[i];
>
> subpass_attachment_count +=
> + pass->subpasses[i].attachment_count =
> desc->inputAttachmentCount +
> desc->colorAttachmentCount +
> - (desc->pResolveAttachments ? desc->colorAttachmentCount : 0);
> + (desc->pResolveAttachments ? desc->colorAttachmentCount : 0) +
> + (desc->pDepthStencilAttachment != NULL);
> }
>
> pass->subpass_attachments =
> @@ -108,6 +110,7 @@ VkResult anv_CreateRenderPass(
>
> subpass->input_count = desc->inputAttachmentCount;
> subpass->color_count = desc->colorAttachmentCount;
> + subpass->attachments = p;
>
> if (desc->inputAttachmentCount > 0) {
> subpass->input_attachments = p;
> @@ -169,6 +172,7 @@ VkResult anv_CreateRenderPass(
>
> if (desc->pDepthStencilAttachment) {
> uint32_t a = desc->pDepthStencilAttachment->attachment;
> + *p++ =
>
>
> Something looks funny about this line. I could easily believe its correct
> but it should probably be indented differently or something.
>
I could indent the line below it, or place it on the same line if you'd
like. I originally wanted to keep the patch diff small.
-Nanley
> subpass->depth_stencil_attachment = *desc->
> pDepthStencilAttachment;
> if (a != VK_ATTACHMENT_UNUSED) {
> pass->attachments[a].usage |=
> diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
> index 6e274a5a3a..7fba4e92b8 100644
> --- a/src/intel/vulkan/anv_private.h
> +++ b/src/intel/vulkan/anv_private.h
> @@ -1825,6 +1825,13 @@ struct anv_framebuffer {
> };
>
> struct anv_subpass {
> + uint32_t attachment_count;
> +
> + /**
> + * A pointer to all attachment references used in this subpass.
> + * Only valid if ::attachment_count > 0.
> + */
> + VkAttachmentReference * attachments;
> uint32_t input_count;
> VkAttachmentReference * input_attachments;
> uint32_t color_count;
> --
> 2.11.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list