MCPcopy Create free account
hub / github.com/SaschaWillems/VulkanCapsViewer / readPhysicalFeatures_ARM

Method readPhysicalFeatures_ARM

vulkanDeviceInfoExtensions.cpp:1618–1712  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1616#endif
1617}
1618void VulkanDeviceInfoExtensions::readPhysicalFeatures_ARM() {
1619 VkPhysicalDeviceFeatures2 deviceFeatures2{};
1620 if (extensionSupported("VK_ARM_rasterization_order_attachment_access")) {
1621 const char* extension("VK_ARM_rasterization_order_attachment_access");
1622 VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* extFeatures = new VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT{};
1623 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT;
1624 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1625 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1626 pushFeature2(extension, "rasterizationOrderColorAttachmentAccess", extFeatures->rasterizationOrderColorAttachmentAccess);
1627 pushFeature2(extension, "rasterizationOrderDepthAttachmentAccess", extFeatures->rasterizationOrderDepthAttachmentAccess);
1628 pushFeature2(extension, "rasterizationOrderStencilAttachmentAccess", extFeatures->rasterizationOrderStencilAttachmentAccess);
1629 delete extFeatures;
1630 }
1631 if (extensionSupported("VK_ARM_scheduling_controls")) {
1632 const char* extension("VK_ARM_scheduling_controls");
1633 VkPhysicalDeviceSchedulingControlsFeaturesARM* extFeatures = new VkPhysicalDeviceSchedulingControlsFeaturesARM{};
1634 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM;
1635 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1636 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1637 pushFeature2(extension, "schedulingControls", extFeatures->schedulingControls);
1638 delete extFeatures;
1639 }
1640 if (extensionSupported("VK_ARM_render_pass_striped")) {
1641 const char* extension("VK_ARM_render_pass_striped");
1642 VkPhysicalDeviceRenderPassStripedFeaturesARM* extFeatures = new VkPhysicalDeviceRenderPassStripedFeaturesARM{};
1643 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM;
1644 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1645 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1646 pushFeature2(extension, "renderPassStriped", extFeatures->renderPassStriped);
1647 delete extFeatures;
1648 }
1649 if (extensionSupported("VK_ARM_tensors")) {
1650 const char* extension("VK_ARM_tensors");
1651 VkPhysicalDeviceTensorFeaturesARM* extFeatures = new VkPhysicalDeviceTensorFeaturesARM{};
1652 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TENSOR_FEATURES_ARM;
1653 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1654 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1655 pushFeature2(extension, "tensorNonPacked", extFeatures->tensorNonPacked);
1656 pushFeature2(extension, "shaderTensorAccess", extFeatures->shaderTensorAccess);
1657 pushFeature2(extension, "shaderStorageTensorArrayDynamicIndexing", extFeatures->shaderStorageTensorArrayDynamicIndexing);
1658 pushFeature2(extension, "shaderStorageTensorArrayNonUniformIndexing", extFeatures->shaderStorageTensorArrayNonUniformIndexing);
1659 pushFeature2(extension, "descriptorBindingStorageTensorUpdateAfterBind", extFeatures->descriptorBindingStorageTensorUpdateAfterBind);
1660 pushFeature2(extension, "tensors", extFeatures->tensors);
1661 delete extFeatures;
1662 }
1663 if (extensionSupported("VK_ARM_shader_core_builtins")) {
1664 const char* extension("VK_ARM_shader_core_builtins");
1665 VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* extFeatures = new VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM{};
1666 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM;
1667 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1668 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1669 pushFeature2(extension, "shaderCoreBuiltins", extFeatures->shaderCoreBuiltins);
1670 delete extFeatures;
1671 }
1672 if (extensionSupported("VK_ARM_data_graph")) {
1673 const char* extension("VK_ARM_data_graph");
1674 VkPhysicalDeviceDataGraphFeaturesARM* extFeatures = new VkPhysicalDeviceDataGraphFeaturesARM{};
1675 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_FEATURES_ARM;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected