OpenGL ES CTS 3.2.8.0

New Tests:
 * Remove GLES-only tests from the GL 4.5 package
 * Add a new GLES2TextureSharingTest
 * Support GL 4.5 in the sRGB skip decode tests
 * Test framebuffer completeness when layered rendering
 * Add yuv420 format to EGL AHB tests
 * EXT_multisampled_render_to_texture test using ReadPixels
 * Add GL_RGB9_E5 as renderable ext format in fbo tests
 * Add tests for mixing matrix packing in nested structs
 * Support GL 4.5 in the Integer state query tests
 * Support GL 4.5 in the Texture Specification Tests
 * Tests for OpenGL ES 3.1 and 3.2 compressed formats
 * Raise glsl version to 410 core for shaders with GL_ARB_shader_atomic_counters
 * Support GL 4.5 in the textureGather tests
 * Support GL 4.5 in the Boolean State Query tests
 * Support GL 4.5 in the copy image tests
 * Allow GL_RGB9_E5 as a valid fbo format
 * Support GL 4.5 in the Texture Filtering Tests
 * Support GL 4.5 in the Query vertex attribute binding state tests
 * Support GL 4.5 in the Program State Query tests
 * Support GL 4.5 in the Arrays of Arrays Tests
 * Support GL 4.5 in the blend_equation_advanced tests
 * Support GL 4.5 in the GL_EXT_shader_framebuffer_fetch tests
 * Support GL 4.5 in the default vertex array object test
 * Support GL 4.5 in the Opaque Type Indexing Tests
 * Support GL 4.5 in the Built-in Constant Tests
 * Support GL 4.5 in the Synchronization tests
 * Add timer query handle reuse test for opengl es
 * Support GL 4.5 in the Linkage Tests
 * Support GL 4.5 in the Common function tests
 * Support GL 4.5 in the uniform location tests
 * Add tests for multidimensional atomic counter array
 * Support GL 4.5 in the Stencil texturing tests
 * Support FP16 CPU Rendering
 * Allow EGL tests to use ES3 with EGL_KHR_create_context
 * Support GL 4.5 in the multisample texture tests
 * Support GL 4.5 in the tessellation and geometry shader interaction tests
 * Added tests for OES_EGL_image_external
 * Support GL 4.5 in the indexed draw buffers tests
 * Extend CopyImage tests to test astc_sliced_3d
 * Support GL 4.5 in the geometry shading tests
 * Support GL 4.5 in the Cube map array texture tests
 * Suppotr GL 4.5 in the sRGB write control tests
 * Support GL 4.5 in the base vertex extension drawing tests
 * Support GL 4.5 in the gl_HelperInvocation tests
 * Mirror existing ANGLE waiver for Samsung devices
 * Support GL 4.5 in the multisample interpolation states tests
 * Support GL 4.5 in various multisample tests
 * Support GL 4.5 in the Texture size tests
 * Support GL 4.5 in the EXT_texture_border_clamp tests
 * Add GL_EXT_texture_sRGB_RG8 support
 * Support GL 4.5 in the GetTexLevelParameter tests
 * Support GL 4.5 in the Layout binding tests
 * Support GL 4.5 in the Program interface query tests
 * Support GL 4.5 in the Separate shader tests
 * Support GL 4.5 in the Shader state query tests
 * Support GL 4.5 in the Texture buffer syncronization tests
 * Tests for GLES3 framebuffer completeness
 * Add tests for all ES 3.0 internal formats
 * EXT_multisampled_render_to_texture test
 * Add TexSubImage2D format compatibility tests
 * Add some simple shader tests for compatibility context
 * Support GL 4.5 in the Shader Image Load & Store Tests
 * Added layered AHB EGL tests
 * Support GL 4.5 in the atomic operation with image tests
 * Add test for PBO bounds
 * Add GL_ARB_separate_shader_objects requirement
 * Support  GL 4.5 in the draw_indirect tests
 * Support GL 4.5 in the Internal format queries tests
 * Support GL 4.5 in the tessellation tests
 * Add AOSP tests to the GL4.5 mustpass

Fixes:
 * Fix uninitialized local variables in generated shader.
 * x11_egl: only append library path if it's not empty
 * Fix sRGB cases in framebuffer_fetch tests for OpenGL 4.5
 * Add missing extension requirement
 * Improve and fix quad randomization in vertex array test
 * Fix array iteration range
 * Fix missing barrier in compute test
 * Fix glcPackedPixelsTests to properly account for skip images
 * Check for integer texture support in negative teximage tests
 * Fix loop over cube map faces in GL4
 * Fix GLES3 Clang UBSan errors
 * Fix precision issue in ShaderMatrixTest
 * Fix EGL AHB util build issue
 * Fix negative shift in bitfieldExtract tests
 * Fix cull_distance.coverage on pre-GL4 drivers
 * Fix fma precision tests for Open GL 4.5
 * Static code analysis fix for bounding box test
 * Remove invalid reserved keywords tests
 * Fix out-of-bounds stack read
 * Fix memory barriers between store and load operations
 * Remove renderingComplete test
 * Fix more spurious failures in KHR-GL*.transform_feedback.api_errors_test
 * Remove direct state access usage from RenderbufferCase
 * Make texel conversion ignore unused channels
 * Fix vector access in EGL partial update tests
 * Pad out glClearBufferuiv value
 * Fix error logs in ssbo/image load store tests
 * Enable the dEQP-GL45 package on Android
 * Fix precision issue in NearestEdgeTests shaders
 * Remove few EGL robustness tests
 * Change GLSL->SPIR-V mapping of notEqual to OpFUnordNotEqual not OpFOrdNotEqual
 * Check support for EGL 1.5 or higher when using GLES3
 * Fix signed integer overflow
 * Increase tolearance for dithering tests
 * Fix signed integer overflow in shader precision tests
 * Fix division by zero errors
 * Fix shader operator tests' precision expectation
 * Fix for the common function tests with GL 4.5
 * Fix to GL 4.5 geometry shading provoking vertex tests
 * Fix to GL 4.5 geometry shading point size tests
 * Fix undefined behavior in FloatToHalf
 * Avoid shifting by more than bit width
 * Fix for the bounding box tests with GL 4.5
 * Fix tessellation cases using precise qualifier for OpenGL 4.5
 * Remove shaders.arrays from the Khronos mustpass
 * Fix source data size in SSBO array length tests
 * Fix Windows build
 * Fix signed integer overflow in vertex array tests
 * Avoid division by zero in calculateThreshold
 * Fix MSVC C++17 build
 * Fix bug in compressed PixelStorageModes tests
 * Fix for the various multisample tests with GL 4.5
 * Retry lesser FBO sample counts if UNSUPPORTED
 * Disable-SeamlessCubeMap-In-Reference-ES2Context
 * Throttling CTS producing frame speed
 * Fix signed integer overflow in shader operator tests
 * Avoid OOB params access in call log wrapper
 * Fix the default GL_IMAGE_BINDING_FORMAT for desktop OpenGL
 * Static code analysis fixes for GL cts
 * Relax get_frame_timestamps
 * Fix to multisample texture test shaders with GL 4.5
 * Fix spurious failures on KHR-GL30.transform_feedback.api_errors_test
 * Accept NaN as valid in atan2 precision tests
 * Lower vector constructor test shader version
 * Add memoryBarrier before buffer map verify
 * Print ints for pixel values instead of chars in error message
 * Fix build issues with older NDKs
 * Avoid division by zero in cube map coordinates
 * Add a glMemoryBarrier between buffer write and read
 * Fix GL_MAX_FRAGMENT_INTERPOLATION_OFFSET limit check
 * GCC 11 build fixes for opengl-es-cts
 * Use GL_FRAMEBUFFER instead of GL_[DRAW|READ]_FRAMEBUFFER with GLES2
 * Fix missing barrier in texture buffer test

Improvements:
 * Make tcu::Exception noexcept copy-constructible
 * Raise glsl version to 420 for compute shaders
 * Move two GL groups to single config
 * Update Vulkan/GL Readme
 * Fix GL compatbility mustpass file names
 * framework: unify TestPackage behaviour between ES 3.1 and 3.2
 * Allow the use of the standard types
 * Update OpenGL mustpass
 * Remove unreachable breaks
 * reset minSampleShading only with OpenGL Core 4.0+
 * Add an option to terminate after first failure, update READMEs
 * Remove shaders.switch from the Khronos mustpasses
 * Remove in-repo verify_submission scripts
 * QPA image viewer updates
 * Replace libUI with native Android AHB API
 * Fix surfaceless platform for Android
 * Fix Windows MSVC build regression from GitHub!261
 * Adjust texture data and threshold
 * Fix error in build_apk.py
 * Remove unused test cases from gen-keywords script
 * Add waived tests support for cts tools
 * Revise the render_list string of angle vulkan waiver
 * Ensure only Unix paths are added to deqp.apk
 * Allow wildcards in waiver vendor strings
 * Create chunked mustpass
 * Extract findLSB() and findMSB() to a separate helper file.
 * Implement getProcAddress for surfaceless platform
 * Update Android API and permissions for OpenGL
 * Fix Clang -Wcomma warnings
 * Add Android test lists for OpenGL ES
 * Always include sys/system_properties.h for Android
 * Add CMake detection logic for libdrm include files
 * Work around bogus GCC 9 warnings
 * Remove extra semicolons
 * Fix exit code for cts-runner
 * Remove empty subtest
Fix build issues with older NDKs

EGL AHB tests were relying on using NDK version higher than
what was required in readme. With this change the same tests
can be compiled with and older NDK.

Now AHardwareBuffer_isSupported function is only used if available,
removing a requirement for API version 29.

Runtime version checks were also restored to make sure the
device supports the AHB API version used during compile time.

VK-GL-CTS Issue: 3443

Affects:

dEQP-EGL.functional.image.*android_native*

Components: EGL, Framework
Change-Id: I0839070dfb0152c3d5d27921c806ee7c00b96e9a
1 file changed
tree: 4336548d94a1de95166c5e3465f2aef67886ecbb
  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 the dEQP is available at Android Open Source Project site.

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/