Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a15a4bf4 authored by Jesse Hall's avatar Jesse Hall
Browse files

vulkan: Update from version 0.180.0 to 0.181.0

Change-Id: I4a7e216d9966f2dcf873bcb952472463dfb59f95
(cherry picked from commit 2c3539bab4b81b6e55d690c5e113d3421cc15021)
parent a366a518
Loading
Loading
Loading
Loading
+37 −51
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ import platform "platform.api"

// API version (major.minor.patch)
define VERSION_MAJOR 0
define VERSION_MINOR 180
define VERSION_MINOR 181
define VERSION_PATCH 0

// API limits
@@ -135,13 +135,6 @@ enum VkImageViewType {
    VK_IMAGE_VIEW_TYPE_CUBE_ARRAY                           = 0x00000006,
}

enum VkImageAspect {
    VK_IMAGE_ASPECT_COLOR                                   = 0x00000000,
    VK_IMAGE_ASPECT_DEPTH                                   = 0x00000001,
    VK_IMAGE_ASPECT_STENCIL                                 = 0x00000002,
    VK_IMAGE_ASPECT_METADATA                                = 0x00000003,
}

enum VkCmdBufferLevel {
    VK_CMD_BUFFER_LEVEL_PRIMARY                             = 0x00000000,
    VK_CMD_BUFFER_LEVEL_SECONDARY                           = 0x00000001,
@@ -535,16 +528,6 @@ enum VkFormat {
    VK_FORMAT_B10G10R10A2_SINT                              = 0x000000AD,
}

/// Shader stage enumerant
enum VkShaderStage {
    VK_SHADER_STAGE_VERTEX                                  = 0x00000000,
    VK_SHADER_STAGE_TESSELLATION_CONTROL                    = 0x00000001,
    VK_SHADER_STAGE_TESSELLATION_EVALUATION                 = 0x00000002,
    VK_SHADER_STAGE_GEOMETRY                                = 0x00000003,
    VK_SHADER_STAGE_FRAGMENT                                = 0x00000004,
    VK_SHADER_STAGE_COMPUTE                                 = 0x00000005,
}

/// Structure type enumerant
enum VkStructureType {
    VK_STRUCTURE_TYPE_APPLICATION_INFO                          = 0,
@@ -606,12 +589,11 @@ enum VkRenderPassContents {
enum VkResult {
    // Return codes for successful operation execution (positive values)
    VK_SUCCESS                                              = 0x00000000,
    VK_UNSUPPORTED                                          = 0x00000001,
    VK_NOT_READY                                            = 0x00000002,
    VK_TIMEOUT                                              = 0x00000003,
    VK_EVENT_SET                                            = 0x00000004,
    VK_EVENT_RESET                                          = 0x00000005,
    VK_INCOMPLETE                                           = 0x00000006,
    VK_NOT_READY                                            = 0x00000001,
    VK_TIMEOUT                                              = 0x00000002,
    VK_EVENT_SET                                            = 0x00000003,
    VK_EVENT_RESET                                          = 0x00000004,
    VK_INCOMPLETE                                           = 0x00000005,

    // Error codes (negative values)
    VK_ERROR_OUT_OF_HOST_MEMORY                             = 0xFFFFFFFF,
@@ -856,13 +838,11 @@ bitfield VkEventCreateFlags {
bitfield VkCmdBufferCreateFlags {
}

/// Command buffer optimization flags
bitfield VkCmdBufferOptimizeFlags {
    VK_CMD_BUFFER_OPTIMIZE_SMALL_BATCH_BIT                  = 0x00000001,
    VK_CMD_BUFFER_OPTIMIZE_PIPELINE_SWITCH_BIT              = 0x00000002,
    VK_CMD_BUFFER_OPTIMIZE_ONE_TIME_SUBMIT_BIT              = 0x00000004,
    VK_CMD_BUFFER_OPTIMIZE_DESCRIPTOR_SET_SWITCH_BIT        = 0x00000008,
    VK_CMD_BUFFER_OPTIMIZE_NO_SIMULTANEOUS_USE_BIT          = 0x00000010,  /// Only one call to the secondary command buffer will exist at any given time
/// Command buffer usage flags
bitfield VkCmdBufferUsageFlags {
    VK_CMD_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT                 = 0x00000001,
    VK_CMD_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT            = 0x00000002,
    VK_CMD_BUFFER_USAGE_SIMULTANEOUS_USE_BIT                = 0x00000004,
}

/// Pipeline statistics flags
@@ -1022,9 +1002,10 @@ class VkRect2D {
    VkExtent2D                                  extent
}

class VkRect3D {
    VkOffset3D                                  offset
    VkExtent3D                                  extent
class VkClearRect {
    VkRect2D                                    rect
    u32                                         baseArrayLayer
    u32                                         numLayers
}

class VkChannelMapping {
@@ -1140,7 +1121,7 @@ class VkMemoryRequirements {
}

class VkSparseImageFormatProperties {
    VkImageAspect                               aspect
    VkImageAspectFlags                          aspect
    VkExtent3D                                  imageGranularity
    VkSparseImageFormatFlags                    flags
}
@@ -1180,23 +1161,28 @@ class VkFormatProperties {
class VkImageFormatProperties {
    VkExtent3D                                  maxExtent                  /// max image dimensions for this resource type
    u32                                         maxMipLevels               /// max number of mipmap levels for this resource type
    u32                                         maxArraySize               /// max array size for this resource type
    u32                                         maxArrayLayers             /// max array layers for this resource type
    VkSampleCountFlags                          sampleCounts               /// supported sample counts for this resource type
    VkDeviceSize                                maxResourceSize            /// max size (in bytes) of this resource type
}

class VkDescriptorImageInfo {
    VkSampler                                   sampler
    VkImageView                                 imageView
    VkImageLayout                               imageLayout
}

class VkDescriptorBufferInfo {
    VkBuffer                                    buffer                     /// Buffer used for this descriptor when the descriptor is UNIFORM_BUFFER[_DYNAMIC]
    VkDeviceSize                                offset                     /// Base offset from buffer start in bytes to update in the descriptor set.
    VkDeviceSize                                range                      /// Size in bytes of the buffer resource for this descriptor update.
}

@union
class VkDescriptorInfo {
    VkBufferView                                bufferView                 /// Buffer view to write to the descriptor (in case it's a buffer descriptor, otherwise should be VK_NULL_HANDLE)
    VkSampler                                   sampler                    /// Sampler to write to the descriptor (in case it's a SAMPLER or COMBINED_IMAGE_SAMPLER descriptor, otherwise should be VK_NULL_HANDLE)
    VkImageView                                 imageView                  /// Image view to write to the descriptor (in case it's a SAMPLED_IMAGE, STORAGE_IMAGE, COMBINED_IMAGE_SAMPLER, or INPUT_ATTACHMENT descriptor, otherwise should be VK_NULL_HANDLE)
    VkImageLayout                               imageLayout                /// Layout the image is expected to be in when accessed using this descriptor (only used if imageView is not VK_NULL_HANDLE)
    VkDescriptorImageInfo                       imageInfo
    VkDescriptorBufferInfo                      bufferInfo                 /// Raw buffer, size and offset for UNIFORM_BUFFER[_DYNAMIC] or STORAGE_BUFFER[_DYNAMIC] descriptor types. Ignored otherwise.
    VkBufferView                                texelBufferView
}

class VkWriteDescriptorSet {
@@ -1243,7 +1229,7 @@ class VkBufferViewCreateInfo {
}

class VkImageSubresource {
    VkImageAspect                               aspect
    VkImageAspectFlags                          aspect
    u32                                         mipLevel
    u32                                         arrayLayer
}
@@ -1251,9 +1237,9 @@ class VkImageSubresource {
class VkImageSubresourceRange {
    VkImageAspectFlags                          aspectMask
    u32                                         baseMipLevel
    u32                                         mipLevels
    u32                                         numLevels
    u32                                         baseArrayLayer
    u32                                         arraySize
    u32                                         numLayers
}

class VkMemoryBarrier {
@@ -1295,7 +1281,7 @@ class VkImageCreateInfo {
    VkFormat                                    format
    VkExtent3D                                  extent
    u32                                         mipLevels
    u32                                         arraySize
    u32                                         arrayLayers
    u32                                         samples
    VkImageTiling                               tiling
    VkImageUsageFlags                           usage                      /// Image usage flags
@@ -1348,10 +1334,10 @@ class VkSparseImageMemoryBindInfo {
}

class VkImageSubresourceCopy {
    VkImageAspect                               aspect
    VkImageAspectFlags                          aspect
    u32                                         mipLevel
    u32                                         arrayLayer
    u32                                         arraySize
    u32                                         baseArrayLayer
    u32                                         numLayers
}

class VkImageCopy {
@@ -1402,7 +1388,7 @@ class VkShaderCreateInfo {
    VkShaderModule                              module             /// Module containing entry point
    const char*                                 pName              /// Null-terminated entry point name
    VkShaderCreateFlags                         flags              /// Reserved
    VkShaderStage                               stage
    VkShaderStageFlags                          stage
}

class VkDescriptorSetLayoutBinding {
@@ -1449,7 +1435,7 @@ class VkSpecializationInfo {
class VkPipelineShaderStageCreateInfo {
    VkStructureType                             sType              /// Must be VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO
    const void*                                 pNext              /// Pointer to next structure
    VkShaderStage                               stage
    VkShaderStageFlags                          stage
    VkShader                                    shader
    const VkSpecializationInfo*                 pSpecializationInfo
}
@@ -1668,7 +1654,7 @@ class VkCmdBufferCreateInfo {
class VkCmdBufferBeginInfo {
    VkStructureType                             sType       /// Must be VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO
    const void*                                 pNext       /// Pointer to next structure
    VkCmdBufferOptimizeFlags                    flags       /// Command buffer optimization flags
    VkCmdBufferUsageFlags                       flags       /// Command buffer usage flags
    VkRenderPass                                renderPass  /// Render pass for secondary command buffers
    u32                                         subpass
    VkFramebuffer                               framebuffer /// Framebuffer for secondary command buffers
@@ -4056,7 +4042,7 @@ cmd void vkCmdClearAttachments(
        u32                                         attachmentCount,
        const VkClearAttachment*                    pAttachments,
        u32                                         rectCount,
        const VkRect3D*                             pRects) {
        const VkClearRect*                          pRects) {
    cmdBufferObject := GetCmdBuffer(cmdBuffer)

    rects := pRects[0:rectCount]
+55 −77
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ extern "C" {
    ((major << 22) | (minor << 12) | patch)

// Vulkan API version supported by this file
#define VK_API_VERSION VK_MAKE_VERSION(0, 180, 0)
#define VK_API_VERSION VK_MAKE_VERSION(0, 181, 0)


#if defined(__cplusplus) && ((defined(_MSC_VER) && _MSC_VER >= 1800) || __cplusplus >= 201103L)
@@ -139,12 +139,11 @@ VK_DEFINE_NONDISP_HANDLE(VkCmdPool)

typedef enum {
    VK_SUCCESS = 0,
    VK_UNSUPPORTED = 1,
    VK_NOT_READY = 2,
    VK_TIMEOUT = 3,
    VK_EVENT_SET = 4,
    VK_EVENT_RESET = 5,
    VK_INCOMPLETE = 6,
    VK_NOT_READY = 1,
    VK_TIMEOUT = 2,
    VK_EVENT_SET = 3,
    VK_EVENT_RESET = 4,
    VK_INCOMPLETE = 5,
    VK_ERROR_OUT_OF_HOST_MEMORY = -1,
    VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,
    VK_ERROR_INITIALIZATION_FAILED = -3,
@@ -438,17 +437,6 @@ typedef enum {
    VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkPhysicalDeviceType;

typedef enum {
    VK_IMAGE_ASPECT_COLOR = 0,
    VK_IMAGE_ASPECT_DEPTH = 1,
    VK_IMAGE_ASPECT_STENCIL = 2,
    VK_IMAGE_ASPECT_METADATA = 3,
    VK_IMAGE_ASPECT_BEGIN_RANGE = VK_IMAGE_ASPECT_COLOR,
    VK_IMAGE_ASPECT_END_RANGE = VK_IMAGE_ASPECT_METADATA,
    VK_IMAGE_ASPECT_NUM = (VK_IMAGE_ASPECT_METADATA - VK_IMAGE_ASPECT_COLOR + 1),
    VK_IMAGE_ASPECT_MAX_ENUM = 0x7FFFFFFF
} VkImageAspect;

typedef enum {
    VK_QUERY_TYPE_OCCLUSION = 0,
    VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
@@ -510,19 +498,6 @@ typedef enum {
    VK_CHANNEL_SWIZZLE_MAX_ENUM = 0x7FFFFFFF
} VkChannelSwizzle;

typedef enum {
    VK_SHADER_STAGE_VERTEX = 0,
    VK_SHADER_STAGE_TESSELLATION_CONTROL = 1,
    VK_SHADER_STAGE_TESSELLATION_EVALUATION = 2,
    VK_SHADER_STAGE_GEOMETRY = 3,
    VK_SHADER_STAGE_FRAGMENT = 4,
    VK_SHADER_STAGE_COMPUTE = 5,
    VK_SHADER_STAGE_BEGIN_RANGE = VK_SHADER_STAGE_VERTEX,
    VK_SHADER_STAGE_END_RANGE = VK_SHADER_STAGE_COMPUTE,
    VK_SHADER_STAGE_NUM = (VK_SHADER_STAGE_COMPUTE - VK_SHADER_STAGE_VERTEX + 1),
    VK_SHADER_STAGE_MAX_ENUM = 0x7FFFFFFF
} VkShaderStage;

typedef enum {
    VK_VERTEX_INPUT_STEP_RATE_VERTEX = 0,
    VK_VERTEX_INPUT_STEP_RATE_INSTANCE = 1,
@@ -904,6 +879,13 @@ typedef enum {
typedef VkFlags VkMemoryHeapFlags;
typedef VkFlags VkMemoryMapFlags;

typedef enum {
    VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,
    VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,
    VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,
    VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,
} VkImageAspectFlagBits;

typedef enum {
    VK_SPARSE_IMAGE_FMT_SINGLE_MIPTAIL_BIT = 0x00000001,
    VK_SPARSE_IMAGE_FMT_ALIGNED_MIP_SIZE_BIT = 0x00000002,
@@ -966,13 +948,6 @@ typedef enum {
    VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
} VkBufferCreateFlagBits;
typedef VkFlags VkBufferCreateFlags;

typedef enum {
    VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,
    VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,
    VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,
    VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,
} VkImageAspectFlagBits;
typedef VkFlags VkImageAspectFlags;

typedef enum {
@@ -983,6 +958,16 @@ typedef VkFlags VkImageViewCreateFlags;
typedef VkFlags VkShaderModuleCreateFlags;
typedef VkFlags VkShaderCreateFlags;

typedef enum {
    VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,
    VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,
    VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,
    VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
    VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
    VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
    VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
} VkShaderStageFlagBits;

typedef enum {
    VK_CHANNEL_R_BIT = 0x00000001,
    VK_CHANNEL_G_BIT = 0x00000002,
@@ -997,16 +982,6 @@ typedef enum {
    VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
} VkPipelineCreateFlagBits;
typedef VkFlags VkPipelineCreateFlags;

typedef enum {
    VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,
    VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,
    VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,
    VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
    VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
    VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
    VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
} VkShaderStageFlagBits;
typedef VkFlags VkShaderStageFlags;

typedef enum {
@@ -1071,13 +1046,11 @@ typedef VkFlags VkCmdPoolResetFlags;
typedef VkFlags VkCmdBufferCreateFlags;

typedef enum {
    VK_CMD_BUFFER_OPTIMIZE_SMALL_BATCH_BIT = 0x00000001,
    VK_CMD_BUFFER_OPTIMIZE_PIPELINE_SWITCH_BIT = 0x00000002,
    VK_CMD_BUFFER_OPTIMIZE_ONE_TIME_SUBMIT_BIT = 0x00000004,
    VK_CMD_BUFFER_OPTIMIZE_DESCRIPTOR_SET_SWITCH_BIT = 0x00000008,
    VK_CMD_BUFFER_OPTIMIZE_NO_SIMULTANEOUS_USE_BIT = 0x00000010,
} VkCmdBufferOptimizeFlagBits;
typedef VkFlags VkCmdBufferOptimizeFlags;
    VK_CMD_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,
    VK_CMD_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,
    VK_CMD_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,
} VkCmdBufferUsageFlagBits;
typedef VkFlags VkCmdBufferUsageFlags;

typedef enum {
    VK_CMD_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
@@ -1204,7 +1177,7 @@ typedef struct {
typedef struct {
    VkExtent3D                                  maxExtent;
    uint32_t                                    maxMipLevels;
    uint32_t                                    maxArraySize;
    uint32_t                                    maxArrayLayers;
    VkSampleCountFlags                          sampleCounts;
    VkDeviceSize                                maxResourceSize;
} VkImageFormatProperties;
@@ -1414,7 +1387,7 @@ typedef struct {
} VkMemoryRequirements;

typedef struct {
    VkImageAspect                               aspect;
    VkImageAspectFlagBits                       aspect;
    VkExtent3D                                  imageGranularity;
    VkSparseImageFormatFlags                    flags;
} VkSparseImageFormatProperties;
@@ -1436,7 +1409,7 @@ typedef struct {
} VkSparseMemoryBindInfo;

typedef struct {
    VkImageAspect                               aspect;
    VkImageAspectFlagBits                       aspect;
    uint32_t                                    mipLevel;
    uint32_t                                    arrayLayer;
} VkImageSubresource;
@@ -1509,7 +1482,7 @@ typedef struct {
    VkFormat                                    format;
    VkExtent3D                                  extent;
    uint32_t                                    mipLevels;
    uint32_t                                    arraySize;
    uint32_t                                    arrayLayers;
    uint32_t                                    samples;
    VkImageTiling                               tiling;
    VkImageUsageFlags                           usage;
@@ -1537,9 +1510,9 @@ typedef struct {
typedef struct {
    VkImageAspectFlags                          aspectMask;
    uint32_t                                    baseMipLevel;
    uint32_t                                    mipLevels;
    uint32_t                                    numLevels;
    uint32_t                                    baseArrayLayer;
    uint32_t                                    arraySize;
    uint32_t                                    numLayers;
} VkImageSubresourceRange;

typedef struct {
@@ -1567,7 +1540,7 @@ typedef struct {
    VkShaderModule                              module;
    const char*                                 pName;
    VkShaderCreateFlags                         flags;
    VkShaderStage                               stage;
    VkShaderStageFlagBits                       stage;
} VkShaderCreateInfo;

typedef struct {
@@ -1594,7 +1567,7 @@ typedef struct {
typedef struct {
    VkStructureType                             sType;
    const void*                                 pNext;
    VkShaderStage                               stage;
    VkShaderStageFlagBits                       stage;
    VkShader                                    shader;
    const VkSpecializationInfo*                 pSpecializationInfo;
} VkPipelineShaderStageCreateInfo;
@@ -1839,18 +1812,22 @@ typedef struct {
    const VkDescriptorTypeCount*                pTypeCount;
} VkDescriptorPoolCreateInfo;

typedef struct {
    VkSampler                                   sampler;
    VkImageView                                 imageView;
    VkImageLayout                               imageLayout;
} VkDescriptorImageInfo;

typedef struct {
    VkBuffer                                    buffer;
    VkDeviceSize                                offset;
    VkDeviceSize                                range;
} VkDescriptorBufferInfo;

typedef struct {
    VkBufferView                                bufferView;
    VkSampler                                   sampler;
    VkImageView                                 imageView;
    VkImageLayout                               imageLayout;
typedef union {
    VkDescriptorImageInfo                       imageInfo;
    VkDescriptorBufferInfo                      bufferInfo;
    VkBufferView                                texelBufferView;
} VkDescriptorInfo;

typedef struct {
@@ -1962,7 +1939,7 @@ typedef struct {
typedef struct {
    VkStructureType                             sType;
    const void*                                 pNext;
    VkCmdBufferOptimizeFlags                    flags;
    VkCmdBufferUsageFlags                       flags;
    VkRenderPass                                renderPass;
    uint32_t                                    subpass;
    VkFramebuffer                               framebuffer;
@@ -1975,10 +1952,10 @@ typedef struct {
} VkBufferCopy;

typedef struct {
    VkImageAspect                               aspect;
    VkImageAspectFlags                          aspect;
    uint32_t                                    mipLevel;
    uint32_t                                    arrayLayer;
    uint32_t                                    arraySize;
    uint32_t                                    baseArrayLayer;
    uint32_t                                    numLayers;
} VkImageSubresourceCopy;

typedef struct {
@@ -2030,9 +2007,10 @@ typedef struct {
} VkClearAttachment;

typedef struct {
    VkOffset3D                                  offset;
    VkExtent3D                                  extent;
} VkRect3D;
    VkRect2D                                    rect;
    uint32_t                                    baseArrayLayer;
    uint32_t                                    numLayers;
} VkClearRect;

typedef struct {
    VkImageSubresourceCopy                      srcSubresource;
@@ -2234,7 +2212,7 @@ typedef void (VKAPI *PFN_vkCmdUpdateBuffer)(VkCmdBuffer cmdBuffer, VkBuffer dest
typedef void (VKAPI *PFN_vkCmdFillBuffer)(VkCmdBuffer cmdBuffer, VkBuffer destBuffer, VkDeviceSize destOffset, VkDeviceSize fillSize, uint32_t data);
typedef void (VKAPI *PFN_vkCmdClearColorImage)(VkCmdBuffer cmdBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
typedef void (VKAPI *PFN_vkCmdClearDepthStencilImage)(VkCmdBuffer cmdBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
typedef void (VKAPI *PFN_vkCmdClearAttachments)(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkRect3D* pRects);
typedef void (VKAPI *PFN_vkCmdClearAttachments)(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);
typedef void (VKAPI *PFN_vkCmdResolveImage)(VkCmdBuffer cmdBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage destImage, VkImageLayout destImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);
typedef void (VKAPI *PFN_vkCmdSetEvent)(VkCmdBuffer cmdBuffer, VkEvent event, VkPipelineStageFlags stageMask);
typedef void (VKAPI *PFN_vkCmdResetEvent)(VkCmdBuffer cmdBuffer, VkEvent event, VkPipelineStageFlags stageMask);
@@ -2932,7 +2910,7 @@ void VKAPI vkCmdClearAttachments(
    uint32_t                                    attachmentCount,
    const VkClearAttachment*                    pAttachments,
    uint32_t                                    rectCount,
    const VkRect3D*                             pRects);
    const VkClearRect*                          pRects);

void VKAPI vkCmdResolveImage(
    VkCmdBuffer                                 cmdBuffer,
+1 −1
Original line number Diff line number Diff line
@@ -682,7 +682,7 @@ void vkCmdClearDepthStencilImage(VkCmdBuffer cmdBuffer, VkImage image, VkImageLa
}

__attribute__((visibility("default")))
void vkCmdClearAttachments(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkRect3D* pRects) {
void vkCmdClearAttachments(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects) {
    GetVtbl(cmdBuffer).CmdClearAttachments(cmdBuffer, attachmentCount, pAttachments, rectCount, pRects);
}

+1 −1
Original line number Diff line number Diff line
@@ -421,7 +421,7 @@ VkResult CreateSwapchainKHR(VkDevice device,
        .format = VK_FORMAT_R8G8B8A8_UNORM,  // TODO(jessehall)
        .extent = {0, 0, 1},
        .mipLevels = 1,
        .arraySize = 1,
        .arrayLayers = 1,
        .samples = 1,
        .tiling = VK_IMAGE_TILING_OPTIMAL,
        .usage = create_info->imageUsageFlags,
+3 −3
Original line number Diff line number Diff line
@@ -473,12 +473,12 @@ VkResult CreateImage(VkDevice device,
        ALOGE("CreateImage: not yet implemented: type=%d format=%d mips=%u",
              create_info->imageType, create_info->format,
              create_info->mipLevels);
        return VK_UNSUPPORTED;
        return VK_ERROR_OUT_OF_HOST_MEMORY;
    }

    VkDeviceSize size =
        VkDeviceSize(create_info->extent.width * create_info->extent.height) *
        create_info->arraySize * create_info->samples * 4u;
        create_info->arrayLayers * create_info->samples * 4u;
    ALOGW_IF(size > kMaxDeviceMemory,
             "CreateImage: image size 0x%" PRIx64
             " exceeds max device memory size 0x%" PRIx64,
@@ -1003,7 +1003,7 @@ void CmdClearColorImage(VkCmdBuffer cmdBuffer, VkImage image, VkImageLayout imag
void CmdClearDepthStencilImage(VkCmdBuffer cmdBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges) {
}

void CmdClearAttachments(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkRect3D* pRects) {
void CmdClearAttachments(VkCmdBuffer cmdBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects) {
}

void CmdResolveImage(VkCmdBuffer cmdBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage destImage, VkImageLayout destImageLayout, uint32_t regionCount, const VkImageResolve* pRegions) {
Loading