Branch
Hash :
1d9b8d80
Author :
Date :
2023-01-24T16:50:32
Reland "Add support for glShaderBinary" This is a reland of commit 228973e73135924ddf6116e0b63eff5a1ccbf232 with the following fixes - 1. Apply patch from Yuly to fix chromium build errors 2. Fix ShaderBinaryTest instantiation call 3. Add ShaderBinaryTest to expectations file for IOS Original change's description: > Add support for glShaderBinary > > This patch adds the following - > 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. > 2. Compiler support to generate shader binaries. > 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for > Vulkan translator. > 4. Support to load GL_SHADER_BINARY_ANGLE binaries. > 5. end2end tests for glShaderBinary. > > Tests: ShaderBinaryTest* > Bug: angleproject:7833 > Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: angleproject:7833 Change-Id: I21135c52e2bae955342a99aff5631ba0e687eff1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4195852 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
Name
ANGLE_shader_binary
Name Strings
GL_ANGLE_shader_binary
Contributors
Jonah Taylor, Samsung
Mahmoud Kharsa, Samsung
Contacts
Mahmoud Kharsa, Samsung (m.kharsa 'at' samsung 'dot' com)
Notice
Copyright (c) 2023 The Khronos Group Inc. Copyright terms at
http://www.khronos.org/registry/speccopyright.html
Status
Draft.
Version
Version 1, January 03, 2023
Number
OpenGL ES Extension ###
Dependencies
OpenGL ES 2.0 is required.
Overview
This extension makes available a shader binary format, SHADER_BINARY_ANGLE.
It enables the loading of shader binaries pre-compiled with ANGLE.
New Types
None.
New Procedures and Functions
None.
New Tokens
Accepted by the <binaryFormat> parameter of ShaderBinary:
GL_SHADER_BINARY_ANGLE 0x96BB
Errors
An INVALID_VALUE is generated if the binary points to an incompatible
shader binary that was generated using a different version of ANGLE.
New State
None.
Issues
None.
Revision History
#1 - (January 03, 2023) Mahmoud Kharsa
Original draft