Lines Matching refs:pass
83 const struct pvr_render_pass *pass,
86 struct pvr_render_subpass *subpass = &pass->subpasses[0];
101 * may be read from fragments with an opaque pass type, the load ops must be
113 color_attachment_mask |= (1 << pass->attachments[color_idx].index);
125 struct pvr_render_pass *pass,
133 (uint32_t)pvr_is_subpass_initops_flush_needed(pass, hw_render);
141 assert(subpass_idx == pass->subpass_count);
316 struct pvr_render_pass *pass;
322 vk_multialloc_add(&ma, &pass, __typeof__(*pass), 1);
358 vk_object_base_init(&device->vk, &pass->base, VK_OBJECT_TYPE_RENDER_PASS);
359 pass->attachment_count = pCreateInfo->attachmentCount;
360 pass->attachments = attachments;
361 pass->subpass_count = pCreateInfo->subpassCount;
362 pass->subpasses = subpasses;
363 pass->max_sample_count = 1;
366 for (uint32_t i = 0; i < pass->attachment_count; i++) {
368 struct pvr_render_pass_attachment *attachment = &pass->attachments[i];
388 if (attachment->sample_count > pass->max_sample_count)
389 pass->max_sample_count = attachment->sample_count;
399 pass->subpasses[dep->dstSubpass].dep_count++;
407 for (uint32_t i = 0; i < pass->subpass_count; i++) {
409 struct pvr_render_subpass *subpass = &pass->subpasses[i];
430 subpass->sample_count = pass->attachments[index].sample_count;
438 subpass->sample_count = pass->attachments[index].sample_count;
489 struct pvr_render_subpass *subpass = &pass->subpasses[dep->dstSubpass];
499 pass->max_tilebuffer_count =
502 pass->hw_setup = pvr_create_renderpass_hwsetup(device, pass, false);
503 if (!pass->hw_setup) {
508 pvr_init_subpass_userpass_spawn(pass->hw_setup, pass, pass->subpasses);
510 for (uint32_t i = 0; i < pass->hw_setup->render_count; i++) {
512 &pass->hw_setup->renders[i];
533 *pRenderPass = pvr_render_pass_to_handle(pass);
538 for (uint32_t i = 0; i < pass->hw_setup->render_count; i++) {
540 &pass->hw_setup->renders[i];
546 pvr_destroy_renderpass_hwsetup(device, pass->hw_setup);
549 vk_object_base_finish(&pass->base);
550 vk_free2(&device->vk.alloc, pAllocator, pass);
560 PVR_FROM_HANDLE(pvr_render_pass, pass, _pass);
562 if (!pass)
565 for (uint32_t i = 0; i < pass->hw_setup->render_count; i++) {
567 &pass->hw_setup->renders[i];
572 pvr_destroy_renderpass_hwsetup(device, pass->hw_setup);
573 vk_object_base_finish(&pass->base);
574 vk_free2(&device->vk.alloc, pAllocator, pass);
584 /* Granularity does not depend on any settings in the render pass, so return