virtual void cmdBindInvocationMaskHUAWEI (VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const;
virtual VkResult getMemoryRemoteAddressNV (VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress) const;
virtual void cmdSetPatchControlPointsEXT (VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const;
-virtual void cmdSetRasterizerDiscardEnableEXT (VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable) const;
-virtual void cmdSetDepthBiasEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable) const;
virtual void cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const;
-virtual void cmdSetPrimitiveRestartEnableEXT (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const;
virtual void cmdSetColorWriteEnableEXT (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const;
virtual void cmdDrawMultiEXT (VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawInfoEXT* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride) const;
virtual void cmdDrawMultiIndexedEXT (VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawIndexedInfoEXT* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const int32_t* pVertexOffset) const;
m_vk.cmdSetPatchControlPointsEXT(commandBuffer, patchControlPoints);
}
-void DeviceDriver::cmdSetRasterizerDiscardEnableEXT (VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable) const
-{
- m_vk.cmdSetRasterizerDiscardEnableEXT(commandBuffer, rasterizerDiscardEnable);
-}
-
-void DeviceDriver::cmdSetDepthBiasEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable) const
-{
- m_vk.cmdSetDepthBiasEnableEXT(commandBuffer, depthBiasEnable);
-}
-
void DeviceDriver::cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const
{
m_vk.cmdSetLogicOpEXT(commandBuffer, logicOp);
}
-void DeviceDriver::cmdSetPrimitiveRestartEnableEXT (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const
-{
- m_vk.cmdSetPrimitiveRestartEnableEXT(commandBuffer, primitiveRestartEnable);
-}
-
void DeviceDriver::cmdSetColorWriteEnableEXT (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const
{
m_vk.cmdSetColorWriteEnableEXT(commandBuffer, attachmentCount, pColorWriteEnables);
"VK_EXT_texture_compression_astc_hdr",
"VK_EXT_tooling_info",
"VK_EXT_ycbcr_2plane_444_formats",
- "VK_KHR_shader_integer_dot_product",
};
CmdBindInvocationMaskHUAWEIFunc cmdBindInvocationMaskHUAWEI;
GetMemoryRemoteAddressNVFunc getMemoryRemoteAddressNV;
CmdSetPatchControlPointsEXTFunc cmdSetPatchControlPointsEXT;
-CmdSetRasterizerDiscardEnableEXTFunc cmdSetRasterizerDiscardEnableEXT;
-CmdSetDepthBiasEnableEXTFunc cmdSetDepthBiasEnableEXT;
CmdSetLogicOpEXTFunc cmdSetLogicOpEXT;
-CmdSetPrimitiveRestartEnableEXTFunc cmdSetPrimitiveRestartEnableEXT;
CmdSetColorWriteEnableEXTFunc cmdSetColorWriteEnableEXT;
CmdDrawMultiEXTFunc cmdDrawMultiEXT;
CmdDrawMultiIndexedEXTFunc cmdDrawMultiIndexedEXT;
if (!m_vk.cmdSetStencilOp)
m_vk.cmdSetStencilOp = (CmdSetStencilOpFunc) GET_PROC_ADDR("vkCmdSetStencilOpEXT");
m_vk.cmdSetRasterizerDiscardEnable = (CmdSetRasterizerDiscardEnableFunc) GET_PROC_ADDR("vkCmdSetRasterizerDiscardEnable");
+if (!m_vk.cmdSetRasterizerDiscardEnable)
+ m_vk.cmdSetRasterizerDiscardEnable = (CmdSetRasterizerDiscardEnableFunc) GET_PROC_ADDR("vkCmdSetRasterizerDiscardEnableEXT");
m_vk.cmdSetDepthBiasEnable = (CmdSetDepthBiasEnableFunc) GET_PROC_ADDR("vkCmdSetDepthBiasEnable");
+if (!m_vk.cmdSetDepthBiasEnable)
+ m_vk.cmdSetDepthBiasEnable = (CmdSetDepthBiasEnableFunc) GET_PROC_ADDR("vkCmdSetDepthBiasEnableEXT");
m_vk.cmdSetPrimitiveRestartEnable = (CmdSetPrimitiveRestartEnableFunc) GET_PROC_ADDR("vkCmdSetPrimitiveRestartEnable");
+if (!m_vk.cmdSetPrimitiveRestartEnable)
+ m_vk.cmdSetPrimitiveRestartEnable = (CmdSetPrimitiveRestartEnableFunc) GET_PROC_ADDR("vkCmdSetPrimitiveRestartEnableEXT");
m_vk.getDeviceBufferMemoryRequirements = (GetDeviceBufferMemoryRequirementsFunc) GET_PROC_ADDR("vkGetDeviceBufferMemoryRequirements");
if (!m_vk.getDeviceBufferMemoryRequirements)
m_vk.getDeviceBufferMemoryRequirements = (GetDeviceBufferMemoryRequirementsFunc) GET_PROC_ADDR("vkGetDeviceBufferMemoryRequirementsKHR");
m_vk.cmdBindInvocationMaskHUAWEI = (CmdBindInvocationMaskHUAWEIFunc) GET_PROC_ADDR("vkCmdBindInvocationMaskHUAWEI");
m_vk.getMemoryRemoteAddressNV = (GetMemoryRemoteAddressNVFunc) GET_PROC_ADDR("vkGetMemoryRemoteAddressNV");
m_vk.cmdSetPatchControlPointsEXT = (CmdSetPatchControlPointsEXTFunc) GET_PROC_ADDR("vkCmdSetPatchControlPointsEXT");
-m_vk.cmdSetRasterizerDiscardEnableEXT = (CmdSetRasterizerDiscardEnableEXTFunc) GET_PROC_ADDR("vkCmdSetRasterizerDiscardEnableEXT");
-m_vk.cmdSetDepthBiasEnableEXT = (CmdSetDepthBiasEnableEXTFunc) GET_PROC_ADDR("vkCmdSetDepthBiasEnableEXT");
m_vk.cmdSetLogicOpEXT = (CmdSetLogicOpEXTFunc) GET_PROC_ADDR("vkCmdSetLogicOpEXT");
-m_vk.cmdSetPrimitiveRestartEnableEXT = (CmdSetPrimitiveRestartEnableEXTFunc) GET_PROC_ADDR("vkCmdSetPrimitiveRestartEnableEXT");
m_vk.cmdSetColorWriteEnableEXT = (CmdSetColorWriteEnableEXTFunc) GET_PROC_ADDR("vkCmdSetColorWriteEnableEXT");
m_vk.cmdDrawMultiEXT = (CmdDrawMultiEXTFunc) GET_PROC_ADDR("vkCmdDrawMultiEXT");
m_vk.cmdDrawMultiIndexedEXT = (CmdDrawMultiIndexedEXTFunc) GET_PROC_ADDR("vkCmdDrawMultiIndexedEXT");
DE_UNREF(patchControlPoints);
}
-VKAPI_ATTR void VKAPI_CALL cmdSetRasterizerDiscardEnableEXT (VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable)
-{
- DE_UNREF(commandBuffer);
- DE_UNREF(rasterizerDiscardEnable);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdSetDepthBiasEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable)
-{
- DE_UNREF(commandBuffer);
- DE_UNREF(depthBiasEnable);
-}
-
VKAPI_ATTR void VKAPI_CALL cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp)
{
DE_UNREF(commandBuffer);
DE_UNREF(logicOp);
}
-VKAPI_ATTR void VKAPI_CALL cmdSetPrimitiveRestartEnableEXT (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable)
-{
- DE_UNREF(commandBuffer);
- DE_UNREF(primitiveRestartEnable);
-}
-
VKAPI_ATTR void VKAPI_CALL cmdSetColorWriteEnableEXT (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables)
{
DE_UNREF(commandBuffer);
VK_NULL_FUNC_ENTRY(vkCmdBindInvocationMaskHUAWEI, cmdBindInvocationMaskHUAWEI),
VK_NULL_FUNC_ENTRY(vkGetMemoryRemoteAddressNV, getMemoryRemoteAddressNV),
VK_NULL_FUNC_ENTRY(vkCmdSetPatchControlPointsEXT, cmdSetPatchControlPointsEXT),
- VK_NULL_FUNC_ENTRY(vkCmdSetRasterizerDiscardEnableEXT, cmdSetRasterizerDiscardEnableEXT),
- VK_NULL_FUNC_ENTRY(vkCmdSetDepthBiasEnableEXT, cmdSetDepthBiasEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetRasterizerDiscardEnableEXT, cmdSetRasterizerDiscardEnable),
+ VK_NULL_FUNC_ENTRY(vkCmdSetDepthBiasEnableEXT, cmdSetDepthBiasEnable),
VK_NULL_FUNC_ENTRY(vkCmdSetLogicOpEXT, cmdSetLogicOpEXT),
- VK_NULL_FUNC_ENTRY(vkCmdSetPrimitiveRestartEnableEXT, cmdSetPrimitiveRestartEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetPrimitiveRestartEnableEXT, cmdSetPrimitiveRestartEnable),
VK_NULL_FUNC_ENTRY(vkCmdSetColorWriteEnableEXT, cmdSetColorWriteEnableEXT),
VK_NULL_FUNC_ENTRY(vkCmdDrawMultiEXT, cmdDrawMultiEXT),
VK_NULL_FUNC_ENTRY(vkCmdDrawMultiIndexedEXT, cmdDrawMultiIndexedEXT),
virtual void cmdBindInvocationMaskHUAWEI (VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const = 0;
virtual VkResult getMemoryRemoteAddressNV (VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress) const = 0;
virtual void cmdSetPatchControlPointsEXT (VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const = 0;
-virtual void cmdSetRasterizerDiscardEnableEXT (VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable) const = 0;
-virtual void cmdSetDepthBiasEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable) const = 0;
virtual void cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const = 0;
-virtual void cmdSetPrimitiveRestartEnableEXT (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const = 0;
virtual void cmdSetColorWriteEnableEXT (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const = 0;
virtual void cmdDrawMultiEXT (VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawInfoEXT* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride) const = 0;
virtual void cmdDrawMultiIndexedEXT (VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawIndexedInfoEXT* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const int32_t* pVertexOffset) const = 0;
def parseExtensions (src, versions, allFunctions, allCompositeTypes, allEnums, allBitfields, allHandles, allDefinitions):
- def getCoreVersion (extensionName, extensionsData):
- # returns None when extension was not added to core for any Vulkan version
- # returns array containing DEVICE or INSTANCE string followed by the vulkan version in which this extension is core
- # note that this function is also called for vulkan 1.0 source for which extName is None
- if not extensionName:
- return None
- ptrn = extensionName + r'\s+(DEVICE|INSTANCE)\s+([0-9_]+)'
- coreVersion = re.search(ptrn, extensionsData, re.I)
- if coreVersion != None:
- return [coreVersion.group(1)] + [int(number) for number in coreVersion.group(2).split('_')[:3]]
- return None
-
- extensionsData = readFile(os.path.join(VULKAN_H_DIR, "extensions_data.txt"))
+ def getExtensionDataDict():
+ ptrn = r'(VK_\S+)\s+(DEVICE|INSTANCE)\s+([0-9_]*)?'
+ extensionsDataFile = readFile(os.path.join(VULKAN_H_DIR, "extensions_data.txt"))
+ extensionList = re.findall(ptrn, extensionsDataFile)
+ extensionDict = {}
+ # dictionary value is list containing DEVICE or INSTANCE string followed
+ # by optional vulkan version in which this extension is core
+ for item in extensionList:
+ versionList = []
+ if len(item[2]):
+ versionList = [int(number) for number in item[2].split('_')[:3]]
+ extensionDict[item[0]] = [item[1]] + versionList
+ return extensionDict
+
+ extensionsDataDict = getExtensionDataDict()
splitSrc = splitByExtension(src)
extensions = []
functionsByName = {function.name: function for function in allFunctions}
enumBitfieldNames = [getBitEnumNameForBitfield(name) for name in bitfieldNames]
enums = [enum for enum in rawEnums if enum.name not in enumBitfieldNames]
- extCoreVersion = getCoreVersion(extensionName, extensionsData)
+ extCoreVersion = None
extFunctions = [functionsByName[function.name] for function in functions]
extCompositeTypes = [compositeTypesByName[compositeType.name] for compositeType in compositeTypes]
extEnums = [enumsByName[enum.name] for enum in enums]
extHandles = [handlesByName[handle.name] for handle in handles]
extDefinitions = [definitionsByName[definition.name] for definition in definitions]
- if extCoreVersion != None:
+ extData = extensionsDataDict.get(extensionName)
+ if extData != None:
populateExtensionAliases(functionsByName, extFunctions)
populateExtensionAliases(handlesByName, extHandles)
populateExtensionAliases(enumsByName, extEnums)
populateExtensionAliases(bitfieldsByName, extBitfields)
populateExtensionAliases(compositeTypesByName, extCompositeTypes)
+ if len(extData) > 1:
+ extCoreVersion = extData
+
extensions.append(Extension(extensionName, extHandles, extEnums, extBitfields, extCompositeTypes, extFunctions, extDefinitions, additionalDefinitions, typedefs, extCoreVersion))
return extensions
VK_EXT_texture_compression_astc_hdr DEVICE 1_3_0
VK_EXT_tooling_info DEVICE 1_3_0
VK_EXT_ycbcr_2plane_444_formats DEVICE 1_3_0
-VK_KHR_shader_integer_dot_product DEVICE