Fix dEQP-VK.api.info.get_physical_device_properties2.properties

The test uses memcmp to compare structs that may include padding
bytes. Although the test initializes all bytes prior to calling any
Vulkan APIs, there is no guarantee that drivers won't write to the
padding bytes, for example if they write the properties to a local
variable and then memcpy into the result pointer, which is a valid
implementation.

This patch fixes the problem by reusing the offset table that we
already use in another test to obtain the offsets and sizes for all
struct fields and exclude any padding bytes during comparisons.

Affects:
dEQP-VK.api.info.get_physical_device_properties2.properties

VK-GL-CTS issue: 63
Components: Vulkan

Change-Id: I4417a95d41241523acd13adc739e739da9b0c2ed
1 file changed
tree: 545335afaad9abbc50b01624457966edccea7888
  1. android/
  2. data/
  3. doc/
  4. execserver/
  5. executor/
  6. external/
  7. framework/
  8. modules/
  9. scripts/
  10. targets/
  11. .editorconfig
  12. .gitignore
  13. Android.mk
  14. CMakeLists.txt
  15. LICENSE
  16. MODULE_LICENSE_APACHE2
  17. NOTICE
  18. README.md
README.md

dEQP README

This repository contains a GPU testing suite called dEQP (drawElements Quality Program). dEQP contains tests for several graphics APIs, including OpenGL ES, EGL, and Vulkan.

Documentation

Up-to-date documentation for the dEQP is available at Android Open Source Project site.

Khronos Vulkan Conformance Tests

This repository includes Khronos Vulkan CTS under external/vulkancts directory. For more information see Vulkan CTS README.