diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2022-09-29 17:13:51 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2022-09-29 17:13:51 +0300 |
commit | 137e9aa78ba176ae6b00812743b00feaef98fe56 (patch) | |
tree | 3b9b0542cb79e66972da4b2cdd673a6f1704ac0a | |
parent | 0d81c1e6535e0bc957aab043b02911dc01bca7e2 (diff) |
vkd3d: Add breadcrumb for partial discard.placed-alias-debug
Useful mostly for debug so we acknowledge there was a discard command
(except we cannot transition).
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
-rw-r--r-- | libs/vkd3d/breadcrumbs.c | 2 | ||||
-rw-r--r-- | libs/vkd3d/command.c | 4 | ||||
-rw-r--r-- | libs/vkd3d/vkd3d_private.h | 1 |
3 files changed, 7 insertions, 0 deletions
diff --git a/libs/vkd3d/breadcrumbs.c b/libs/vkd3d/breadcrumbs.c index 2917b227..0bf38755 100644 --- a/libs/vkd3d/breadcrumbs.c +++ b/libs/vkd3d/breadcrumbs.c @@ -104,6 +104,8 @@ static const char *vkd3d_breadcrumb_command_type_to_str(enum vkd3d_breadcrumb_co return "clear_dsv"; case VKD3D_BREADCRUMB_COMMAND_DISCARD: return "discard"; + case VKD3D_BREADCRUMB_COMMAND_DISCARD_PARTIAL: + return "discard_partial"; default: return "?"; diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index 50148387..9072a524 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -9579,7 +9579,11 @@ static void STDMETHODCALLTYPE d3d12_command_list_DiscardResource(d3d12_command_l } if (!full_discard) + { + VKD3D_BREADCRUMB_COOKIE(texture->res.cookie); + VKD3D_BREADCRUMB_COMMAND_STATE(DISCARD_PARTIAL); return; + } /* Resource tracking. If we do a full discard, there is no need to do initial layout transitions. * Partial discards on first resource use needs to be handles however, diff --git a/libs/vkd3d/vkd3d_private.h b/libs/vkd3d/vkd3d_private.h index 77823f2d..28337fec 100644 --- a/libs/vkd3d/vkd3d_private.h +++ b/libs/vkd3d/vkd3d_private.h @@ -2768,6 +2768,7 @@ enum vkd3d_breadcrumb_command_type VKD3D_BREADCRUMB_COMMAND_CLEAR_RTV, VKD3D_BREADCRUMB_COMMAND_CLEAR_DSV, VKD3D_BREADCRUMB_COMMAND_DISCARD, + VKD3D_BREADCRUMB_COMMAND_DISCARD_PARTIAL, }; #ifdef VKD3D_ENABLE_BREADCRUMBS |