OpenGL ES CTS 3.2.7.0

New tests:
 * Tests for GLES3 number parsing
 * Add tests for GLES3 vector construction from other types
 * Added test for reusing query handle
 * Add tests for usage of pixel storage modes

Fixes:
 * pipeline statistics test: Fix compute shader setup in !GL4.3 case.
 * First steps towards running ES3.1 functional tests on GL4.5 drivers
 * Fix image cube array tests support checks
 * Use shader to calculate sample point
 * Reset texture data to 0 after each 16 iterations to avoid overflow
 * ANGLE waiver for GLES XFB array element capture
 * Modify/add GLES XFB tests without element capture
 * Lower precision required for texture-lookups
 * Add formats support in nearest_edge tests
 * gles2: Add temporary constant-data shader indexing tests.
 * Fix pixel pack/unpack in nearest edge tests
 * fix 1d depth component 16 sizing in layout locations tests.
 * Fix more expected errors for some DSA functions
 * glspirv: don't cause aborted test runs.
 * Fix pipeline statistics test
 * use correct delete function for arrays
 * Fix PixelStorageModesTests
 * Fix broken layout binding tests
 * Force Popen to text mode
 * Fix epsilon calculation for RGB10_A2 pixel format
 * Disable dithering in nearest edge test cases
 * Return a valid format when GL_RGB8 is not treated as GL_RGBA8
 * Switch the branch to the master mustpass
 * Unicode and Python3 fixes for verification scripts
 * Check for astc_sliced_3d extension in negative API tests
Check for astc_sliced_3d extension in negative API tests

The ASTC sliced_3d extension allows support of 3D ASTC textures using 2D
blocks (interpreted as XxYx1 blocks of the 3D texture). That makes
passing the 2D ASTC format enums with a texture target of TEXTURE_3D
legal, so update the negative API tests to allow that case.

Components: OpenGL
VK-GL-CTS issue: 2741
Affects: dEQP-GLES3.functional.negative_api.texture.compressedteximage3d_invalid_astc_target
         dEQP-GLES3.functional.negative_api.texture.texstorage3d_invalid_astc_target

Change-Id: Ifd3c54d2819d11c3e771ad4a98682e266c27da41
(cherry picked from commit 6c72e55e2343f0b448c0707d0ae6b51f2baa3e61)
1 file changed
tree: adccefca612afa78781a4ff5a33fb0eb980158b4
  1. .editorconfig
  2. .github/
  3. .gitignore
  4. Android.mk
  5. AndroidGen.mk
  6. CMakeLists.txt
  7. CODE_OF_CONDUCT.md
  8. LICENSE
  9. MODULE_LICENSE_APACHE2
  10. NOTICE
  11. OWNERS
  12. README.md
  13. android/
  14. data/
  15. doc/
  16. execserver/
  17. executor/
  18. external/
  19. framework/
  20. modules/
  21. scripts/
  22. targets/
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/