OpenGL CTS 3.2.9.0

New Tests:
 * Check that image*Shadow are not reserved keywords
 * Add Texture2D array test in which Texture2D array is rendered and
 * Enable EGL AHB tests
 * Remove usages of std::iterator
 * Move draw buffers indexed tests from ES3.1 to ES3 group
 * Add tests for out-param aliasing against other variables
 * Add KHR-GLESEXT.fragment_shading_rate tests
 * Test failure of non-precision qualifiers in struct members
 * Add missing GLSL struct comparison tests
 * Rework platform memory limits
 * Update gl.xml and fix script to build properly
 * Add autogenerate with GL_EXT_fragment_shading_rate
 * Test single-path switch statements
 * Add coverage for MaxAtomicCounterBufferSize
 * Add tests for array comparisons
 * Support GL 4.5 in the 'negative' tests

Fixes:
 * Tweak grid size in vertex shader shader render tests
 * Fix ShaderBallotFunctionRead test
 * Query default FBO Depth, Stencil only when format requires
 * Use the correct attachment parameter when not the default FBO
 * Fix state query tests for desktop GL context
 * Skip mipmap generation for integer sparse texture formats
 * Fix atomic tests' texture size
 * Vulkan video only for windows and linux
 * Fix for the string query tests on desktop GL
 * Fix division by zero in glsBuiltinPrecisionTests
 * Fix texture target for verifying sparse data
 * stop crashing in gl tess isolines tests if xfb is broken
 * Improve sparse texture failure errors
 * Fix of missing processEvent call
 * Improve max image samples check in KHR-GL46.multi_bind test
 * allow non-preferred line interpolation for gles
 * Regenerate main/gl45-master.txt
 * fix GL sparse texture gather offset constness
 * Avoid type overflow in glGetInteger64v/glGetFloatv for compute checks
 * Allow not supporting separate depth/stencil with combined formats
 * Make PolygonOffsetClamp* be independent of depth format
 * Corrected shaders to draw uniform colors.
 * Update FBO tests to handle separate depth stencil in ES3
 * fix GL46 vector construction sizing
 * Fix division by zero
 * Fix triangle strip adjacency tests vertex ordering
 * Fix debug callback function prototypes
 * Fix OpenGL implicit conversions tests
 * further improve sparse texture shader typing
 * Fix signed integer overflow in random shader tests
 * Fix compilation issues with ShaderLibraryCase assert
 * Remove EnableBlendCase from ES 3.1
 * Remove a wrong qualityWarning for fbo completeness test
 * Fix deinit of gl sparse buffer test
 * fix invalid buffer bind size in KHR-GL46.sparse_buffer_tests.BufferStorageTest
 * gl4cMapBufferAlignmentTests: ensure that the GL_ARB_buffer_storage extension is present
 * fix fp64 dvec fmod precision strictness
 * Fix signed integer overflow in random indirect draw tests
 * Fix EGL test list split
 * Set NEAREST filtering for sparse clamp lookup texture
 * Fix pass condition for atomic usage tests
 * Fix some status code clarifications
 * Filter out invalid formats for sparse buffer texture queries
 * Fix PolygonOffsetClampMinMax test fail when using 24bit depth buffer
 * Fix signed integer overflow in framebuffer fetch tests
 * Fix sample mask calculation
 * Add check for ES compatibility extensions with Desktop OpenGL
 * Fix extension checks for EGL external image tests
 * Fix integer overflow in GLES2 tests' seed computation
 * Fixes arrays of arrays tests
 * Fix ARB_sparse_texture commit tests texture allocation
 * Fix DeqpTestRunnerTest
 * Rework sparse texture shader typing
 * Fix GS atomics for gl4 buffer storage tests

Improvements:
 * Fix integer overflow in Random::getInt()
 * Remove usages of std::iterator
 * Update KC CTS
 * Mirror ANGLE Khronos waiver for Android
 * Fix build in C++20 mode.
 * Add support for building with Visual Studio 2022
 * Switch the branch to the main mustpass
 * Update README.md files, replacing old link
 * Use Mach semaphores on Darwin
 * explicitly provides ssh urls to GitRepo declarations
 * GCC 11 build fixes
 * Fixes zlib dependency
 * Update KC-CTS for MR40
 * Fix NULL/False to std::string conversion errors
Vulkan video only for windows and linux

Currently vulkan video is only part of the linux
and windows platforms. The video module is therefore
completely excluded from the compilation target
on every other platform, and ffmpeg external library
will not be downloaded by fetch_sources.py script.

Affect tests:
* dEQP-VK.video.*

Components: Framework, Vulkan

VK-GL-CTS issue: 4185

Change-Id: I24c9c3c9f2a9853a3db47028bececa9f96d592ad
10 files changed
tree: 0b9d077538c3e19dcb84a89e3bb37cf84abfe963
  1. .github/
  2. android/
  3. data/
  4. doc/
  5. execserver/
  6. executor/
  7. external/
  8. framework/
  9. modules/
  10. scripts/
  11. targets/
  12. .editorconfig
  13. .gitattributes
  14. .gitignore
  15. Android.mk
  16. AndroidGen.mk
  17. CMakeLists.txt
  18. CODE_OF_CONDUCT.md
  19. LICENSE
  20. MODULE_LICENSE_APACHE2
  21. NOTICE
  22. OWNERS
  23. 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 dEQP is available at:

The .qpa logs generated by the conformance tests may contain embedded PNG images of the results. These can be viewed with scripts/qpa_image_viewer.html, by opening the file with a web browser and following its instructions, or using the Cherry tool.

Khronos Vulkan Conformance Tests

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

Khronos OpenGL / OpenGL ES Conformance Tests

This repository includes Khronos OpenGL / OpenGL ES CTS under external/openglcts directory. For more information see OpenGL / OpenGL ES CTS README.

ANGLE for Android

ANGLE can be built for Android by following the instructions here.

The resulting ANGLE shared object libraries can be linked against and embedded into dEQP.apk with the --angle-path option. This will cause dEQP.apk to use the ANGLE libraries for OpenGL ES calls, rather than the native drivers.

An ABI must be specified and the directory structure containing the ANGLE shared objects must match it so the build system can find the correct *.so files.

Assuming ANGLE shared objects are generated into ~/chromium/src/out/Release/ and dEQP.apk will be generated with --abis arm64-v8a, issue the following commands:

cd ~/chromium/src/out/Release/
mkdir arm64-v8a && cd arm64-v8a
cp ../lib*_angle.so .

The --angle-path ~/chromium/src/out/Release/ option can then be used to link against and embed the ANGLE shared object files. The full command would be:

python scripts/android/build_apk.py --sdk <path to Android SDK> --ndk <path to Android NDK> --abis arm64-v8a --angle-path ~/chromium/src/out/Release/