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

Commit b3ad731b authored by Nikita Gupta's avatar Nikita Gupta Committed by Android (Google) Code Review
Browse files

Merge "Capture VkPhysicalDeviceImage2DViewOf3DFeaturesEXT in vkjson" into main

parents f41ef91c 5acad43f
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -984,6 +984,13 @@ inline bool Iterate(Visitor* visitor,
                        &features->variable_pointer_features_khr);
}

template <typename Visitor>
inline bool Iterate(Visitor* visitor,
                    VkJsonExtImage2DViewOf3DFeatures* features) {
  return visitor->Visit("image2DViewOf3DFeaturesEXT",
                        &features->image_2D_view_of_3D_features_EXT);
}

template <typename Visitor>
inline bool Iterate(Visitor* visitor,
                    VkJsonExtShaderFloat16Int8Features* features) {
@@ -1091,6 +1098,13 @@ inline bool Iterate(Visitor* visitor,
         visitor->Visit("variablePointers", &features->variablePointers);
}

template <typename Visitor>
inline bool Iterate(Visitor* visitor,
                    VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* features) {
  return visitor->Visit("image2DViewOf3D", &features->image2DViewOf3D) &&
         visitor->Visit("sampler2DViewOf3D", &features->sampler2DViewOf3D);
}

template <typename Visitor>
inline bool Iterate(Visitor* visitor,
                    VkPhysicalDeviceShaderFloat16Int8FeaturesKHR* features) {
@@ -1241,6 +1255,10 @@ inline bool Iterate(Visitor* visitor, VkJsonDevice* device) {
        ret &= visitor->Visit("VK_KHR_variable_pointers",
                            &device->ext_variable_pointer_features);
      }
      if (device->ext_image_2d_view_of_3d_features.reported) {
        ret &= visitor->Visit("VK_EXT_image_2d_view_of_3d",
                              &device->ext_image_2d_view_of_3d_features);
      }
      if (device->ext_shader_float16_int8_features.reported) {
        ret &= visitor->Visit("VK_KHR_shader_float16_int8",
                              &device->ext_shader_float16_int8_features);
+11 −0
Original line number Diff line number Diff line
@@ -58,6 +58,16 @@ struct VkJsonExtVariablePointerFeatures {
  VkPhysicalDeviceVariablePointerFeaturesKHR variable_pointer_features_khr;
};

struct VkJsonExtImage2DViewOf3DFeatures {
  VkJsonExtImage2DViewOf3DFeatures() {
    reported = false;
    memset(&image_2D_view_of_3D_features_EXT, 0,
           sizeof(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceImage2DViewOf3DFeaturesEXT image_2D_view_of_3D_features_EXT;
};

struct VkJsonExtShaderFloat16Int8Features {
  VkJsonExtShaderFloat16Int8Features() {
    reported = false;
@@ -115,6 +125,7 @@ struct VkJsonDevice {
  VkPhysicalDeviceFeatures features;
  VkJsonExtDriverProperties ext_driver_properties;
  VkJsonExtVariablePointerFeatures ext_variable_pointer_features;
  VkJsonExtImage2DViewOf3DFeatures ext_image_2d_view_of_3d_features;
  VkJsonExtShaderFloat16Int8Features ext_shader_float16_int8_features;
  VkPhysicalDeviceMemoryProperties memory;
  std::vector<VkQueueFamilyProperties> queues;
+10 −0
Original line number Diff line number Diff line
@@ -103,6 +103,16 @@ VkJsonDevice VkJsonGetDevice(VkPhysicalDevice physical_device) {
    features.pNext =
        &device.ext_variable_pointer_features.variable_pointer_features_khr;
  }
  if (HasExtension("VK_EXT_image_2d_view_of_3d", device.extensions)) {
    device.ext_image_2d_view_of_3d_features.reported = true;
    device.ext_image_2d_view_of_3d_features.image_2D_view_of_3D_features_EXT
        .sType =
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT;
    device.ext_image_2d_view_of_3d_features.image_2D_view_of_3D_features_EXT
        .pNext = features.pNext;
    features.pNext = &device.ext_image_2d_view_of_3d_features
                          .image_2D_view_of_3D_features_EXT;
  }
  if (HasExtension("VK_KHR_shader_float16_int8", device.extensions)) {
    device.ext_shader_float16_int8_features.reported = true;
    device.ext_shader_float16_int8_features.shader_float16_int8_features_khr