Commit c211c2f5 by Clemen Deng Committed by Commit Bot

Make proc table autogen use gl.xml data

Instead having the proc table be generated from proc_table_data.json which needed to be manually updated with changes, the proc table is now generated from data in gl.xml and egl.xml Bug: angleproject:3533 Change-Id: I773ea7615cc4ec1c9901def629b089d8d17328eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1660645 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent 3f8975e1
...@@ -742,14 +742,7 @@ def main(): ...@@ -742,14 +742,7 @@ def main():
# auto_script parameters. # auto_script parameters.
if len(sys.argv) > 1: if len(sys.argv) > 1:
inputs = [ inputs = ['entry_point_packed_gl_enums.json'] + registry_xml.xml_inputs
'egl.xml',
'egl_angle_ext.xml',
'entry_point_packed_gl_enums.json',
'gl.xml',
'gl_angle_ext.xml',
'registry_xml.py',
]
outputs = [ outputs = [
'../src/libANGLE/Context_gles_1_0_autogen.h', '../src/libANGLE/Context_gles_1_0_autogen.h',
'../src/libANGLE/Context_gles_2_0_autogen.h', '../src/libANGLE/Context_gles_2_0_autogen.h',
......
...@@ -13,6 +13,14 @@ ...@@ -13,6 +13,14 @@
import sys, os import sys, os
import xml.etree.ElementTree as etree import xml.etree.ElementTree as etree
xml_inputs = [
'gl.xml',
'gl_angle_ext.xml',
'egl.xml',
'egl_angle_ext.xml',
'registry_xml.py',
]
angle_extensions = [ angle_extensions = [
# ANGLE extensions # ANGLE extensions
"GL_CHROMIUM_bind_uniform_location", "GL_CHROMIUM_bind_uniform_location",
......
...@@ -94,13 +94,13 @@ ...@@ -94,13 +94,13 @@
"GL/EGL entry points:scripts/entry_point_packed_gl_enums.json": "GL/EGL entry points:scripts/entry_point_packed_gl_enums.json":
"28238b0f52826c3794eaa1aa940238bf", "28238b0f52826c3794eaa1aa940238bf",
"GL/EGL entry points:scripts/generate_entry_points.py": "GL/EGL entry points:scripts/generate_entry_points.py":
"1bd848cc592db50a4d3a5cea26a7b077", "df89665814d74ffd16c70f017f0ef4d7",
"GL/EGL entry points:scripts/gl.xml": "GL/EGL entry points:scripts/gl.xml":
"b470cb06b06cbbe7adb2c8129ec85708", "b470cb06b06cbbe7adb2c8129ec85708",
"GL/EGL entry points:scripts/gl_angle_ext.xml": "GL/EGL entry points:scripts/gl_angle_ext.xml":
"11e1eb2cbe51ae6e7b8705d3506846d5", "11e1eb2cbe51ae6e7b8705d3506846d5",
"GL/EGL entry points:scripts/registry_xml.py": "GL/EGL entry points:scripts/registry_xml.py":
"be904202ce40755daac33faf4123b9b9", "ea05778a62045f5413031611566a4db2",
"GL/EGL entry points:src/libANGLE/Context_gles_1_0_autogen.h": "GL/EGL entry points:src/libANGLE/Context_gles_1_0_autogen.h":
"f30ed90e4ec23f886bda9344d82dd529", "f30ed90e4ec23f886bda9344d82dd529",
"GL/EGL entry points:src/libANGLE/Context_gles_2_0_autogen.h": "GL/EGL entry points:src/libANGLE/Context_gles_2_0_autogen.h":
...@@ -154,7 +154,7 @@ ...@@ -154,7 +154,7 @@
"GL/EGL/WGL loader:scripts/generate_loader.py": "GL/EGL/WGL loader:scripts/generate_loader.py":
"5a7cd014230fe04664d9613e65399d42", "5a7cd014230fe04664d9613e65399d42",
"GL/EGL/WGL loader:scripts/registry_xml.py": "GL/EGL/WGL loader:scripts/registry_xml.py":
"be904202ce40755daac33faf4123b9b9", "ea05778a62045f5413031611566a4db2",
"GL/EGL/WGL loader:scripts/wgl.xml": "GL/EGL/WGL loader:scripts/wgl.xml":
"aa96419c582af2f6673430e2847693f4", "aa96419c582af2f6673430e2847693f4",
"GL/EGL/WGL loader:src/libEGL/egl_loader_autogen.cpp": "GL/EGL/WGL loader:src/libEGL/egl_loader_autogen.cpp":
...@@ -451,12 +451,20 @@ ...@@ -451,12 +451,20 @@
"5f591d220ee53b6e54a27d1523a3ab79", "5f591d220ee53b6e54a27d1523a3ab79",
"packed enum:src/common/packed_gl_enums.json": "packed enum:src/common/packed_gl_enums.json":
"3f730faeebe986cd3017432ad56cf203", "3f730faeebe986cd3017432ad56cf203",
"proc table:scripts/egl.xml":
"842e24514c4cfe09fba703c17a0fd292",
"proc table:scripts/egl_angle_ext.xml":
"fc2e249239fb1365f6d145cdf1a3cfcf",
"proc table:scripts/gl.xml":
"b470cb06b06cbbe7adb2c8129ec85708",
"proc table:scripts/gl_angle_ext.xml":
"11e1eb2cbe51ae6e7b8705d3506846d5",
"proc table:scripts/registry_xml.py":
"ea05778a62045f5413031611566a4db2",
"proc table:src/libGLESv2/gen_proc_table.py": "proc table:src/libGLESv2/gen_proc_table.py":
"3be3e8ed7fad58e8cc6fcf348da7b17d", "c3e4abfa19077cea098cb19bbfed4471",
"proc table:src/libGLESv2/proc_table_autogen.cpp": "proc table:src/libGLESv2/proc_table_autogen.cpp":
"7cf8dbd79fddffd89d2348d1210ba4ca", "11da3d411200208212c36f1d401beb72",
"proc table:src/libGLESv2/proc_table_data.json":
"4dfc7f64b7a44b93c83504d1c5332814",
"uniform type:src/common/gen_uniform_type_table.py": "uniform type:src/common/gen_uniform_type_table.py":
"9dd389f2b5793ba635169d61cef2dde9", "9dd389f2b5793ba635169d61cef2dde9",
"uniform type:src/common/uniform_type_info_autogen.cpp": "uniform type:src/common/uniform_type_info_autogen.cpp":
......
...@@ -11,8 +11,9 @@ ...@@ -11,8 +11,9 @@
import sys import sys
from datetime import date from datetime import date
sys.path.append('../../scripts')
import registry_xml
data_source_name = "proc_table_data.json"
out_file_name = "proc_table_autogen.cpp" out_file_name = "proc_table_autogen.cpp"
# The EGL_ANGLE_explicit_context extension is generated differently from other extensions. # The EGL_ANGLE_explicit_context extension is generated differently from other extensions.
...@@ -61,9 +62,8 @@ def main(): ...@@ -61,9 +62,8 @@ def main():
# auto_script parameters. # auto_script parameters.
if len(sys.argv) > 1: if len(sys.argv) > 1:
inputs = [data_source_name] inputs = ['../../scripts/' + source for source in registry_xml.xml_inputs]
outputs = [out_file_name] outputs = [out_file_name]
if sys.argv[1] == 'inputs': if sys.argv[1] == 'inputs':
print ','.join(inputs) print ','.join(inputs)
elif sys.argv[1] == 'outputs': elif sys.argv[1] == 'outputs':
...@@ -73,22 +73,49 @@ def main(): ...@@ -73,22 +73,49 @@ def main():
return 1 return 1
return 0 return 0
json_data = angle_format.load_json(data_source_name) glxml = registry_xml.RegistryXML('../../scripts/gl.xml', '../../scripts/gl_angle_ext.xml')
for annotation in ["2_0", "3_0", "3_1", "1_0"]:
name_prefix = "GL_ES_VERSION_"
if annotation[0] == '1':
name_prefix = "GL_VERSION_ES_CM_"
feature_name = "{}{}".format(name_prefix, annotation)
glxml.AddCommands(feature_name, annotation)
glxml.AddExtensionCommands(registry_xml.supported_extensions, ['gles2', 'gles1'])
data = glxml.all_cmd_names.get_all_commands()
eglxml = registry_xml.RegistryXML('../../scripts/egl.xml', '../../scripts/egl_angle_ext.xml')
for annotation in ["1_0", "1_1", "1_2", "1_3", "1_4", "1_5"]:
name_prefix = "EGL_VERSION_"
feature_name = "{}{}".format(name_prefix, annotation)
eglxml.AddCommands(feature_name, annotation)
eglxml.AddExtensionCommands(registry_xml.supported_egl_extensions, ['gles2', 'gles1'])
data.extend(eglxml.all_cmd_names.get_all_commands())
data.append("ANGLEGetDisplayPlatform")
data.append("ANGLEResetDisplayPlatform")
all_functions = {} all_functions = {}
for description, functions in json_data.iteritems(): for function in data:
for function in functions: if function.startswith("gl"):
if function.startswith("gl"): all_functions[function] = "gl::" + function[2:]
all_functions[function] = "gl::" + function[2:] # Special handling for EGL_ANGLE_explicit_context extension
# Special handling for EGL_ANGLE_explicit_context extension if support_egl_ANGLE_explicit_context:
if support_egl_ANGLE_explicit_context: all_functions[function + "ContextANGLE"] = "gl::" + function[2:] + "ContextANGLE"
all_functions[function + elif function.startswith("egl"):
"ContextANGLE"] = "gl::" + function[2:] + "ContextANGLE" all_functions[function] = "EGL_" + function[3:]
elif function.startswith("egl"): else:
all_functions[function] = "EGL_" + function[3:] all_functions[function] = function
else:
all_functions[function] = function
proc_data = [(' {"%s", P(%s)}' % (func, angle_func)) proc_data = [(' {"%s", P(%s)}' % (func, angle_func))
for func, angle_func in sorted(all_functions.iteritems())] for func, angle_func in sorted(all_functions.iteritems())]
...@@ -96,7 +123,7 @@ def main(): ...@@ -96,7 +123,7 @@ def main():
with open(out_file_name, 'w') as out_file: with open(out_file_name, 'w') as out_file:
output_cpp = template_cpp.format( output_cpp = template_cpp.format(
script_name=sys.argv[0], script_name=sys.argv[0],
data_source_name=data_source_name, data_source_name="gl.xml, gl_angle_ext.xml, egl.xml, egl_angle_ext.xml",
copyright_year=date.today().year, copyright_year=date.today().year,
proc_data=",\n".join(proc_data), proc_data=",\n".join(proc_data),
num_procs=len(proc_data)) num_procs=len(proc_data))
......
// GENERATED FILE - DO NOT EDIT. // GENERATED FILE - DO NOT EDIT.
// Generated by gen_proc_table.py using data from proc_table_data.json. // Generated by gen_proc_table.py using data from gl.xml, gl_angle_ext.xml, egl.xml,
// egl_angle_ext.xml.
// //
// Copyright 2019 The ANGLE Project Authors. All rights reserved. // Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
...@@ -152,12 +153,16 @@ ProcEntry g_procTable[] = { ...@@ -152,12 +153,16 @@ ProcEntry g_procTable[] = {
P(gl::BindFragmentInputLocationCHROMIUMContextANGLE)}, P(gl::BindFragmentInputLocationCHROMIUMContextANGLE)},
{"glBindFramebuffer", P(gl::BindFramebuffer)}, {"glBindFramebuffer", P(gl::BindFramebuffer)},
{"glBindFramebufferContextANGLE", P(gl::BindFramebufferContextANGLE)}, {"glBindFramebufferContextANGLE", P(gl::BindFramebufferContextANGLE)},
{"glBindFramebufferOES", P(gl::BindFramebufferOES)},
{"glBindFramebufferOESContextANGLE", P(gl::BindFramebufferOESContextANGLE)},
{"glBindImageTexture", P(gl::BindImageTexture)}, {"glBindImageTexture", P(gl::BindImageTexture)},
{"glBindImageTextureContextANGLE", P(gl::BindImageTextureContextANGLE)}, {"glBindImageTextureContextANGLE", P(gl::BindImageTextureContextANGLE)},
{"glBindProgramPipeline", P(gl::BindProgramPipeline)}, {"glBindProgramPipeline", P(gl::BindProgramPipeline)},
{"glBindProgramPipelineContextANGLE", P(gl::BindProgramPipelineContextANGLE)}, {"glBindProgramPipelineContextANGLE", P(gl::BindProgramPipelineContextANGLE)},
{"glBindRenderbuffer", P(gl::BindRenderbuffer)}, {"glBindRenderbuffer", P(gl::BindRenderbuffer)},
{"glBindRenderbufferContextANGLE", P(gl::BindRenderbufferContextANGLE)}, {"glBindRenderbufferContextANGLE", P(gl::BindRenderbufferContextANGLE)},
{"glBindRenderbufferOES", P(gl::BindRenderbufferOES)},
{"glBindRenderbufferOESContextANGLE", P(gl::BindRenderbufferOESContextANGLE)},
{"glBindSampler", P(gl::BindSampler)}, {"glBindSampler", P(gl::BindSampler)},
{"glBindSamplerContextANGLE", P(gl::BindSamplerContextANGLE)}, {"glBindSamplerContextANGLE", P(gl::BindSamplerContextANGLE)},
{"glBindTexture", P(gl::BindTexture)}, {"glBindTexture", P(gl::BindTexture)},
...@@ -194,6 +199,8 @@ ProcEntry g_procTable[] = { ...@@ -194,6 +199,8 @@ ProcEntry g_procTable[] = {
{"glBufferSubDataContextANGLE", P(gl::BufferSubDataContextANGLE)}, {"glBufferSubDataContextANGLE", P(gl::BufferSubDataContextANGLE)},
{"glCheckFramebufferStatus", P(gl::CheckFramebufferStatus)}, {"glCheckFramebufferStatus", P(gl::CheckFramebufferStatus)},
{"glCheckFramebufferStatusContextANGLE", P(gl::CheckFramebufferStatusContextANGLE)}, {"glCheckFramebufferStatusContextANGLE", P(gl::CheckFramebufferStatusContextANGLE)},
{"glCheckFramebufferStatusOES", P(gl::CheckFramebufferStatusOES)},
{"glCheckFramebufferStatusOESContextANGLE", P(gl::CheckFramebufferStatusOESContextANGLE)},
{"glClear", P(gl::Clear)}, {"glClear", P(gl::Clear)},
{"glClearBufferfi", P(gl::ClearBufferfi)}, {"glClearBufferfi", P(gl::ClearBufferfi)},
{"glClearBufferfiContextANGLE", P(gl::ClearBufferfiContextANGLE)}, {"glClearBufferfiContextANGLE", P(gl::ClearBufferfiContextANGLE)},
...@@ -309,6 +316,8 @@ ProcEntry g_procTable[] = { ...@@ -309,6 +316,8 @@ ProcEntry g_procTable[] = {
{"glDeleteFencesNVContextANGLE", P(gl::DeleteFencesNVContextANGLE)}, {"glDeleteFencesNVContextANGLE", P(gl::DeleteFencesNVContextANGLE)},
{"glDeleteFramebuffers", P(gl::DeleteFramebuffers)}, {"glDeleteFramebuffers", P(gl::DeleteFramebuffers)},
{"glDeleteFramebuffersContextANGLE", P(gl::DeleteFramebuffersContextANGLE)}, {"glDeleteFramebuffersContextANGLE", P(gl::DeleteFramebuffersContextANGLE)},
{"glDeleteFramebuffersOES", P(gl::DeleteFramebuffersOES)},
{"glDeleteFramebuffersOESContextANGLE", P(gl::DeleteFramebuffersOESContextANGLE)},
{"glDeleteMemoryObjectsEXT", P(gl::DeleteMemoryObjectsEXT)}, {"glDeleteMemoryObjectsEXT", P(gl::DeleteMemoryObjectsEXT)},
{"glDeleteMemoryObjectsEXTContextANGLE", P(gl::DeleteMemoryObjectsEXTContextANGLE)}, {"glDeleteMemoryObjectsEXTContextANGLE", P(gl::DeleteMemoryObjectsEXTContextANGLE)},
{"glDeletePathsCHROMIUM", P(gl::DeletePathsCHROMIUM)}, {"glDeletePathsCHROMIUM", P(gl::DeletePathsCHROMIUM)},
...@@ -323,6 +332,8 @@ ProcEntry g_procTable[] = { ...@@ -323,6 +332,8 @@ ProcEntry g_procTable[] = {
{"glDeleteQueriesEXTContextANGLE", P(gl::DeleteQueriesEXTContextANGLE)}, {"glDeleteQueriesEXTContextANGLE", P(gl::DeleteQueriesEXTContextANGLE)},
{"glDeleteRenderbuffers", P(gl::DeleteRenderbuffers)}, {"glDeleteRenderbuffers", P(gl::DeleteRenderbuffers)},
{"glDeleteRenderbuffersContextANGLE", P(gl::DeleteRenderbuffersContextANGLE)}, {"glDeleteRenderbuffersContextANGLE", P(gl::DeleteRenderbuffersContextANGLE)},
{"glDeleteRenderbuffersOES", P(gl::DeleteRenderbuffersOES)},
{"glDeleteRenderbuffersOESContextANGLE", P(gl::DeleteRenderbuffersOESContextANGLE)},
{"glDeleteSamplers", P(gl::DeleteSamplers)}, {"glDeleteSamplers", P(gl::DeleteSamplers)},
{"glDeleteSamplersContextANGLE", P(gl::DeleteSamplersContextANGLE)}, {"glDeleteSamplersContextANGLE", P(gl::DeleteSamplersContextANGLE)},
{"glDeleteSemaphoresEXT", P(gl::DeleteSemaphoresEXT)}, {"glDeleteSemaphoresEXT", P(gl::DeleteSemaphoresEXT)},
...@@ -444,8 +455,12 @@ ProcEntry g_procTable[] = { ...@@ -444,8 +455,12 @@ ProcEntry g_procTable[] = {
{"glFramebufferParameteriContextANGLE", P(gl::FramebufferParameteriContextANGLE)}, {"glFramebufferParameteriContextANGLE", P(gl::FramebufferParameteriContextANGLE)},
{"glFramebufferRenderbuffer", P(gl::FramebufferRenderbuffer)}, {"glFramebufferRenderbuffer", P(gl::FramebufferRenderbuffer)},
{"glFramebufferRenderbufferContextANGLE", P(gl::FramebufferRenderbufferContextANGLE)}, {"glFramebufferRenderbufferContextANGLE", P(gl::FramebufferRenderbufferContextANGLE)},
{"glFramebufferRenderbufferOES", P(gl::FramebufferRenderbufferOES)},
{"glFramebufferRenderbufferOESContextANGLE", P(gl::FramebufferRenderbufferOESContextANGLE)},
{"glFramebufferTexture2D", P(gl::FramebufferTexture2D)}, {"glFramebufferTexture2D", P(gl::FramebufferTexture2D)},
{"glFramebufferTexture2DContextANGLE", P(gl::FramebufferTexture2DContextANGLE)}, {"glFramebufferTexture2DContextANGLE", P(gl::FramebufferTexture2DContextANGLE)},
{"glFramebufferTexture2DOES", P(gl::FramebufferTexture2DOES)},
{"glFramebufferTexture2DOESContextANGLE", P(gl::FramebufferTexture2DOESContextANGLE)},
{"glFramebufferTextureEXT", P(gl::FramebufferTextureEXT)}, {"glFramebufferTextureEXT", P(gl::FramebufferTextureEXT)},
{"glFramebufferTextureEXTContextANGLE", P(gl::FramebufferTextureEXTContextANGLE)}, {"glFramebufferTextureEXTContextANGLE", P(gl::FramebufferTextureEXTContextANGLE)},
{"glFramebufferTextureLayer", P(gl::FramebufferTextureLayer)}, {"glFramebufferTextureLayer", P(gl::FramebufferTextureLayer)},
...@@ -465,6 +480,8 @@ ProcEntry g_procTable[] = { ...@@ -465,6 +480,8 @@ ProcEntry g_procTable[] = {
{"glGenFencesNVContextANGLE", P(gl::GenFencesNVContextANGLE)}, {"glGenFencesNVContextANGLE", P(gl::GenFencesNVContextANGLE)},
{"glGenFramebuffers", P(gl::GenFramebuffers)}, {"glGenFramebuffers", P(gl::GenFramebuffers)},
{"glGenFramebuffersContextANGLE", P(gl::GenFramebuffersContextANGLE)}, {"glGenFramebuffersContextANGLE", P(gl::GenFramebuffersContextANGLE)},
{"glGenFramebuffersOES", P(gl::GenFramebuffersOES)},
{"glGenFramebuffersOESContextANGLE", P(gl::GenFramebuffersOESContextANGLE)},
{"glGenPathsCHROMIUM", P(gl::GenPathsCHROMIUM)}, {"glGenPathsCHROMIUM", P(gl::GenPathsCHROMIUM)},
{"glGenPathsCHROMIUMContextANGLE", P(gl::GenPathsCHROMIUMContextANGLE)}, {"glGenPathsCHROMIUMContextANGLE", P(gl::GenPathsCHROMIUMContextANGLE)},
{"glGenProgramPipelines", P(gl::GenProgramPipelines)}, {"glGenProgramPipelines", P(gl::GenProgramPipelines)},
...@@ -475,6 +492,8 @@ ProcEntry g_procTable[] = { ...@@ -475,6 +492,8 @@ ProcEntry g_procTable[] = {
{"glGenQueriesEXTContextANGLE", P(gl::GenQueriesEXTContextANGLE)}, {"glGenQueriesEXTContextANGLE", P(gl::GenQueriesEXTContextANGLE)},
{"glGenRenderbuffers", P(gl::GenRenderbuffers)}, {"glGenRenderbuffers", P(gl::GenRenderbuffers)},
{"glGenRenderbuffersContextANGLE", P(gl::GenRenderbuffersContextANGLE)}, {"glGenRenderbuffersContextANGLE", P(gl::GenRenderbuffersContextANGLE)},
{"glGenRenderbuffersOES", P(gl::GenRenderbuffersOES)},
{"glGenRenderbuffersOESContextANGLE", P(gl::GenRenderbuffersOESContextANGLE)},
{"glGenSamplers", P(gl::GenSamplers)}, {"glGenSamplers", P(gl::GenSamplers)},
{"glGenSamplersContextANGLE", P(gl::GenSamplersContextANGLE)}, {"glGenSamplersContextANGLE", P(gl::GenSamplersContextANGLE)},
{"glGenSemaphoresEXT", P(gl::GenSemaphoresEXT)}, {"glGenSemaphoresEXT", P(gl::GenSemaphoresEXT)},
...@@ -489,6 +508,8 @@ ProcEntry g_procTable[] = { ...@@ -489,6 +508,8 @@ ProcEntry g_procTable[] = {
{"glGenVertexArraysOESContextANGLE", P(gl::GenVertexArraysOESContextANGLE)}, {"glGenVertexArraysOESContextANGLE", P(gl::GenVertexArraysOESContextANGLE)},
{"glGenerateMipmap", P(gl::GenerateMipmap)}, {"glGenerateMipmap", P(gl::GenerateMipmap)},
{"glGenerateMipmapContextANGLE", P(gl::GenerateMipmapContextANGLE)}, {"glGenerateMipmapContextANGLE", P(gl::GenerateMipmapContextANGLE)},
{"glGenerateMipmapOES", P(gl::GenerateMipmapOES)},
{"glGenerateMipmapOESContextANGLE", P(gl::GenerateMipmapOESContextANGLE)},
{"glGetActiveAttrib", P(gl::GetActiveAttrib)}, {"glGetActiveAttrib", P(gl::GetActiveAttrib)},
{"glGetActiveAttribContextANGLE", P(gl::GetActiveAttribContextANGLE)}, {"glGetActiveAttribContextANGLE", P(gl::GetActiveAttribContextANGLE)},
{"glGetActiveUniform", P(gl::GetActiveUniform)}, {"glGetActiveUniform", P(gl::GetActiveUniform)},
...@@ -553,6 +574,9 @@ ProcEntry g_procTable[] = { ...@@ -553,6 +574,9 @@ ProcEntry g_procTable[] = {
{"glGetFramebufferAttachmentParameteriv", P(gl::GetFramebufferAttachmentParameteriv)}, {"glGetFramebufferAttachmentParameteriv", P(gl::GetFramebufferAttachmentParameteriv)},
{"glGetFramebufferAttachmentParameterivContextANGLE", {"glGetFramebufferAttachmentParameterivContextANGLE",
P(gl::GetFramebufferAttachmentParameterivContextANGLE)}, P(gl::GetFramebufferAttachmentParameterivContextANGLE)},
{"glGetFramebufferAttachmentParameterivOES", P(gl::GetFramebufferAttachmentParameterivOES)},
{"glGetFramebufferAttachmentParameterivOESContextANGLE",
P(gl::GetFramebufferAttachmentParameterivOESContextANGLE)},
{"glGetFramebufferAttachmentParameterivRobustANGLE", {"glGetFramebufferAttachmentParameterivRobustANGLE",
P(gl::GetFramebufferAttachmentParameterivRobustANGLE)}, P(gl::GetFramebufferAttachmentParameterivRobustANGLE)},
{"glGetFramebufferAttachmentParameterivRobustANGLEContextANGLE", {"glGetFramebufferAttachmentParameterivRobustANGLEContextANGLE",
...@@ -675,6 +699,9 @@ ProcEntry g_procTable[] = { ...@@ -675,6 +699,9 @@ ProcEntry g_procTable[] = {
{"glGetQueryivRobustANGLEContextANGLE", P(gl::GetQueryivRobustANGLEContextANGLE)}, {"glGetQueryivRobustANGLEContextANGLE", P(gl::GetQueryivRobustANGLEContextANGLE)},
{"glGetRenderbufferParameteriv", P(gl::GetRenderbufferParameteriv)}, {"glGetRenderbufferParameteriv", P(gl::GetRenderbufferParameteriv)},
{"glGetRenderbufferParameterivContextANGLE", P(gl::GetRenderbufferParameterivContextANGLE)}, {"glGetRenderbufferParameterivContextANGLE", P(gl::GetRenderbufferParameterivContextANGLE)},
{"glGetRenderbufferParameterivOES", P(gl::GetRenderbufferParameterivOES)},
{"glGetRenderbufferParameterivOESContextANGLE",
P(gl::GetRenderbufferParameterivOESContextANGLE)},
{"glGetRenderbufferParameterivRobustANGLE", P(gl::GetRenderbufferParameterivRobustANGLE)}, {"glGetRenderbufferParameterivRobustANGLE", P(gl::GetRenderbufferParameterivRobustANGLE)},
{"glGetRenderbufferParameterivRobustANGLEContextANGLE", {"glGetRenderbufferParameterivRobustANGLEContextANGLE",
P(gl::GetRenderbufferParameterivRobustANGLEContextANGLE)}, P(gl::GetRenderbufferParameterivRobustANGLEContextANGLE)},
...@@ -723,6 +750,12 @@ ProcEntry g_procTable[] = { ...@@ -723,6 +750,12 @@ ProcEntry g_procTable[] = {
{"glGetTexEnvivContextANGLE", P(gl::GetTexEnvivContextANGLE)}, {"glGetTexEnvivContextANGLE", P(gl::GetTexEnvivContextANGLE)},
{"glGetTexEnvxv", P(gl::GetTexEnvxv)}, {"glGetTexEnvxv", P(gl::GetTexEnvxv)},
{"glGetTexEnvxvContextANGLE", P(gl::GetTexEnvxvContextANGLE)}, {"glGetTexEnvxvContextANGLE", P(gl::GetTexEnvxvContextANGLE)},
{"glGetTexGenfvOES", P(gl::GetTexGenfvOES)},
{"glGetTexGenfvOESContextANGLE", P(gl::GetTexGenfvOESContextANGLE)},
{"glGetTexGenivOES", P(gl::GetTexGenivOES)},
{"glGetTexGenivOESContextANGLE", P(gl::GetTexGenivOESContextANGLE)},
{"glGetTexGenxvOES", P(gl::GetTexGenxvOES)},
{"glGetTexGenxvOESContextANGLE", P(gl::GetTexGenxvOESContextANGLE)},
{"glGetTexLevelParameterfv", P(gl::GetTexLevelParameterfv)}, {"glGetTexLevelParameterfv", P(gl::GetTexLevelParameterfv)},
{"glGetTexLevelParameterfvANGLE", P(gl::GetTexLevelParameterfvANGLE)}, {"glGetTexLevelParameterfvANGLE", P(gl::GetTexLevelParameterfvANGLE)},
{"glGetTexLevelParameterfvANGLEContextANGLE", P(gl::GetTexLevelParameterfvANGLEContextANGLE)}, {"glGetTexLevelParameterfvANGLEContextANGLE", P(gl::GetTexLevelParameterfvANGLEContextANGLE)},
...@@ -837,6 +870,8 @@ ProcEntry g_procTable[] = { ...@@ -837,6 +870,8 @@ ProcEntry g_procTable[] = {
{"glIsFenceNVContextANGLE", P(gl::IsFenceNVContextANGLE)}, {"glIsFenceNVContextANGLE", P(gl::IsFenceNVContextANGLE)},
{"glIsFramebuffer", P(gl::IsFramebuffer)}, {"glIsFramebuffer", P(gl::IsFramebuffer)},
{"glIsFramebufferContextANGLE", P(gl::IsFramebufferContextANGLE)}, {"glIsFramebufferContextANGLE", P(gl::IsFramebufferContextANGLE)},
{"glIsFramebufferOES", P(gl::IsFramebufferOES)},
{"glIsFramebufferOESContextANGLE", P(gl::IsFramebufferOESContextANGLE)},
{"glIsMemoryObjectEXT", P(gl::IsMemoryObjectEXT)}, {"glIsMemoryObjectEXT", P(gl::IsMemoryObjectEXT)},
{"glIsMemoryObjectEXTContextANGLE", P(gl::IsMemoryObjectEXTContextANGLE)}, {"glIsMemoryObjectEXTContextANGLE", P(gl::IsMemoryObjectEXTContextANGLE)},
{"glIsPathCHROMIUM", P(gl::IsPathCHROMIUM)}, {"glIsPathCHROMIUM", P(gl::IsPathCHROMIUM)},
...@@ -851,6 +886,8 @@ ProcEntry g_procTable[] = { ...@@ -851,6 +886,8 @@ ProcEntry g_procTable[] = {
{"glIsQueryEXTContextANGLE", P(gl::IsQueryEXTContextANGLE)}, {"glIsQueryEXTContextANGLE", P(gl::IsQueryEXTContextANGLE)},
{"glIsRenderbuffer", P(gl::IsRenderbuffer)}, {"glIsRenderbuffer", P(gl::IsRenderbuffer)},
{"glIsRenderbufferContextANGLE", P(gl::IsRenderbufferContextANGLE)}, {"glIsRenderbufferContextANGLE", P(gl::IsRenderbufferContextANGLE)},
{"glIsRenderbufferOES", P(gl::IsRenderbufferOES)},
{"glIsRenderbufferOESContextANGLE", P(gl::IsRenderbufferOESContextANGLE)},
{"glIsSampler", P(gl::IsSampler)}, {"glIsSampler", P(gl::IsSampler)},
{"glIsSamplerContextANGLE", P(gl::IsSamplerContextANGLE)}, {"glIsSamplerContextANGLE", P(gl::IsSamplerContextANGLE)},
{"glIsSemaphoreEXT", P(gl::IsSemaphoreEXT)}, {"glIsSemaphoreEXT", P(gl::IsSemaphoreEXT)},
...@@ -1107,6 +1144,8 @@ ProcEntry g_procTable[] = { ...@@ -1107,6 +1144,8 @@ ProcEntry g_procTable[] = {
P(gl::RenderbufferStorageMultisampleANGLEContextANGLE)}, P(gl::RenderbufferStorageMultisampleANGLEContextANGLE)},
{"glRenderbufferStorageMultisampleContextANGLE", {"glRenderbufferStorageMultisampleContextANGLE",
P(gl::RenderbufferStorageMultisampleContextANGLE)}, P(gl::RenderbufferStorageMultisampleContextANGLE)},
{"glRenderbufferStorageOES", P(gl::RenderbufferStorageOES)},
{"glRenderbufferStorageOESContextANGLE", P(gl::RenderbufferStorageOESContextANGLE)},
{"glRequestExtensionANGLE", P(gl::RequestExtensionANGLE)}, {"glRequestExtensionANGLE", P(gl::RequestExtensionANGLE)},
{"glRequestExtensionANGLEContextANGLE", P(gl::RequestExtensionANGLEContextANGLE)}, {"glRequestExtensionANGLEContextANGLE", P(gl::RequestExtensionANGLEContextANGLE)},
{"glResumeTransformFeedback", P(gl::ResumeTransformFeedback)}, {"glResumeTransformFeedback", P(gl::ResumeTransformFeedback)},
...@@ -1217,6 +1256,18 @@ ProcEntry g_procTable[] = { ...@@ -1217,6 +1256,18 @@ ProcEntry g_procTable[] = {
{"glTexEnvxContextANGLE", P(gl::TexEnvxContextANGLE)}, {"glTexEnvxContextANGLE", P(gl::TexEnvxContextANGLE)},
{"glTexEnvxv", P(gl::TexEnvxv)}, {"glTexEnvxv", P(gl::TexEnvxv)},
{"glTexEnvxvContextANGLE", P(gl::TexEnvxvContextANGLE)}, {"glTexEnvxvContextANGLE", P(gl::TexEnvxvContextANGLE)},
{"glTexGenfOES", P(gl::TexGenfOES)},
{"glTexGenfOESContextANGLE", P(gl::TexGenfOESContextANGLE)},
{"glTexGenfvOES", P(gl::TexGenfvOES)},
{"glTexGenfvOESContextANGLE", P(gl::TexGenfvOESContextANGLE)},
{"glTexGeniOES", P(gl::TexGeniOES)},
{"glTexGeniOESContextANGLE", P(gl::TexGeniOESContextANGLE)},
{"glTexGenivOES", P(gl::TexGenivOES)},
{"glTexGenivOESContextANGLE", P(gl::TexGenivOESContextANGLE)},
{"glTexGenxOES", P(gl::TexGenxOES)},
{"glTexGenxOESContextANGLE", P(gl::TexGenxOESContextANGLE)},
{"glTexGenxvOES", P(gl::TexGenxvOES)},
{"glTexGenxvOESContextANGLE", P(gl::TexGenxvOESContextANGLE)},
{"glTexImage2D", P(gl::TexImage2D)}, {"glTexImage2D", P(gl::TexImage2D)},
{"glTexImage2DContextANGLE", P(gl::TexImage2DContextANGLE)}, {"glTexImage2DContextANGLE", P(gl::TexImage2DContextANGLE)},
{"glTexImage2DRobustANGLE", P(gl::TexImage2DRobustANGLE)}, {"glTexImage2DRobustANGLE", P(gl::TexImage2DRobustANGLE)},
...@@ -1249,6 +1300,8 @@ ProcEntry g_procTable[] = { ...@@ -1249,6 +1300,8 @@ ProcEntry g_procTable[] = {
{"glTexParameterxContextANGLE", P(gl::TexParameterxContextANGLE)}, {"glTexParameterxContextANGLE", P(gl::TexParameterxContextANGLE)},
{"glTexParameterxv", P(gl::TexParameterxv)}, {"glTexParameterxv", P(gl::TexParameterxv)},
{"glTexParameterxvContextANGLE", P(gl::TexParameterxvContextANGLE)}, {"glTexParameterxvContextANGLE", P(gl::TexParameterxvContextANGLE)},
{"glTexStorage1DEXT", P(gl::TexStorage1DEXT)},
{"glTexStorage1DEXTContextANGLE", P(gl::TexStorage1DEXTContextANGLE)},
{"glTexStorage2D", P(gl::TexStorage2D)}, {"glTexStorage2D", P(gl::TexStorage2D)},
{"glTexStorage2DContextANGLE", P(gl::TexStorage2DContextANGLE)}, {"glTexStorage2DContextANGLE", P(gl::TexStorage2DContextANGLE)},
{"glTexStorage2DEXT", P(gl::TexStorage2DEXT)}, {"glTexStorage2DEXT", P(gl::TexStorage2DEXT)},
...@@ -1420,5 +1473,5 @@ ProcEntry g_procTable[] = { ...@@ -1420,5 +1473,5 @@ ProcEntry g_procTable[] = {
{"glWeightPointerOES", P(gl::WeightPointerOES)}, {"glWeightPointerOES", P(gl::WeightPointerOES)},
{"glWeightPointerOESContextANGLE", P(gl::WeightPointerOESContextANGLE)}}; {"glWeightPointerOESContextANGLE", P(gl::WeightPointerOESContextANGLE)}};
size_t g_numProcs = 1334; size_t g_numProcs = 1384;
} // namespace egl } // namespace egl
{
"GLES1 core": [
"glAlphaFunc",
"glClearColor",
"glClearDepthf",
"glClipPlanef",
"glColor4f",
"glDepthRangef",
"glFogf",
"glFogfv",
"glFrustumf",
"glGetClipPlanef",
"glGetFloatv",
"glGetLightfv",
"glGetMaterialfv",
"glGetTexEnvfv",
"glGetTexParameterfv",
"glLightModelf",
"glLightModelfv",
"glLightf",
"glLightfv",
"glLineWidth",
"glLoadMatrixf",
"glMaterialf",
"glMaterialfv",
"glMultMatrixf",
"glMultiTexCoord4f",
"glNormal3f",
"glOrthof",
"glPointParameterf",
"glPointParameterfv",
"glPointSize",
"glPolygonOffset",
"glRotatef",
"glScalef",
"glTexEnvf",
"glTexEnvfv",
"glTexParameterf",
"glTexParameterfv",
"glTranslatef",
"glActiveTexture",
"glAlphaFuncx",
"glBindBuffer",
"glBindTexture",
"glBlendFunc",
"glBufferData",
"glBufferSubData",
"glClear",
"glClearColorx",
"glClearDepthx",
"glClearStencil",
"glClientActiveTexture",
"glClipPlanex",
"glColor4ub",
"glColor4x",
"glColorMask",
"glColorPointer",
"glCompressedTexImage2D",
"glCompressedTexSubImage2D",
"glCopyTexImage2D",
"glCopyTexSubImage2D",
"glCullFace",
"glDeleteBuffers",
"glDeleteTextures",
"glDepthFunc",
"glDepthMask",
"glDepthRangex",
"glDisable",
"glDisableClientState",
"glDrawArrays",
"glDrawElements",
"glEnable",
"glEnableClientState",
"glFinish",
"glFlush",
"glFogx",
"glFogxv",
"glFrontFace",
"glFrustumx",
"glGetBooleanv",
"glGetBufferParameteriv",
"glGetClipPlanex",
"glGenBuffers",
"glGenTextures",
"glGetError",
"glGetFixedv",
"glGetIntegerv",
"glGetLightxv",
"glGetMaterialxv",
"glGetPointerv",
"glGetString",
"glGetTexEnviv",
"glGetTexEnvxv",
"glGetTexParameteriv",
"glGetTexParameterxv",
"glHint",
"glIsBuffer",
"glIsEnabled",
"glIsTexture",
"glLightModelx",
"glLightModelxv",
"glLightx",
"glLightxv",
"glLineWidthx",
"glLoadIdentity",
"glLoadMatrixx",
"glLogicOp",
"glMaterialx",
"glMaterialxv",
"glMatrixMode",
"glMultMatrixx",
"glMultiTexCoord4x",
"glNormal3x",
"glNormalPointer",
"glOrthox",
"glPixelStorei",
"glPointParameterx",
"glPointParameterxv",
"glPointSizex",
"glPolygonOffsetx",
"glPopMatrix",
"glPushMatrix",
"glReadPixels",
"glRotatex",
"glSampleCoverage",
"glSampleCoveragex",
"glScalex",
"glScissor",
"glShadeModel",
"glStencilFunc",
"glStencilMask",
"glStencilOp",
"glTexCoordPointer",
"glTexEnvi",
"glTexEnvx",
"glTexEnviv",
"glTexEnvxv",
"glTexImage2D",
"glTexParameteri",
"glTexParameterx",
"glTexParameteriv",
"glTexParameterxv",
"glTexSubImage2D",
"glTranslatex",
"glVertexPointer",
"glViewport"
],
"GL_OES_draw_texture": [
"glDrawTexsOES",
"glDrawTexiOES",
"glDrawTexxOES",
"glDrawTexsvOES",
"glDrawTexivOES",
"glDrawTexxvOES",
"glDrawTexfOES",
"glDrawTexfvOES"
],
"GL_OES_matrix_palette": [
"glCurrentPaletteMatrixOES",
"glLoadPaletteFromModelViewMatrixOES",
"glMatrixIndexPointerOES",
"glWeightPointerOES"
],
"GL_OES_point_size_array": [
"glPointSizePointerOES"
],
"GL_OES_query_matrix": [
"glQueryMatrixxOES"
],
"GLES2 core": [
"glActiveTexture",
"glAttachShader",
"glBindAttribLocation",
"glBindBuffer",
"glBindFramebuffer",
"glBindRenderbuffer",
"glBindTexture",
"glBlendColor",
"glBlendEquation",
"glBlendEquationSeparate",
"glBlendFunc",
"glBlendFuncSeparate",
"glBufferData",
"glBufferSubData",
"glCheckFramebufferStatus",
"glClear",
"glClearColor",
"glClearDepthf",
"glClearStencil",
"glCompileShader",
"glColorMask",
"glCompressedTexImage2D",
"glCompressedTexSubImage2D",
"glCopyTexImage2D",
"glCopyTexSubImage2D",
"glCreateProgram",
"glCreateShader",
"glCullFace",
"glDeleteBuffers",
"glDeleteFramebuffers",
"glDeleteProgram",
"glDeleteRenderbuffers",
"glDeleteShader",
"glDeleteTextures",
"glDepthFunc",
"glDepthMask",
"glDepthRangef",
"glDetachShader",
"glDisable",
"glDisableVertexAttribArray",
"glDrawArrays",
"glDrawElements",
"glEnable",
"glEnableVertexAttribArray",
"glFinish",
"glFlush",
"glFramebufferRenderbuffer",
"glFramebufferTexture2D",
"glFrontFace",
"glGenBuffers",
"glGenerateMipmap",
"glGenFramebuffers",
"glGenRenderbuffers",
"glGenTextures",
"glGetActiveAttrib",
"glGetActiveUniform",
"glGetAttachedShaders",
"glGetAttribLocation",
"glGetBooleanv",
"glGetBufferParameteriv",
"glGetError",
"glGetFloatv",
"glGetFramebufferAttachmentParameteriv",
"glGetIntegerv",
"glGetProgramiv",
"glGetProgramInfoLog",
"glGetRenderbufferParameteriv",
"glGetShaderiv",
"glGetShaderInfoLog",
"glGetShaderPrecisionFormat",
"glGetShaderSource",
"glGetString",
"glGetTexParameterfv",
"glGetTexParameteriv",
"glGetUniformfv",
"glGetUniformiv",
"glGetUniformLocation",
"glGetVertexAttribfv",
"glGetVertexAttribiv",
"glGetVertexAttribPointerv",
"glHint",
"glIsBuffer",
"glIsEnabled",
"glIsFramebuffer",
"glIsProgram",
"glIsRenderbuffer",
"glIsShader",
"glIsTexture",
"glLineWidth",
"glLinkProgram",
"glPixelStorei",
"glPolygonOffset",
"glReadPixels",
"glReleaseShaderCompiler",
"glRenderbufferStorage",
"glSampleCoverage",
"glScissor",
"glShaderBinary",
"glShaderSource",
"glStencilFunc",
"glStencilFuncSeparate",
"glStencilMask",
"glStencilMaskSeparate",
"glStencilOp",
"glStencilOpSeparate",
"glTexImage2D",
"glTexParameterf",
"glTexParameterfv",
"glTexParameteri",
"glTexParameteriv",
"glTexSubImage2D",
"glUniform1f",
"glUniform1fv",
"glUniform1i",
"glUniform1iv",
"glUniform2f",
"glUniform2fv",
"glUniform2i",
"glUniform2iv",
"glUniform3f",
"glUniform3fv",
"glUniform3i",
"glUniform3iv",
"glUniform4f",
"glUniform4fv",
"glUniform4i",
"glUniform4iv",
"glUniformMatrix2fv",
"glUniformMatrix3fv",
"glUniformMatrix4fv",
"glUseProgram",
"glValidateProgram",
"glVertexAttrib1f",
"glVertexAttrib1fv",
"glVertexAttrib2f",
"glVertexAttrib2fv",
"glVertexAttrib3f",
"glVertexAttrib3fv",
"glVertexAttrib4f",
"glVertexAttrib4fv",
"glVertexAttribPointer",
"glViewport"
],
"GL_ANGLE_framebuffer_blit": [
"glBlitFramebufferANGLE"
],
"GL_ANGLE_framebuffer_multisample": [
"glRenderbufferStorageMultisampleANGLE"
],
"GL_EXT_discard_framebuffer": [
"glDiscardFramebufferEXT"
],
"GL_NV_fence": [
"glDeleteFencesNV",
"glGenFencesNV",
"glIsFenceNV",
"glTestFenceNV",
"glGetFenceivNV",
"glFinishFenceNV",
"glSetFenceNV"
],
"GL_ANGLE_translated_shader_source": [
"glGetTranslatedShaderSourceANGLE"
],
"GL_CHROMIUM_framebuffer_mixed_samples": [
"glMatrixLoadfCHROMIUM",
"glMatrixLoadIdentityCHROMIUM",
"glCoverageModulationCHROMIUM"
],
"GL_CHROMIUM_path_rendering": [
"glGenPathsCHROMIUM",
"glDeletePathsCHROMIUM",
"glIsPathCHROMIUM",
"glPathCommandsCHROMIUM",
"glPathParameterfCHROMIUM",
"glPathParameteriCHROMIUM",
"glGetPathParameterfvCHROMIUM",
"glGetPathParameterivCHROMIUM",
"glPathStencilFuncCHROMIUM",
"glStencilFillPathCHROMIUM",
"glStencilStrokePathCHROMIUM",
"glCoverFillPathCHROMIUM",
"glCoverStrokePathCHROMIUM",
"glStencilThenCoverFillPathCHROMIUM",
"glStencilThenCoverStrokePathCHROMIUM",
"glCoverFillPathInstancedCHROMIUM",
"glCoverStrokePathInstancedCHROMIUM",
"glStencilFillPathInstancedCHROMIUM",
"glStencilStrokePathInstancedCHROMIUM",
"glStencilThenCoverFillPathInstancedCHROMIUM",
"glStencilThenCoverStrokePathInstancedCHROMIUM",
"glBindFragmentInputLocationCHROMIUM",
"glProgramPathFragmentInputGenCHROMIUM"
],
"GL_EXT_blend_func_extended": [
"glBindFragDataLocationIndexedEXT",
"glBindFragDataLocationEXT",
"glGetProgramResourceLocationIndexEXT",
"glGetFragDataIndexEXT"
],
"GL_EXT_texture_storage": [
"glTexStorage2DEXT",
"glTexStorage3DEXT"
],
"GL_EXT_robustness": [
"glGetGraphicsResetStatusEXT",
"glReadnPixelsEXT",
"glGetnUniformfvEXT",
"glGetnUniformivEXT"
],
"GL_EXT_occlusion_query_boolean": [
"glGenQueriesEXT",
"glDeleteQueriesEXT",
"glIsQueryEXT",
"glBeginQueryEXT",
"glEndQueryEXT",
"glGetQueryivEXT",
"glGetQueryObjectuivEXT"
],
"GL_EXT_disjoint_timer_query": [
"glGenQueriesEXT",
"glDeleteQueriesEXT",
"glIsQueryEXT",
"glBeginQueryEXT",
"glEndQueryEXT",
"glQueryCounterEXT",
"glGetQueryivEXT",
"glGetQueryObjectivEXT",
"glGetQueryObjectuivEXT",
"glGetQueryObjecti64vEXT",
"glGetQueryObjectui64vEXT"
],
"GL_EXT_draw_buffers": [
"glDrawBuffersEXT"
],
"GL_ANGLE_instanced_arrays": [
"glDrawArraysInstancedANGLE",
"glDrawElementsInstancedANGLE",
"glVertexAttribDivisorANGLE"
],
"GL_EXT_instanced_arrays": [
"glDrawArraysInstancedEXT",
"glDrawElementsInstancedEXT",
"glVertexAttribDivisorEXT"
],
"GL_OES_get_program_binary": [
"glGetProgramBinaryOES",
"glProgramBinaryOES"
],
"GL_OES_mapbuffer": [
"glMapBufferOES",
"glUnmapBufferOES",
"glGetBufferPointervOES"
],
"GL_EXT_map_buffer_range": [
"glMapBufferRangeEXT",
"glFlushMappedBufferRangeEXT"
],
"GL_EXT_debug_marker": [
"glInsertEventMarkerEXT",
"glPushGroupMarkerEXT",
"glPopGroupMarkerEXT"
],
"GL_OES_EGL_image": [
"glEGLImageTargetTexture2DOES",
"glEGLImageTargetRenderbufferStorageOES"
],
"GL_OES_vertex_array_object": [
"glBindVertexArrayOES",
"glDeleteVertexArraysOES",
"glGenVertexArraysOES",
"glIsVertexArrayOES"
],
"GL_KHR_debug": [
"glDebugMessageControlKHR",
"glDebugMessageInsertKHR",
"glDebugMessageCallbackKHR",
"glGetDebugMessageLogKHR",
"glPushDebugGroupKHR",
"glPopDebugGroupKHR",
"glObjectLabelKHR",
"glGetObjectLabelKHR",
"glObjectPtrLabelKHR",
"glGetObjectPtrLabelKHR",
"glGetPointervKHR"
],
"GL_CHROMIUM_bind_uniform_location": [
"glBindUniformLocationCHROMIUM"
],
"GL_CHROMIUM_copy_texture": [
"glCopyTextureCHROMIUM",
"glCopySubTextureCHROMIUM"
],
"GL_CHROMIUM_copy_compressed_texture": [
"glCompressedCopyTextureCHROMIUM"
],
"GL_ANGLE_copy_texture_3D":[
"glCopyTexture3DANGLE",
"glCopySubTexture3DANGLE"
],
"GL_ANGLE_request_extension": [
"glRequestExtensionANGLE"
],
"GL_ANGLE_robust_client_memory": [
"glGetBooleanvRobustANGLE",
"glGetBufferParameterivRobustANGLE",
"glGetFloatvRobustANGLE",
"glGetFramebufferAttachmentParameterivRobustANGLE",
"glGetIntegervRobustANGLE",
"glGetProgramivRobustANGLE",
"glGetRenderbufferParameterivRobustANGLE",
"glGetShaderivRobustANGLE",
"glGetTexParameterfvRobustANGLE",
"glGetTexParameterivRobustANGLE",
"glGetUniformfvRobustANGLE",
"glGetUniformivRobustANGLE",
"glGetVertexAttribfvRobustANGLE",
"glGetVertexAttribivRobustANGLE",
"glGetVertexAttribPointervRobustANGLE",
"glReadPixelsRobustANGLE",
"glTexImage2DRobustANGLE",
"glTexParameterfvRobustANGLE",
"glTexParameterivRobustANGLE",
"glTexSubImage2DRobustANGLE",
"glTexImage3DRobustANGLE",
"glTexSubImage3DRobustANGLE",
"glCompressedTexImage2DRobustANGLE",
"glCompressedTexSubImage2DRobustANGLE",
"glCompressedTexImage3DRobustANGLE",
"glCompressedTexSubImage3DRobustANGLE",
"glGetQueryivRobustANGLE",
"glGetQueryObjectuivRobustANGLE",
"glGetBufferPointervRobustANGLE",
"glGetIntegeri_vRobustANGLE",
"glGetInternalformativRobustANGLE",
"glGetVertexAttribIivRobustANGLE",
"glGetVertexAttribIuivRobustANGLE",
"glGetUniformuivRobustANGLE",
"glGetActiveUniformBlockivRobustANGLE",
"glGetInteger64vRobustANGLE",
"glGetInteger64i_vRobustANGLE",
"glGetBufferParameteri64vRobustANGLE",
"glSamplerParameterivRobustANGLE",
"glSamplerParameterfvRobustANGLE",
"glGetSamplerParameterivRobustANGLE",
"glGetSamplerParameterfvRobustANGLE",
"glGetFramebufferParameterivRobustANGLE",
"glGetProgramInterfaceivRobustANGLE",
"glGetBooleani_vRobustANGLE",
"glGetMultisamplefvRobustANGLE",
"glGetTexLevelParameterivRobustANGLE",
"glGetTexLevelParameterfvRobustANGLE",
"glGetPointervRobustANGLERobustANGLE",
"glReadnPixelsRobustANGLE",
"glGetnUniformfvRobustANGLE",
"glGetnUniformivRobustANGLE",
"glGetnUniformuivRobustANGLE",
"glTexParameterIivRobustANGLE",
"glTexParameterIuivRobustANGLE",
"glGetTexParameterIivRobustANGLE",
"glGetTexParameterIuivRobustANGLE",
"glSamplerParameterIivRobustANGLE",
"glSamplerParameterIuivRobustANGLE",
"glGetSamplerParameterIivRobustANGLE",
"glGetSamplerParameterIuivRobustANGLE",
"glGetQueryObjectivRobustANGLE",
"glGetQueryObjecti64vRobustANGLE",
"glGetQueryObjectui64vRobustANGLE"
],
"GL_ANGLE_multi_draw": [
"glMultiDrawArraysANGLE",
"glMultiDrawArraysInstancedANGLE",
"glMultiDrawElementsANGLE",
"glMultiDrawElementsInstancedANGLE"
],
"GL_OVR_multiview": [
"glFramebufferTextureMultiviewOVR"
],
"GL_OVR_multiview2": [
"glFramebufferTextureMultiviewOVR"
],
"GL_KHR_parallel_shader_compile": [
"glMaxShaderCompilerThreadsKHR"
],
"GL_OES_texture_storage_multisample_2d_array": [
"glTexStorage3DMultisampleOES"
],
"GL_OES_texture_border_clamp": [
"glTexParameterIivOES",
"glTexParameterIuivOES",
"glGetTexParameterIivOES",
"glGetTexParameterIuivOES",
"glSamplerParameterIivOES",
"glSamplerParameterIuivOES",
"glGetSamplerParameterIivOES",
"glGetSamplerParameterIuivOES"
],
"GLES3 core": [
"glReadBuffer",
"glDrawRangeElements",
"glTexImage3D",
"glTexSubImage3D",
"glCopyTexSubImage3D",
"glCompressedTexImage3D",
"glCompressedTexSubImage3D",
"glGenQueries",
"glDeleteQueries",
"glIsQuery",
"glBeginQuery",
"glEndQuery",
"glGetQueryiv",
"glGetQueryObjectuiv",
"glUnmapBuffer",
"glGetBufferPointerv",
"glDrawBuffers",
"glUniformMatrix2x3fv",
"glUniformMatrix3x2fv",
"glUniformMatrix2x4fv",
"glUniformMatrix4x2fv",
"glUniformMatrix3x4fv",
"glUniformMatrix4x3fv",
"glBlitFramebuffer",
"glRenderbufferStorageMultisample",
"glFramebufferTextureLayer",
"glMapBufferRange",
"glFlushMappedBufferRange",
"glBindVertexArray",
"glDeleteVertexArrays",
"glGenVertexArrays",
"glIsVertexArray",
"glGetIntegeri_v",
"glBeginTransformFeedback",
"glEndTransformFeedback",
"glBindBufferRange",
"glBindBufferBase",
"glTransformFeedbackVaryings",
"glGetTransformFeedbackVarying",
"glVertexAttribIPointer",
"glGetVertexAttribIiv",
"glGetVertexAttribIuiv",
"glVertexAttribI4i",
"glVertexAttribI4ui",
"glVertexAttribI4iv",
"glVertexAttribI4uiv",
"glGetUniformuiv",
"glGetFragDataLocation",
"glUniform1ui",
"glUniform2ui",
"glUniform3ui",
"glUniform4ui",
"glUniform1uiv",
"glUniform2uiv",
"glUniform3uiv",
"glUniform4uiv",
"glClearBufferiv",
"glClearBufferuiv",
"glClearBufferfv",
"glClearBufferfi",
"glGetStringi",
"glCopyBufferSubData",
"glGetUniformIndices",
"glGetActiveUniformsiv",
"glGetUniformBlockIndex",
"glGetActiveUniformBlockiv",
"glGetActiveUniformBlockName",
"glUniformBlockBinding",
"glDrawArraysInstanced",
"glDrawElementsInstanced",
"glFenceSync",
"glIsSync",
"glDeleteSync",
"glClientWaitSync",
"glWaitSync",
"glGetInteger64v",
"glGetSynciv",
"glGetInteger64i_v",
"glGetBufferParameteri64v",
"glGenSamplers",
"glDeleteSamplers",
"glIsSampler",
"glBindSampler",
"glSamplerParameteri",
"glSamplerParameteriv",
"glSamplerParameterf",
"glSamplerParameterfv",
"glGetSamplerParameteriv",
"glGetSamplerParameterfv",
"glVertexAttribDivisor",
"glBindTransformFeedback",
"glDeleteTransformFeedbacks",
"glGenTransformFeedbacks",
"glIsTransformFeedback",
"glPauseTransformFeedback",
"glResumeTransformFeedback",
"glGetProgramBinary",
"glProgramBinary",
"glProgramParameteri",
"glInvalidateFramebuffer",
"glInvalidateSubFramebuffer",
"glTexStorage2D",
"glTexStorage3D",
"glGetInternalformativ"
],
"GLES31 core": [
"glDispatchCompute",
"glDispatchComputeIndirect",
"glDrawArraysIndirect",
"glDrawElementsIndirect",
"glFramebufferParameteri",
"glGetFramebufferParameteriv",
"glGetProgramInterfaceiv",
"glGetProgramResourceIndex",
"glGetProgramResourceName",
"glGetProgramResourceiv",
"glGetProgramResourceLocation",
"glUseProgramStages",
"glActiveShaderProgram",
"glCreateShaderProgramv",
"glBindProgramPipeline",
"glDeleteProgramPipelines",
"glGenProgramPipelines",
"glIsProgramPipeline",
"glGetProgramPipelineiv",
"glProgramUniform1i",
"glProgramUniform2i",
"glProgramUniform3i",
"glProgramUniform4i",
"glProgramUniform1ui",
"glProgramUniform2ui",
"glProgramUniform3ui",
"glProgramUniform4ui",
"glProgramUniform1f",
"glProgramUniform2f",
"glProgramUniform3f",
"glProgramUniform4f",
"glProgramUniform1iv",
"glProgramUniform2iv",
"glProgramUniform3iv",
"glProgramUniform4iv",
"glProgramUniform1uiv",
"glProgramUniform2uiv",
"glProgramUniform3uiv",
"glProgramUniform4uiv",
"glProgramUniform1fv",
"glProgramUniform2fv",
"glProgramUniform3fv",
"glProgramUniform4fv",
"glProgramUniformMatrix2fv",
"glProgramUniformMatrix3fv",
"glProgramUniformMatrix4fv",
"glProgramUniformMatrix2x3fv",
"glProgramUniformMatrix3x2fv",
"glProgramUniformMatrix2x4fv",
"glProgramUniformMatrix4x2fv",
"glProgramUniformMatrix3x4fv",
"glProgramUniformMatrix4x3fv",
"glValidateProgramPipeline",
"glGetProgramPipelineInfoLog",
"glBindImageTexture",
"glGetBooleani_v",
"glMemoryBarrier",
"glMemoryBarrierByRegion",
"glTexStorage2DMultisample",
"glGetMultisamplefv",
"glSampleMaski",
"glGetTexLevelParameteriv",
"glGetTexLevelParameterfv",
"glBindVertexBuffer",
"glVertexAttribFormat",
"glVertexAttribIFormat",
"glVertexAttribBinding",
"glVertexBindingDivisor"
],
"GL_EXT_geometry_shader": [
"glFramebufferTextureEXT"
],
"GL_ANGLE_texture_multisample": [
"glTexStorage2DMultisampleANGLE",
"glGetTexLevelParameterfvANGLE",
"glGetTexLevelParameterivANGLE",
"glGetMultisamplefvANGLE",
"glSampleMaskiANGLE"
],
"GL_ANGLE_provoking_vertex": [
"glProvokingVertexANGLE"
],
"EGL 1.0": [
"eglChooseConfig",
"eglCopyBuffers",
"eglCreateContext",
"eglCreatePbufferSurface",
"eglCreatePixmapSurface",
"eglCreateWindowSurface",
"eglDestroyContext",
"eglDestroySurface",
"eglGetConfigAttrib",
"eglGetConfigs",
"eglGetCurrentDisplay",
"eglGetCurrentSurface",
"eglGetDisplay",
"eglGetError",
"eglGetProcAddress",
"eglInitialize",
"eglMakeCurrent",
"eglQueryContext",
"eglQueryString",
"eglQuerySurface",
"eglSwapBuffers",
"eglTerminate",
"eglWaitGL",
"eglWaitNative"
],
"EGL 1.1": [
"eglBindTexImage",
"eglReleaseTexImage",
"eglSurfaceAttrib",
"eglSwapInterval"
],
"EGL 1.2": [
"eglBindAPI",
"eglQueryAPI",
"eglCreatePbufferFromClientBuffer",
"eglReleaseThread",
"eglWaitClient"
],
"EGL 1.4": [
"eglGetCurrentContext"
],
"EGL 1.5": [
"eglCreateSync",
"eglDestroySync",
"eglClientWaitSync",
"eglGetSyncAttrib",
"eglCreateImage",
"eglDestroyImage",
"eglGetPlatformDisplay",
"eglCreatePlatformWindowSurface",
"eglCreatePlatformPixmapSurface",
"eglWaitSync"
],
"EGL_ANGLE_query_surface_pointer": [
"eglQuerySurfacePointerANGLE"
],
"EGL_NV_post_sub_buffer": [
"eglPostSubBufferNV"
],
"EGL_EXT_platform_base": [
"eglGetPlatformDisplayEXT",
"eglCreatePlatformWindowSurfaceEXT",
"eglCreatePlatformPixmapSurfaceEXT"
],
"EGL_EXT_device_query": [
"eglQueryDisplayAttribEXT",
"eglQueryDeviceAttribEXT",
"eglQueryDeviceStringEXT"
],
"EGL_KHR_image_base/EGL_KHR_image": [
"eglCreateImageKHR",
"eglDestroyImageKHR"
],
"EGL_EXT_device_creation": [
"eglCreateDeviceANGLE",
"eglReleaseDeviceANGLE"
],
"EGL_KHR_stream": [
"eglCreateStreamKHR",
"eglDestroyStreamKHR",
"eglStreamAttribKHR",
"eglQueryStreamKHR",
"eglQueryStreamu64KHR"
],
"EGL_KHR_stream_consumer_gltexture": [
"eglStreamConsumerGLTextureExternalKHR",
"eglStreamConsumerAcquireKHR",
"eglStreamConsumerReleaseKHR"
],
"EGL_NV_stream_consumer_gltexture_yuv": [
"eglStreamConsumerGLTextureExternalAttribsNV"
],
"EGL_ANGLE_stream_producer_d3d_texture": [
"eglCreateStreamProducerD3DTextureANGLE",
"eglStreamPostD3DTextureANGLE"
],
"EGL_KHR_fence_sync": [
"eglCreateSyncKHR",
"eglDestroySyncKHR",
"eglClientWaitSyncKHR",
"eglGetSyncAttribKHR"
],
"EGL_KHR_wait_sync": [
"eglWaitSyncKHR"
],
"EGL_CHROMIUM_get_sync_values": [
"eglGetSyncValuesCHROMIUM"
],
"EGL_KHR_swap_buffers_with_damage": [
"eglSwapBuffersWithDamageKHR"
],
"EGL_ANDROID_presentation_time": [
"eglPresentationTimeANDROID"
],
"EGL_ANDROID_blob_cache": [
"eglSetBlobCacheFuncsANDROID"
],
"EGL_ANGLE_program_cache_control": [
"eglProgramCacheGetAttribANGLE",
"eglProgramCacheQueryANGLE",
"eglProgramCachePopulateANGLE",
"eglProgramCacheResizeANGLE"
],
"EGL_KHR_debug": [
"eglDebugMessageControlKHR",
"eglQueryDebugKHR",
"eglLabelObjectKHR"
],
"EGL_ANDROID_get_frame_timestamps": [
"eglGetCompositorTimingSupportedANDROID",
"eglGetCompositorTimingANDROID",
"eglGetNextFrameIdANDROID",
"eglGetFrameTimestampSupportedANDROID",
"eglGetFrameTimestampsANDROID"
],
"angle::Platform related entry points": [
"ANGLEGetDisplayPlatform",
"ANGLEResetDisplayPlatform"
],
"GL_EXT_memory_object/GL_EXT_semaphore": [
"glGetUnsignedBytevEXT",
"glGetUnsignedBytei_vEXT"
],
"GL_EXT_memory_object": [
"glDeleteMemoryObjectsEXT",
"glIsMemoryObjectEXT",
"glCreateMemoryObjectsEXT",
"glMemoryObjectParameterivEXT",
"glGetMemoryObjectParameterivEXT",
"glTexStorageMem2DEXT",
"glTexStorageMem2DMultisampleEXT",
"glTexStorageMem3DEXT",
"glTexStorageMem3DMultisampleEXT",
"glBufferStorageMemEXT"
],
"GL_EXT_memory_object_fd": [
"glImportMemoryFdEXT"
],
"GL_EXT_semaphore": [
"glGenSemaphoresEXT",
"glDeleteSemaphoresEXT",
"glIsSemaphoreEXT",
"glSemaphoreParameterui64vEXT",
"glGetSemaphoreParameterui64vEXT",
"glWaitSemaphoreEXT",
"glSignalSemaphoreEXT"
],
"GL_EXT_semaphore_fd": [
"glImportSemaphoreFdEXT"
],
"GL_CHROMIUM_lose_context": [
"glLoseContextCHROMIUM"
],
"EGL_ANGLE_feature_control": [
"eglQueryStringiANGLE",
"eglQueryDisplayAttribANGLE"
]
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment