// *** THIS FILE IS GENERATED - DO NOT EDIT ***
// See helper_file_generator.py for modifications


/***************************************************************************
 *
 * Copyright (c) 2015-2021 The Khronos Group Inc.
 * Copyright (c) 2015-2021 Valve Corporation
 * Copyright (c) 2015-2021 LunarG, Inc.
 * Copyright (c) 2015-2021 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Author: Mark Lobodzinski <mark@lunarg.com>
 * Author: Courtney Goeltzenleuchter <courtneygo@google.com>
 * Author: Tobin Ehlis <tobine@google.com>
 * Author: Chris Forbes <chrisforbes@google.com>
 * Author: John Zulauf<jzulauf@lunarg.com>
 *
 ****************************************************************************/

#include "synchronization_validation_types.h"

// clang-format off

// Unique bit for each  stage/access combination

// Map of the StageAccessIndices from the StageAccess Bit
const layer_data::unordered_map<SyncStageAccessFlags, SyncStageAccessIndex> syncStageAccessIndexByStageAccessBit  = {
    { SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ_BIT, SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ },
    { SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT },
    { SYNC_INDEX_INPUT_INDEX_READ_BIT, SYNC_INDEX_INPUT_INDEX_READ },
    { SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ_BIT, SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ },
    { SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ },
    { SYNC_VERTEX_SHADER_SHADER_STORAGE_READ_BIT, SYNC_VERTEX_SHADER_SHADER_STORAGE_READ },
    { SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_VERTEX_SHADER_UNIFORM_READ_BIT, SYNC_VERTEX_SHADER_UNIFORM_READ },
    { SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ },
    { SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ_BIT, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ },
    { SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ_BIT, SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ },
    { SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ },
    { SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ_BIT, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ },
    { SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ_BIT, SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ },
    { SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ },
    { SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ_BIT, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ },
    { SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_GEOMETRY_SHADER_UNIFORM_READ_BIT, SYNC_GEOMETRY_SHADER_UNIFORM_READ },
    { SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT },
    { SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT },
    { SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_WRITE_EXT },
    { SYNC_FRAGMENT_DENSITY_PROCESS_BIT_EXT_FRAGMENT_DENSITY_MAP_READ_BIT_EXT, SYNC_FRAGMENT_DENSITY_PROCESS_EXT_FRAGMENT_DENSITY_MAP_READ_EXT },
    { SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT, SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ },
    { SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ_BIT, SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ },
    { SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ_BIT, SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ },
    { SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE_BIT, SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE },
    { SYNC_TASK_SHADER_NV_UNIFORM_READ_BIT, SYNC_TASK_SHADER_NV_UNIFORM_READ },
    { SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT, SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ },
    { SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ_BIT, SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ },
    { SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ_BIT, SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ },
    { SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE_BIT, SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE },
    { SYNC_MESH_SHADER_NV_UNIFORM_READ_BIT, SYNC_MESH_SHADER_NV_UNIFORM_READ },
    { SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT, SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ },
    { SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ },
    { SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE },
    { SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ_BIT, SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ },
    { SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ },
    { SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ_BIT, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ },
    { SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_FRAGMENT_SHADER_UNIFORM_READ_BIT, SYNC_FRAGMENT_SHADER_UNIFORM_READ },
    { SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ },
    { SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE },
    { SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_BIT, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ },
    { SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_EXT },
    { SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE_BIT, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE },
    { SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ },
    { SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ_BIT, SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ },
    { SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_COMPUTE_SHADER_UNIFORM_READ_BIT, SYNC_COMPUTE_SHADER_UNIFORM_READ },
    { SYNC_COPY_TRANSFER_READ_BIT, SYNC_COPY_TRANSFER_READ },
    { SYNC_COPY_TRANSFER_WRITE_BIT, SYNC_COPY_TRANSFER_WRITE },
    { SYNC_RESOLVE_TRANSFER_READ_BIT, SYNC_RESOLVE_TRANSFER_READ },
    { SYNC_RESOLVE_TRANSFER_WRITE_BIT, SYNC_RESOLVE_TRANSFER_WRITE },
    { SYNC_BLIT_TRANSFER_READ_BIT, SYNC_BLIT_TRANSFER_READ },
    { SYNC_BLIT_TRANSFER_WRITE_BIT, SYNC_BLIT_TRANSFER_WRITE },
    { SYNC_CLEAR_TRANSFER_WRITE_BIT, SYNC_CLEAR_TRANSFER_WRITE },
    { SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_READ_BIT_NV, SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_READ_NV },
    { SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_WRITE_BIT_NV, SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_WRITE_NV },
    { SYNC_CONDITIONAL_RENDERING_BIT_EXT_CONDITIONAL_RENDERING_READ_BIT_EXT, SYNC_CONDITIONAL_RENDERING_EXT_CONDITIONAL_RENDERING_READ_EXT },
    { SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ_BIT, SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ },
    { SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ_BIT, SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ },
    { SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ_BIT, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ },
    { SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE_BIT, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE },
    { SYNC_RAY_TRACING_SHADER_UNIFORM_READ_BIT, SYNC_RAY_TRACING_SHADER_UNIFORM_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE },
    { SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ_BIT, SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ },
    { SYNC_VIDEO_DECODE_VIDEO_DECODE_READ_BIT, SYNC_VIDEO_DECODE_VIDEO_DECODE_READ },
    { SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE_BIT, SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE },
    { SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ_BIT, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ },
    { SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE_BIT, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE },
    { SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ_BIT, SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ },
    { SYNC_HOST_HOST_READ_BIT, SYNC_HOST_HOST_READ },
    { SYNC_HOST_HOST_WRITE_BIT, SYNC_HOST_HOST_WRITE },
    { SYNC_IMAGE_LAYOUT_TRANSITION_BIT, SYNC_IMAGE_LAYOUT_TRANSITION },
    { SYNC_QUEUE_FAMILY_OWNERSHIP_TRANSFER_BIT, SYNC_QUEUE_FAMILY_OWNERSHIP_TRANSFER },
};

// Array of text names and component masks for each stage/access index
const std::array<SyncStageAccessInfoType, 90> syncStageAccessInfoByStageAccessIndex { {
    {
        "SYNC_ACCESS_INDEX_NONE",
        VK_PIPELINE_STAGE_2_NONE_KHR,
        VK_ACCESS_2_NONE_KHR,
        SYNC_ACCESS_INDEX_NONE,
        SyncStageAccessFlags(0)
    },
    {
        "SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ",
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR,
        VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR,
        SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ,
        SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ_BIT
    },
    {
        "SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT",
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR,
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
        SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT,
        SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
    },
    {
        "SYNC_INDEX_INPUT_INDEX_READ",
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR,
        VK_ACCESS_2_INDEX_READ_BIT_KHR,
        SYNC_INDEX_INPUT_INDEX_READ,
        SYNC_INDEX_INPUT_INDEX_READ_BIT
    },
    {
        "SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ",
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR,
        VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR,
        SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ,
        SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ_BIT
    },
    {
        "SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ,
        SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_VERTEX_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_VERTEX_SHADER_SHADER_STORAGE_READ,
        SYNC_VERTEX_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE,
        SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_VERTEX_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_VERTEX_SHADER_UNIFORM_READ,
        SYNC_VERTEX_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE,
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ,
        SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE,
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ,
        SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ,
        SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ,
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE,
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_GEOMETRY_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_GEOMETRY_SHADER_UNIFORM_READ,
        SYNC_GEOMETRY_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT",
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
        SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT,
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
    },
    {
        "SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT",
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
        SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT,
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT
    },
    {
        "SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_WRITE_EXT",
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
        VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,
        SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_WRITE_EXT,
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_WRITE_BIT_EXT
    },
    {
        "SYNC_FRAGMENT_DENSITY_PROCESS_EXT_FRAGMENT_DENSITY_MAP_READ_EXT",
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
        VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
        SYNC_FRAGMENT_DENSITY_PROCESS_EXT_FRAGMENT_DENSITY_MAP_READ_EXT,
        SYNC_FRAGMENT_DENSITY_PROCESS_BIT_EXT_FRAGMENT_DENSITY_MAP_READ_BIT_EXT
    },
    {
        "SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ,
        SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ,
        SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ,
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE,
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_TASK_SHADER_NV_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_TASK_SHADER_NV_UNIFORM_READ,
        SYNC_TASK_SHADER_NV_UNIFORM_READ_BIT
    },
    {
        "SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ,
        SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ,
        SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ,
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE,
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_MESH_SHADER_NV_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_MESH_SHADER_NV_UNIFORM_READ,
        SYNC_MESH_SHADER_NV_UNIFORM_READ_BIT
    },
    {
        "SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
        VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ,
        SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR,
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR,
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ,
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE",
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR,
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR,
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE,
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ,
        SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ,
        SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ,
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE,
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_FRAGMENT_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_FRAGMENT_SHADER_UNIFORM_READ,
        SYNC_FRAGMENT_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR,
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR,
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ,
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE",
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR,
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR,
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE,
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT
    },
    {
        "SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR,
        VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_EXT",
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR,
        VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_EXT,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT
    },
    {
        "SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE",
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR,
        VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE,
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE_BIT
    },
    {
        "SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ,
        SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ,
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE,
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_COMPUTE_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_COMPUTE_SHADER_UNIFORM_READ,
        SYNC_COMPUTE_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_COPY_TRANSFER_READ",
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR,
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR,
        SYNC_COPY_TRANSFER_READ,
        SYNC_COPY_TRANSFER_READ_BIT
    },
    {
        "SYNC_COPY_TRANSFER_WRITE",
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR,
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
        SYNC_COPY_TRANSFER_WRITE,
        SYNC_COPY_TRANSFER_WRITE_BIT
    },
    {
        "SYNC_RESOLVE_TRANSFER_READ",
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR,
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR,
        SYNC_RESOLVE_TRANSFER_READ,
        SYNC_RESOLVE_TRANSFER_READ_BIT
    },
    {
        "SYNC_RESOLVE_TRANSFER_WRITE",
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR,
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
        SYNC_RESOLVE_TRANSFER_WRITE,
        SYNC_RESOLVE_TRANSFER_WRITE_BIT
    },
    {
        "SYNC_BLIT_TRANSFER_READ",
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR,
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR,
        SYNC_BLIT_TRANSFER_READ,
        SYNC_BLIT_TRANSFER_READ_BIT
    },
    {
        "SYNC_BLIT_TRANSFER_WRITE",
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR,
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
        SYNC_BLIT_TRANSFER_WRITE,
        SYNC_BLIT_TRANSFER_WRITE_BIT
    },
    {
        "SYNC_CLEAR_TRANSFER_WRITE",
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR,
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
        SYNC_CLEAR_TRANSFER_WRITE,
        SYNC_CLEAR_TRANSFER_WRITE_BIT
    },
    {
        "SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_READ_NV",
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV,
        VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,
        SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_READ_NV,
        SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_READ_BIT_NV
    },
    {
        "SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_WRITE_NV",
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV,
        VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,
        SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_WRITE_NV,
        SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_WRITE_BIT_NV
    },
    {
        "SYNC_CONDITIONAL_RENDERING_EXT_CONDITIONAL_RENDERING_READ_EXT",
        VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,
        VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,
        SYNC_CONDITIONAL_RENDERING_EXT_CONDITIONAL_RENDERING_READ_EXT,
        SYNC_CONDITIONAL_RENDERING_BIT_EXT_CONDITIONAL_RENDERING_READ_BIT_EXT
    },
    {
        "SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ,
        SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ,
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ,
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE",
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR,
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE,
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE_BIT
    },
    {
        "SYNC_RAY_TRACING_SHADER_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_RAY_TRACING_SHADER_UNIFORM_READ,
        SYNC_RAY_TRACING_SHADER_UNIFORM_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE,
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE,
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE_BIT
    },
    {
        "SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ",
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR,
        SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ,
        SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ_BIT
    },
    {
        "SYNC_VIDEO_DECODE_VIDEO_DECODE_READ",
        VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR,
        VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR,
        SYNC_VIDEO_DECODE_VIDEO_DECODE_READ,
        SYNC_VIDEO_DECODE_VIDEO_DECODE_READ_BIT
    },
    {
        "SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE",
        VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR,
        VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR,
        SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE,
        SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE_BIT
    },
    {
        "SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ",
        VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR,
        VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR,
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ,
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ_BIT
    },
    {
        "SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE",
        VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR,
        VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR,
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE,
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE_BIT
    },
    {
        "SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ",
        VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI,
        VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR,
        SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ,
        SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ_BIT
    },
    {
        "SYNC_HOST_HOST_READ",
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR,
        VK_ACCESS_2_HOST_READ_BIT_KHR,
        SYNC_HOST_HOST_READ,
        SYNC_HOST_HOST_READ_BIT
    },
    {
        "SYNC_HOST_HOST_WRITE",
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR,
        VK_ACCESS_2_HOST_WRITE_BIT_KHR,
        SYNC_HOST_HOST_WRITE,
        SYNC_HOST_HOST_WRITE_BIT
    },
    {
        "SYNC_IMAGE_LAYOUT_TRANSITION",
        VK_PIPELINE_STAGE_2_NONE_KHR,
        VK_ACCESS_2_NONE_KHR,
        SYNC_IMAGE_LAYOUT_TRANSITION,
        SYNC_IMAGE_LAYOUT_TRANSITION_BIT
    },
    {
        "SYNC_QUEUE_FAMILY_OWNERSHIP_TRANSFER",
        VK_PIPELINE_STAGE_2_NONE_KHR,
        VK_ACCESS_2_NONE_KHR,
        SYNC_QUEUE_FAMILY_OWNERSHIP_TRANSFER,
        SYNC_QUEUE_FAMILY_OWNERSHIP_TRANSFER_BIT
    },
} };

// Constants defining the mask of all read and write stage_access states
// Bit order mask of stage_access bit for each stage
const std::map<VkPipelineStageFlags2KHR, SyncStageAccessFlags> syncStageAccessMaskByStageBit {
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, (
        SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ_BIT |
        SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, (
        SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_VERTEX_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_VERTEX_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, (
        SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, (
        SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, (
        SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_GEOMETRY_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, (
        SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_FRAGMENT_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, (
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT |
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, (
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT |
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, (
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_BIT |
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT |
        SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, (
        SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_COMPUTE_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_HOST_BIT_KHR, (
        SYNC_HOST_HOST_READ_BIT |
        SYNC_HOST_HOST_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, (
        SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_READ_BIT_NV |
        SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_WRITE_BIT_NV
    )},
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, SYNC_CONDITIONAL_RENDERING_BIT_EXT_CONDITIONAL_RENDERING_READ_BIT_EXT},
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, (
        SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ_BIT |
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ_BIT |
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE_BIT |
        SYNC_TASK_SHADER_NV_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, (
        SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ_BIT |
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ_BIT |
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE_BIT |
        SYNC_MESH_SHADER_NV_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, (
        SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_RAY_TRACING_SHADER_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT},
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, SYNC_FRAGMENT_DENSITY_PROCESS_BIT_EXT_FRAGMENT_DENSITY_MAP_READ_BIT_EXT},
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, (
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT |
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT |
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_WRITE_BIT_EXT
    )},
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, (
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ_BIT
    )},
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, (
        SYNC_VIDEO_DECODE_VIDEO_DECODE_READ_BIT |
        SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, (
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ_BIT |
        SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, (
        SYNC_COPY_TRANSFER_READ_BIT |
        SYNC_COPY_TRANSFER_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, (
        SYNC_RESOLVE_TRANSFER_READ_BIT |
        SYNC_RESOLVE_TRANSFER_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, (
        SYNC_BLIT_TRANSFER_READ_BIT |
        SYNC_BLIT_TRANSFER_WRITE_BIT
    )},
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, SYNC_CLEAR_TRANSFER_WRITE_BIT},
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, SYNC_INDEX_INPUT_INDEX_READ_BIT},
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ_BIT},
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ_BIT},
};

// Bit order mask of stage_access bit for each access
const std::map<VkAccessFlags2KHR, SyncStageAccessFlags> syncStageAccessMaskByAccessBit {
    { VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR, (
        SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ_BIT
    )},
    { VK_ACCESS_2_INDEX_READ_BIT_KHR, SYNC_INDEX_INPUT_INDEX_READ_BIT},
    { VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR, SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ_BIT},
    { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, (
        SYNC_VERTEX_SHADER_UNIFORM_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ_BIT |
        SYNC_GEOMETRY_SHADER_UNIFORM_READ_BIT |
        SYNC_TASK_SHADER_NV_UNIFORM_READ_BIT |
        SYNC_MESH_SHADER_NV_UNIFORM_READ_BIT |
        SYNC_FRAGMENT_SHADER_UNIFORM_READ_BIT |
        SYNC_COMPUTE_SHADER_UNIFORM_READ_BIT |
        SYNC_RAY_TRACING_SHADER_UNIFORM_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ_BIT
    )},
    { VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR, (
        SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ_BIT |
        SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ_BIT
    )},
    { VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_BIT},
    { VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE_BIT},
    { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR, (
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT |
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ_BIT
    )},
    { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR, (
        SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT |
        SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT
    )},
    { VK_ACCESS_2_TRANSFER_READ_BIT_KHR, (
        SYNC_COPY_TRANSFER_READ_BIT |
        SYNC_RESOLVE_TRANSFER_READ_BIT |
        SYNC_BLIT_TRANSFER_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ_BIT
    )},
    { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, (
        SYNC_COPY_TRANSFER_WRITE_BIT |
        SYNC_RESOLVE_TRANSFER_WRITE_BIT |
        SYNC_BLIT_TRANSFER_WRITE_BIT |
        SYNC_CLEAR_TRANSFER_WRITE_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE_BIT
    )},
    { VK_ACCESS_2_HOST_READ_BIT_KHR, SYNC_HOST_HOST_READ_BIT},
    { VK_ACCESS_2_HOST_WRITE_BIT_KHR, SYNC_HOST_HOST_WRITE_BIT},
    { VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV, SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_READ_BIT_NV},
    { VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV, SYNC_COMMAND_PREPROCESS_BIT_NV_COMMAND_PREPROCESS_WRITE_BIT_NV},
    { VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT},
    { VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT, SYNC_CONDITIONAL_RENDERING_BIT_EXT_CONDITIONAL_RENDERING_READ_BIT_EXT},
    { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, (
        SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ_BIT
    )},
    { VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE_BIT},
    { VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR, SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT},
    { VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT, SYNC_FRAGMENT_DENSITY_PROCESS_BIT_EXT_FRAGMENT_DENSITY_MAP_READ_BIT_EXT},
    { VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_WRITE_BIT_EXT},
    { VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, (
        SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT |
        SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
    )},
    { VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_BIT_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT},
    { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, (
        SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ_BIT |
        SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ_BIT
    )},
    { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, (
        SYNC_VERTEX_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ_BIT |
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ_BIT |
        SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ_BIT
    )},
    { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, (
        SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE_BIT |
        SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE_BIT |
        SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE_BIT |
        SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE_BIT
    )},
    { VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR, SYNC_VIDEO_DECODE_VIDEO_DECODE_READ_BIT},
    { VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR, SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE_BIT},
    { VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ_BIT},
    { VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE_BIT},
    { VK_ACCESS_2_MEMORY_READ_BIT_KHR, syncStageAccessReadMask},
    { VK_ACCESS_2_MEMORY_WRITE_BIT_KHR, syncStageAccessWriteMask},
};

// stage_access index for each stage and access
const std::map<VkPipelineStageFlags2KHR, std::map<VkAccessFlags2KHR, SyncStageAccessIndex>> syncStageAccessIndexByStageAndAccess {
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE },
        { VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ },
        { VK_ACCESS_2_TRANSFER_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ },
        { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_ACCELERATION_STRUCTURE_BUILD_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, {
        { VK_ACCESS_2_TRANSFER_READ_BIT_KHR, SYNC_BLIT_TRANSFER_READ },
        { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, SYNC_BLIT_TRANSFER_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, {
        { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, SYNC_CLEAR_TRANSFER_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, {
        { VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ },
        { VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ_NONCOHERENT_EXT },
        { VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR, SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, {
        { VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV, SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_READ_NV },
        { VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV, SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_WRITE_NV }
    } },
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_COMPUTE_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, {
        { VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT, SYNC_CONDITIONAL_RENDERING_EXT_CONDITIONAL_RENDERING_READ_EXT }
    } },
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, {
        { VK_ACCESS_2_TRANSFER_READ_BIT_KHR, SYNC_COPY_TRANSFER_READ },
        { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, SYNC_COPY_TRANSFER_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, {
        { VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR, SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ },
        { VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT }
    } },
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, {
        { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR, SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ },
        { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR, SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, {
        { VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT, SYNC_FRAGMENT_DENSITY_PROCESS_EXT_FRAGMENT_DENSITY_MAP_READ_EXT }
    } },
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_FRAGMENT_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR, SYNC_FRAGMENT_SHADER_INPUT_ATTACHMENT_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_FRAGMENT_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, {
        { VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR, SYNC_FRAGMENT_SHADING_RATE_ATTACHMENT_FRAGMENT_SHADING_RATE_ATTACHMENT_READ }
    } },
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_GEOMETRY_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_GEOMETRY_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_HOST_BIT_KHR, {
        { VK_ACCESS_2_HOST_READ_BIT_KHR, SYNC_HOST_HOST_READ },
        { VK_ACCESS_2_HOST_WRITE_BIT_KHR, SYNC_HOST_HOST_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, {
        { VK_ACCESS_2_INDEX_READ_BIT_KHR, SYNC_INDEX_INPUT_INDEX_READ }
    } },
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, {
        { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR, SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ },
        { VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR, SYNC_LATE_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_MESH_SHADER_NV_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_MESH_SHADER_NV_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_RAY_TRACING_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, {
        { VK_ACCESS_2_TRANSFER_READ_BIT_KHR, SYNC_RESOLVE_TRANSFER_READ },
        { VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR, SYNC_RESOLVE_TRANSFER_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, {
        { VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR, SYNC_SUBPASS_SHADING_HUAWEI_INPUT_ATTACHMENT_READ }
    } },
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_TASK_SHADER_NV_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_TASK_SHADER_NV_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_TESSELLATION_CONTROL_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_TESSELLATION_EVALUATION_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, {
        { VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT },
        { VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT },
        { VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT, SYNC_TRANSFORM_FEEDBACK_EXT_TRANSFORM_FEEDBACK_WRITE_EXT }
    } },
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, {
        { VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR, SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ }
    } },
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, {
        { VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, SYNC_VERTEX_SHADER_ACCELERATION_STRUCTURE_READ },
        { VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR, SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ },
        { VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR, SYNC_VERTEX_SHADER_SHADER_STORAGE_READ },
        { VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR, SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE },
        { VK_ACCESS_2_UNIFORM_READ_BIT_KHR, SYNC_VERTEX_SHADER_UNIFORM_READ }
    } },
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, {
        { VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR, SYNC_VIDEO_DECODE_VIDEO_DECODE_READ },
        { VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR, SYNC_VIDEO_DECODE_VIDEO_DECODE_WRITE }
    } },
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, {
        { VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_READ },
        { VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR, SYNC_VIDEO_ENCODE_VIDEO_ENCODE_WRITE }
    } },
};

// Direct VkPipelineStageFlags to valid VkAccessFlags lookup table
const std::map<VkPipelineStageFlags2KHR, VkAccessFlags2KHR> syncDirectStageToAccessMask {
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, (
        VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, (
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR |
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, (
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR |
        VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, (
        VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR |
        VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT |
        VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_HOST_BIT_KHR, (
        VK_ACCESS_2_HOST_READ_BIT_KHR |
        VK_ACCESS_2_HOST_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, (
        VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV |
        VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV
    )},
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT},
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR},
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT},
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, (
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT |
        VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT |
        VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT
    )},
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, (
        VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR |
        VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR |
        VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR |
        VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR |
        VK_ACCESS_2_UNIFORM_READ_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, (
        VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR |
        VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, (
        VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR |
        VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, (
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, (
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, (
        VK_ACCESS_2_TRANSFER_READ_BIT_KHR |
        VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, VK_ACCESS_2_INDEX_READ_BIT_KHR},
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR},
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR},
};

// Pipeline stages corresponding to VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR for each VkQueueFlagBits
const std::map<VkQueueFlagBits, VkPipelineStageFlags2KHR> syncAllCommandStagesByQueueFlags {
    { VK_QUEUE_COMPUTE_BIT, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR |
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR |
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV |
        VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT |
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR
    )},
    { VK_QUEUE_GRAPHICS_BIT, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR |
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR |
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV |
        VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT |
        VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR
    )},
    { VK_QUEUE_TRANSFER_BIT, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR |
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR |
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR
    )},
    { VK_QUEUE_VIDEO_DECODE_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR
    )},
    { VK_QUEUE_VIDEO_ENCODE_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_HOST_BIT_KHR
    )},
};

// Masks of logically earlier stage flags for a given stage flag
const std::map<VkPipelineStageFlags2KHR, VkPipelineStageFlags2KHR> syncLogicallyEarlierStages {
    { VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV
    )},
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR |
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR |
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV |
        VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT |
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
};

// Masks of logically later stage flags for a given stage flag
const std::map<VkPipelineStageFlags2KHR, VkPipelineStageFlags2KHR> syncLogicallyLaterStages {
    { VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR |
        VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR |
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_COPY_BIT_KHR |
        VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR |
        VK_PIPELINE_STAGE_2_BLIT_BIT_KHR |
        VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV |
        VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT |
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR |
        VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, (
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, (
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, (
        VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, (
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR |
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, (
        VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, (
        VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR |
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, (
        VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR |
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, (
        VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR |
        VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR
    )},
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
    { VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR},
};

// Lookup table of stage orderings
const std::map<VkPipelineStageFlags2KHR, int> syncStageOrder {
    { VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR, 0},
    { VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR, 1},
    { VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR, 2},
    { VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR, 3},
    { VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR, 4},
    { VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR, 5},
    { VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR, 6},
    { VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR, 7},
    { VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, 8},
    { VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, 9},
    { VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, 10},
    { VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, 11},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 12},
    { VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR, 13},
    { VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR, 14},
    { VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR, 15},
    { VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR, 16},
    { VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR, 17},
    { VK_PIPELINE_STAGE_2_COPY_BIT_KHR, 18},
    { VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR, 19},
    { VK_PIPELINE_STAGE_2_BLIT_BIT_KHR, 20},
    { VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR, 21},
    { VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, 22},
    { VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, 23},
    { VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, 24},
    { VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, 25},
    { VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, 26},
    { VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, 27},
    { VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, 28},
    { VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR, 29},
    { VK_PIPELINE_STAGE_2_HOST_BIT_KHR, 30},
};

const std::map<VkShaderStageFlagBits, SyncShaderStageAccess> syncStageAccessMaskByShaderStage {
    {VK_SHADER_STAGE_VERTEX_BIT, {
        SYNC_VERTEX_SHADER_SHADER_SAMPLED_READ, SYNC_VERTEX_SHADER_SHADER_STORAGE_READ, SYNC_VERTEX_SHADER_SHADER_STORAGE_WRITE, SYNC_VERTEX_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, {
        SYNC_TESSELLATION_CONTROL_SHADER_SHADER_SAMPLED_READ, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_READ, SYNC_TESSELLATION_CONTROL_SHADER_SHADER_STORAGE_WRITE, SYNC_TESSELLATION_CONTROL_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, {
        SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_SAMPLED_READ, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_READ, SYNC_TESSELLATION_EVALUATION_SHADER_SHADER_STORAGE_WRITE, SYNC_TESSELLATION_EVALUATION_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_GEOMETRY_BIT, {
        SYNC_GEOMETRY_SHADER_SHADER_SAMPLED_READ, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_READ, SYNC_GEOMETRY_SHADER_SHADER_STORAGE_WRITE, SYNC_GEOMETRY_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_FRAGMENT_BIT, {
        SYNC_FRAGMENT_SHADER_SHADER_SAMPLED_READ, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_READ, SYNC_FRAGMENT_SHADER_SHADER_STORAGE_WRITE, SYNC_FRAGMENT_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_COMPUTE_BIT, {
        SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ, SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ, SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE, SYNC_COMPUTE_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_RAYGEN_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_ANY_HIT_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_MISS_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_INTERSECTION_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_CALLABLE_BIT_KHR, {
        SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ, SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE, SYNC_RAY_TRACING_SHADER_UNIFORM_READ}},
    {VK_SHADER_STAGE_TASK_BIT_NV, {
        SYNC_TASK_SHADER_NV_SHADER_SAMPLED_READ, SYNC_TASK_SHADER_NV_SHADER_STORAGE_READ, SYNC_TASK_SHADER_NV_SHADER_STORAGE_WRITE, SYNC_TASK_SHADER_NV_UNIFORM_READ}},
    {VK_SHADER_STAGE_MESH_BIT_NV, {
        SYNC_MESH_SHADER_NV_SHADER_SAMPLED_READ, SYNC_MESH_SHADER_NV_SHADER_STORAGE_READ, SYNC_MESH_SHADER_NV_SHADER_STORAGE_WRITE, SYNC_MESH_SHADER_NV_UNIFORM_READ}},
};
