diff options
Diffstat (limited to 'src/mapi/glapi/gen')
-rw-r--r-- | src/mapi/glapi/gen/ARB_ES2_compatibility.xml | 58 | ||||
-rw-r--r-- | src/mapi/glapi/gen/ARB_draw_buffers_blend.xml | 38 | ||||
-rw-r--r-- | src/mapi/glapi/gen/ARB_get_program_binary.xml | 36 | ||||
-rw-r--r-- | src/mapi/glapi/gen/ARB_instanced_arrays.xml | 21 | ||||
-rw-r--r-- | src/mapi/glapi/gen/Makefile | 19 | ||||
-rw-r--r-- | src/mapi/glapi/gen/NV_texture_barrier.xml | 13 | ||||
-rw-r--r-- | src/mapi/glapi/gen/OES_fixed_point.xml | 259 | ||||
-rw-r--r-- | src/mapi/glapi/gen/OES_single_precision.xml | 47 | ||||
-rw-r--r-- | src/mapi/glapi/gen/es_EXT.xml | 618 | ||||
-rw-r--r-- | src/mapi/glapi/gen/glX_API.xml | 14 | ||||
-rw-r--r-- | src/mapi/glapi/gen/glX_proto_recv.py | 4 | ||||
-rw-r--r-- | src/mapi/glapi/gen/glX_proto_send.py | 53 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_API.xml | 7 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_and_es_API.xml | 286 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_enums.py | 43 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_x86-64_asm.py | 3 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_x86_asm.py | 2 |
17 files changed, 1501 insertions, 20 deletions
diff --git a/src/mapi/glapi/gen/ARB_ES2_compatibility.xml b/src/mapi/glapi/gen/ARB_ES2_compatibility.xml new file mode 100644 index 0000000000..d52a88c603 --- /dev/null +++ b/src/mapi/glapi/gen/ARB_ES2_compatibility.xml @@ -0,0 +1,58 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<OpenGLAPI> + +<category name="GL_ARB_ES2_compatibility" number="95"> + <enum name="FIXED" count="1" value="0x140C"/> + <enum name="LOW_FLOAT" value="0x8DF0"/> + <enum name="MEDIUM_FLOAT" value="0x8DF1"/> + <enum name="HIGH_FLOAT" value="0x8DF2"/> + <enum name="LOW_INT" value="0x8DF3"/> + <enum name="MEDIUM_INT" value="0x8DF4"/> + <enum name="HIGH_INT" value="0x8DF5"/> + <enum name="SHADER_BINARY_FORMATS" value="0x8DF8"/> + <enum name="NUM_SHADER_BINARY_FORMATS" value="0x8DF9"/> + <enum name="SHADER_COMPILER" value="0x8DFA"/> + <enum name="MAX_VERTEX_UNIFORM_VECTORS" value="0x8DFB"/> + <enum name="MAX_VARYING_VECTORS" value="0x8DFC"/> + <enum name="MAX_FRAGMENT_UNIFORM_VECTORS" value="0x8DFD"/> + + <function name="GetShaderPrecisionFormat" offset="assign"> + <param name="shadertype" type="GLenum"/> + <param name="precisiontype" type="GLenum"/> + <param name="range" type="GLint *"/> + <param name="precision" type="GLint *"/> + </function> + + <function name="ReleaseShaderCompiler" offset="assign"> + </function> + + <function name="ShaderBinary" offset="assign"> + <param name="n" type="GLsizei"/> + <param name="shaders" type="const GLuint *"/> + <param name="binaryformat" type="GLenum"/> + <param name="binary" type="const GLvoid *"/> + <param name="length" type="GLsizei"/> + </function> + + <!-- from GL_OES_fixed_point --> + <enum name="FIXED" value="0x140C"/> + <type name="fixed" size="4" /> + + <!-- from GL_OES_read_format --> + <enum name="IMPLEMENTATION_COLOR_READ_TYPE" value="0x8B9A"/> + <enum name="IMPLEMENTATION_COLOR_READ_FORMAT" value="0x8B9B"/> + + <!-- from GL_OES_single_precision --> + <function name="ClearDepthf" offset="assign"> + <param name="depth" type="GLclampf"/> + </function> + + <function name="DepthRangef" offset="assign"> + <param name="zNear" type="GLclampf"/> + <param name="zFar" type="GLclampf"/> + </function> +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml b/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml new file mode 100644 index 0000000000..0b6947cc5f --- /dev/null +++ b/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + + +<OpenGLAPI> + +<category name="GL_ARB_draw_buffers_blend" number="69"> + + <function name="BlendEquationiARB" offset="assign"> + <param name="buf" type="GLuint"/> + <param name="mode" type="GLenum"/> + </function> + + <function name="BlendEquationSeparateiARB" offset="assign"> + <param name="buf" type="GLuint"/> + <param name="modeRGB" type="GLenum"/> + <param name="modeA" type="GLenum"/> + </function> + + <function name="BlendFunciARB" offset="assign"> + <param name="buf" type="GLuint"/> + <param name="src" type="GLenum"/> + <param name="dst" type="GLenum"/> + </function> + + <function name="BlendFuncSeparateiARB" offset="assign"> + <param name="buf" type="GLuint"/> + <param name="srcRGB" type="GLenum"/> + <param name="dstRGB" type="GLenum"/> + <param name="srcA" type="GLenum"/> + <param name="dstA" type="GLenum"/> + </function> + +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/ARB_get_program_binary.xml b/src/mapi/glapi/gen/ARB_get_program_binary.xml new file mode 100644 index 0000000000..a3665e5402 --- /dev/null +++ b/src/mapi/glapi/gen/ARB_get_program_binary.xml @@ -0,0 +1,36 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- This is included by gl_and_es_API.xml. Could be moved to gl_API.xml. --> + +<OpenGLAPI> + +<category name="GL_ARB_get_program_binary " number="96"> + <enum name="PROGRAM_BINARY_RETRIEVABLE_HINT" value="0x8257"/> + <enum name="PROGRAM_BINARY_LENGTH" value="0x8741"/> + <enum name="NUM_PROGRAM_BINARY_FORMATS" value="0x87FE"/> + <enum name="PROGRAM_BINARY_FORMATS" value="0x87FF"/> + + <function name="GetProgramBinary" offset="assign" static_dispatch="false"> + <param name="program" type="GLuint"/> + <param name="bufSize" type="GLsizei"/> + <param name="length" type="GLsizei *"/> + <param name="binaryFormat" type="GLenum *"/> + <param name="binary" type="GLvoid *"/> + </function> + + <function name="ProgramBinary" offset="assign" static_dispatch="false"> + <param name="program" type="GLuint"/> + <param name="binaryFormat" type="GLenum"/> + <param name="binary" type="const GLvoid *"/> + <param name="length" type="GLsizei"/> + </function> + + <function name="ProgramParameteri" offset="assign" static_dispatch="false"> + <param name="program" type="GLuint"/> + <param name="pname" type="GLenum"/> + <param name="value" type="GLint"/> + </function> +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/ARB_instanced_arrays.xml b/src/mapi/glapi/gen/ARB_instanced_arrays.xml new file mode 100644 index 0000000000..822f543749 --- /dev/null +++ b/src/mapi/glapi/gen/ARB_instanced_arrays.xml @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + + +<OpenGLAPI> + +<category name="GL_ARB_instanced_arrays" number="49"> + + <enum name="VERTEX_ATTRIB_ARRAY_DIVISOR_ARB" value="0x88FE"/> + + <function name="VertexAttribDivisorARB" offset="assign"> + <param name="index" type="GLuint"/> + <param name="divisor" type="GLuint"/> + </function> + +</category> + + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index 5a9b6ac4a8..1f4642af55 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -9,9 +9,11 @@ include $(TOP)/configs/current MESA_DIR = $(TOP)/src/mesa MESA_GLAPI_DIR = $(TOP)/src/mapi/glapi +MESA_MAPI_DIR = $(TOP)/src/mapi/mapi MESA_GLX_DIR = $(TOP)/src/glx MESA_GLAPI_OUTPUTS = \ + $(MESA_GLAPI_DIR)/glapi_mapi_tmp.h \ $(MESA_GLAPI_DIR)/glprocs.h \ $(MESA_GLAPI_DIR)/glapitemp.h \ $(MESA_GLAPI_DIR)/glapitable.h @@ -72,10 +74,13 @@ API_XML = \ gl_API.xml \ ARB_copy_buffer.xml \ ARB_depth_clamp.xml \ + ARB_draw_buffers_blend.xml \ ARB_draw_elements_base_vertex.xml \ ARB_draw_instanced.xml \ + ARB_ES2_compatibility.xml \ ARB_framebuffer_object.xml \ ARB_geometry_shader4.xml \ + ARB_instanced_arrays.xml \ ARB_map_buffer_range.xml \ ARB_seamless_cube_map.xml \ ARB_sync.xml \ @@ -93,12 +98,22 @@ API_XML = \ EXT_transform_feedback.xml \ NV_conditional_render.xml \ NV_primitive_restart.xml \ + NV_texture_barrier.xml \ OES_EGL_image.xml \ GL3x.xml COMMON = $(API_XML) gl_XML.py glX_XML.py license.py typeexpr.py +COMMON_ES = \ + $(COMMON) \ + gl_and_es_API.xml \ + es_EXT.xml \ + ARB_ES2_compatibility.xml \ + ARB_get_program_binary.xml \ + OES_fixed_point.xml \ + OES_single_precision.xml + COMMON_GLX = $(COMMON) glX_API.xml glX_XML.py glX_proto_common.py ###################################################################### @@ -129,6 +144,10 @@ $(XORG_GLAPI_DIR)/%.h: $(MESA_GLAPI_DIR)/%.h ###################################################################### +$(MESA_GLAPI_DIR)/glapi_mapi_tmp.h: $(MESA_MAPI_DIR)/mapi_abi.py $(COMMON_ES) + $(PYTHON2) $(PYTHON_FLAGS) $< \ + --printer glapi --mode lib gl_and_es_API.xml > $@ + $(MESA_GLAPI_DIR)/glprocs.h: gl_procs.py $(COMMON) $(PYTHON2) $(PYTHON_FLAGS) $< > $@ diff --git a/src/mapi/glapi/gen/NV_texture_barrier.xml b/src/mapi/glapi/gen/NV_texture_barrier.xml new file mode 100644 index 0000000000..52b1a3c08d --- /dev/null +++ b/src/mapi/glapi/gen/NV_texture_barrier.xml @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + + +<OpenGLAPI> + +<category name="GL_NV_texture_barrier" number="381"> + <function name="TextureBarrierNV" offset="assign" /> +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/OES_fixed_point.xml b/src/mapi/glapi/gen/OES_fixed_point.xml new file mode 100644 index 0000000000..ee408f4f1a --- /dev/null +++ b/src/mapi/glapi/gen/OES_fixed_point.xml @@ -0,0 +1,259 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- This is included by gl_and_es_API.xml. Could be moved to gl_API.xml. --> +<!-- this extension is incomplete --> + +<OpenGLAPI> + +<category name="GL_OES_fixed_point" number="292"> + <enum name="FIXED_OES" value="0x140C"/> + + <type name="fixed" size="4" /> + <type name="clampx" size="4" /> + + <!-- OpenGL ES 1.0 --> + <function name="AlphaFuncxOES" offset="assign" static_dispatch="false"> + <param name="func" type="GLenum"/> + <param name="ref" type="GLclampx"/> + </function> + + <function name="ClearColorxOES" offset="assign" static_dispatch="false"> + <param name="red" type="GLclampx"/> + <param name="green" type="GLclampx"/> + <param name="blue" type="GLclampx"/> + <param name="alpha" type="GLclampx"/> + </function> + + <function name="ClearDepthxOES" offset="assign" static_dispatch="false"> + <param name="depth" type="GLclampx"/> + </function> + + <function name="Color4xOES" offset="assign" static_dispatch="false"> + <param name="red" type="GLfixed"/> + <param name="green" type="GLfixed"/> + <param name="blue" type="GLfixed"/> + <param name="alpha" type="GLfixed"/> + </function> + + <function name="DepthRangexOES" offset="assign" static_dispatch="false"> + <param name="zNear" type="GLclampx"/> + <param name="zFar" type="GLclampx"/> + </function> + + <function name="FogxOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="FogxvOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="FrustumxOES" offset="assign" static_dispatch="false"> + <param name="left" type="GLfixed"/> + <param name="right" type="GLfixed"/> + <param name="bottom" type="GLfixed"/> + <param name="top" type="GLfixed"/> + <param name="zNear" type="GLfixed"/> + <param name="zFar" type="GLfixed"/> + </function> + + <function name="LightModelxOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="LightModelxvOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="LightxOES" offset="assign" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="LightxvOES" offset="assign" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="LineWidthxOES" offset="assign" static_dispatch="false"> + <param name="width" type="GLfixed"/> + </function> + + <function name="LoadMatrixxOES" offset="assign" static_dispatch="false"> + <param name="m" type="const GLfixed *" count="16"/> + </function> + + <function name="MaterialxOES" offset="assign" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="MaterialxvOES" offset="assign" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="MultMatrixxOES" offset="assign" static_dispatch="false"> + <param name="m" type="const GLfixed *" count="16"/> + </function> + + <function name="MultiTexCoord4xOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="s" type="GLfixed"/> + <param name="t" type="GLfixed"/> + <param name="r" type="GLfixed"/> + <param name="q" type="GLfixed"/> + </function> + + <function name="Normal3xOES" offset="assign" static_dispatch="false"> + <param name="nx" type="GLfixed"/> + <param name="ny" type="GLfixed"/> + <param name="nz" type="GLfixed"/> + </function> + + <function name="OrthoxOES" offset="assign" static_dispatch="false"> + <param name="left" type="GLfixed"/> + <param name="right" type="GLfixed"/> + <param name="bottom" type="GLfixed"/> + <param name="top" type="GLfixed"/> + <param name="zNear" type="GLfixed"/> + <param name="zFar" type="GLfixed"/> + </function> + + <function name="PointSizexOES" offset="assign" static_dispatch="false"> + <param name="size" type="GLfixed"/> + </function> + + <function name="PolygonOffsetxOES" offset="assign" static_dispatch="false"> + <param name="factor" type="GLfixed"/> + <param name="units" type="GLfixed"/> + </function> + + <function name="RotatexOES" offset="assign" static_dispatch="false"> + <param name="angle" type="GLfixed"/> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <function name="SampleCoveragexOES" offset="assign" static_dispatch="false"> + <param name="value" type="GLclampx"/> + <param name="invert" type="GLboolean"/> + </function> + + <function name="ScalexOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <function name="TexEnvxOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="TexEnvxvOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="TexParameterxOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="TranslatexOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <!-- OpenGL ES 1.1 --> + <function name="ClipPlanexOES" offset="assign" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="const GLfixed *" count="4"/> + </function> + + <function name="GetClipPlanexOES" offset="assign" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="GLfixed *" output="true" count="4"/> + </function> + + <function name="GetFixedvOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetLightxvOES" offset="assign" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetMaterialxvOES" offset="assign" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetTexEnvxvOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetTexParameterxvOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="PointParameterxOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="PointParameterxvOES" offset="assign" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *"/> + </function> + + <function name="TexParameterxvOES" offset="assign" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <!-- texgen --> + <function name="GetTexGenxvOES" offset="assign" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="TexGenxOES" offset="assign" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLint"/> + </function> + + <function name="TexGenxvOES" offset="assign" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/OES_single_precision.xml b/src/mapi/glapi/gen/OES_single_precision.xml new file mode 100644 index 0000000000..df8efc8f80 --- /dev/null +++ b/src/mapi/glapi/gen/OES_single_precision.xml @@ -0,0 +1,47 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- This is included by gl_and_es_API.xml. Could be moved to gl_API.xml. --> + +<OpenGLAPI> + +<category name="GL_OES_single_precision" number="293"> + <function name="ClearDepthfOES" alias="ClearDepthf" static_dispatch="false"> + <param name="depth" type="GLclampf"/> + </function> + + <function name="ClipPlanefOES" offset="assign" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="const GLfloat *" count="4"/> + </function> + + <function name="DepthRangefOES" alias="DepthRangef" static_dispatch="false"> + <param name="zNear" type="GLclampf"/> + <param name="zFar" type="GLclampf"/> + </function> + + <function name="GetClipPlanefOES" offset="assign" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="GLfloat *" output="true" count="4"/> + </function> + + <function name="FrustumfOES" offset="assign" static_dispatch="false"> + <param name="left" type="GLfloat"/> + <param name="right" type="GLfloat"/> + <param name="bottom" type="GLfloat"/> + <param name="top" type="GLfloat"/> + <param name="zNear" type="GLfloat"/> + <param name="zFar" type="GLfloat"/> + </function> + + <function name="OrthofOES" offset="assign" static_dispatch="false"> + <param name="left" type="GLfloat"/> + <param name="right" type="GLfloat"/> + <param name="bottom" type="GLfloat"/> + <param name="top" type="GLfloat"/> + <param name="zNear" type="GLfloat"/> + <param name="zFar" type="GLfloat"/> + </function> +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml new file mode 100644 index 0000000000..1327bb6021 --- /dev/null +++ b/src/mapi/glapi/gen/es_EXT.xml @@ -0,0 +1,618 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd"> + +<!-- OpenGL ES specific extensions --> + +<OpenGLAPI> + +<!-- part of es1.1 extension pack --> +<category name="GL_OES_blend_equation_separate" number="1"> + <enum name="BLEND_EQUATION_RGB_OES" value="0x8009"/> + <enum name="BLEND_EQUATION_ALPHA_OES" value="0x883D"/> + + <function name="BlendEquationSeparateOES" alias="BlendEquationSeparateEXT" static_dispatch="false"> + <param name="modeRGB" type="GLenum"/> + <param name="modeA" type="GLenum"/> + </function> +</category> + +<!-- part of es1.1 extension pack --> +<category name="GL_OES_blend_func_separate" number="2"> + <enum name="BLEND_DST_RGB_OES" value="0x80C8"/> + <enum name="BLEND_SRC_RGB_OES" value="0x80C9"/> + <enum name="BLEND_DST_ALPHA_OES" value="0x80CA"/> + <enum name="BLEND_SRC_ALPHA_OES" value="0x80CB"/> + + <function name="BlendFuncSeparateOES" alias="BlendFuncSeparateEXT" static_dispatch="false"> + <param name="sfactorRGB" type="GLenum"/> + <param name="dfactorRGB" type="GLenum"/> + <param name="sfactorAlpha" type="GLenum"/> + <param name="dfactorAlpha" type="GLenum"/> + </function> +</category> + +<!-- part of es1.1 extension pack --> +<category name="GL_OES_blend_subtract" number="3"> + <enum name="FUNC_ADD_OES" value="0x8006"/> + <enum name="BLEND_EQUATION_OES" value="0x8009"/> + <enum name="FUNC_SUBTRACT_OES" value="0x800A"/> + <enum name="FUNC_REVERSE_SUBTRACT_OES" value="0x800B"/> + + <function name="BlendEquationOES" alias="BlendEquation" static_dispatch="false"> + <param name="mode" type="GLenum"/> + </function> +</category> + +<!-- core addition to es1.0 and later --> +<category name="GL_OES_byte_coordinates" number="4"> + <enum name="BYTE" value="0x1400"/> +</category> + +<category name="GL_OES_compressed_paletted_texture" number="6"> + <enum name="PALETTE4_RGB8_OES" value="0x8B90"/> + <enum name="PALETTE4_RGBA8_OES" value="0x8B91"/> + <enum name="PALETTE4_R5_G6_B5_OES" value="0x8B92"/> + <enum name="PALETTE4_RGBA4_OES" value="0x8B93"/> + <enum name="PALETTE4_RGB5_A1_OES" value="0x8B94"/> + <enum name="PALETTE8_RGB8_OES" value="0x8B95"/> + <enum name="PALETTE8_RGBA8_OES" value="0x8B96"/> + <enum name="PALETTE8_R5_G6_B5_OES" value="0x8B97"/> + <enum name="PALETTE8_RGBA4_OES" value="0x8B98"/> + <enum name="PALETTE8_RGB5_A1_OES" value="0x8B99"/> +</category> + +<!-- optional for es1.1 --> +<category name="GL_OES_draw_texture" number="7"> + <enum name="TEXTURE_CROP_RECT_OES" value="0x8B9D"/> + + <function name="DrawTexiOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLint"/> + <param name="y" type="GLint"/> + <param name="z" type="GLint"/> + <param name="width" type="GLint"/> + <param name="height" type="GLint"/> + </function> + + <function name="DrawTexivOES" offset="assign" static_dispatch="false"> + <param name="coords" type="const GLint *" count="5"/> + </function> + + <function name="DrawTexfOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLfloat"/> + <param name="y" type="GLfloat"/> + <param name="z" type="GLfloat"/> + <param name="width" type="GLfloat"/> + <param name="height" type="GLfloat"/> + </function> + + <function name="DrawTexfvOES" offset="assign" static_dispatch="false"> + <param name="coords" type="const GLfloat *" count="5"/> + </function> + + <function name="DrawTexsOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLshort"/> + <param name="y" type="GLshort"/> + <param name="z" type="GLshort"/> + <param name="width" type="GLshort"/> + <param name="height" type="GLshort"/> + </function> + + <function name="DrawTexsvOES" offset="assign" static_dispatch="false"> + <param name="coords" type="const GLshort *" count="5"/> + </function> + + <function name="DrawTexxOES" offset="assign" static_dispatch="false"> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + <param name="width" type="GLfixed"/> + <param name="height" type="GLfixed"/> + </function> + + <function name="DrawTexxvOES" offset="assign" static_dispatch="false"> + <param name="coords" type="const GLfixed *" count="5"/> + </function> + + <!-- TexParameter{ifx}v is skipped here --> +</category> + +<!-- core addition to es1.0 and later --> +<!-- 9. GL_OES_fixed_point --> + +<!-- part of es1.1 extension pack --> +<category name="GL_OES_framebuffer_object" number="10"> + <enum name="NONE_OES" value="0"/> + <enum name="INVALID_FRAMEBUFFER_OPERATION_OES" value="0x0506"/> + <enum name="RGBA4_OES" value="0x8056"/> + <enum name="RGB5_A1_OES" value="0x8057"/> + <enum name="DEPTH_COMPONENT16_OES" value="0x81A5"/> + + <enum name="MAX_RENDERBUFFER_SIZE_OES" value="0x84E8"/> + <enum name="FRAMEBUFFER_BINDING_OES" value="0x8CA6"/> + <enum name="RENDERBUFFER_BINDING_OES" value="0x8CA7"/> + <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES" value="0x8CD0"/> + <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES" value="0x8CD1"/> + <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" value="0x8CD2"/> + <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" value="0x8CD3"/> + <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/> + <enum name="FRAMEBUFFER_COMPLETE_OES" value="0x8CD5"/> + <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES" value="0x8CD6"/> + <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES" value="0x8CD7"/> + <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES" value="0x8CD9"/> + <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_OES" value="0x8CDA"/> + <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES" value="0x8CDB"/> + <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES" value="0x8CDC"/> + <enum name="FRAMEBUFFER_UNSUPPORTED_OES" value="0x8CDD"/> + <enum name="COLOR_ATTACHMENT0_OES" value="0x8CE0"/> + <enum name="DEPTH_ATTACHMENT_OES" value="0x8D00"/> + <enum name="STENCIL_ATTACHMENT_OES" value="0x8D20"/> + <enum name="FRAMEBUFFER_OES" value="0x8D40"/> + <enum name="RENDERBUFFER_OES" value="0x8D41"/> + <enum name="RENDERBUFFER_WIDTH_OES" value="0x8D42"/> + <enum name="RENDERBUFFER_HEIGHT_OES" value="0x8D43"/> + <enum name="RENDERBUFFER_INTERNAL_FORMAT_OES" value="0x8D44"/> + <enum name="STENCIL_INDEX1_OES" value="0x8D46"/> + <enum name="STENCIL_INDEX4_OES" value="0x8D47"/> + <enum name="STENCIL_INDEX8_OES" value="0x8D48"/> + <enum name="RENDERBUFFER_RED_SIZE_OES" value="0x8D50"/> + <enum name="RENDERBUFFER_GREEN_SIZE_OES" value="0x8D51"/> + <enum name="RENDERBUFFER_BLUE_SIZE_OES" value="0x8D52"/> + <enum name="RENDERBUFFER_ALPHA_SIZE_OES" value="0x8D53"/> + <enum name="RENDERBUFFER_DEPTH_SIZE_OES" value="0x8D54"/> + <enum name="RENDERBUFFER_STENCIL_SIZE_OES" value="0x8D55"/> + <enum name="RGB565_OES" value="0x8D62"/> + + <function name="BindFramebufferOES" alias="BindFramebufferEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="framebuffer" type="GLuint"/> + </function> + + <function name="BindRenderbufferOES" alias="BindRenderbufferEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="renderbuffer" type="GLuint"/> + </function> + + <function name="CheckFramebufferStatusOES" alias="CheckFramebufferStatusEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <return type="GLenum"/> + </function> + + <function name="DeleteFramebuffersOES" alias="DeleteFramebuffersEXT" static_dispatch="false"> + <param name="n" type="GLsizei" counter="true"/> + <param name="framebuffers" type="const GLuint *" count="n"/> + </function> + + <function name="DeleteRenderbuffersOES" alias="DeleteRenderbuffersEXT" static_dispatch="false"> + <param name="n" type="GLsizei" counter="true"/> + <param name="renderbuffers" type="const GLuint *" count="n"/> + </function> + + <function name="FramebufferRenderbufferOES" alias="FramebufferRenderbufferEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="attachment" type="GLenum"/> + <param name="renderbuffertarget" type="GLenum"/> + <param name="renderbuffer" type="GLuint"/> + </function> + + <function name="FramebufferTexture2DOES" alias="FramebufferTexture2DEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="attachment" type="GLenum"/> + <param name="textarget" type="GLenum"/> + <param name="texture" type="GLuint"/> + <param name="level" type="GLint"/> + </function> + + <function name="GenerateMipmapOES" alias="GenerateMipmapEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + </function> + + <function name="GenFramebuffersOES" alias="GenFramebuffersEXT" static_dispatch="false"> + <param name="n" type="GLsizei" counter="true"/> + <param name="framebuffers" type="GLuint *" count="n" output="true"/> + </function> + + <function name="GenRenderbuffersOES" alias="GenRenderbuffersEXT" static_dispatch="false"> + <param name="n" type="GLsizei" counter="true"/> + <param name="renderbuffers" type="GLuint *" count="n" output="true"/> + </function> + + <function name="GetFramebufferAttachmentParameterivOES" alias="GetFramebufferAttachmentParameterivEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="attachment" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLint *" output="true"/> + </function> + + <function name="GetRenderbufferParameterivOES" alias="GetRenderbufferParameterivEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLint *" output="true"/> + </function> + + <function name="IsFramebufferOES" alias="IsFramebufferEXT" static_dispatch="false"> + <param name="framebuffer" type="GLuint"/> + <return type="GLboolean"/> + </function> + + <function name="IsRenderbufferOES" alias="IsRenderbufferEXT" static_dispatch="false"> + <param name="renderbuffer" type="GLuint"/> + <return type="GLboolean"/> + </function> + + <function name="RenderbufferStorageOES" alias="RenderbufferStorageEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="internalformat" type="GLenum"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + </function> +</category> + +<!-- core addition to es1.1 --> +<category name="GL_OES_matrix_get" number="11"> + <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES" value="0x898D"/> + <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES" value="0x898E"/> + <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES" value="0x898F"/> +</category> + +<!-- optional for es1.1 --> +<category name="GL_OES_matrix_palette" number="12"> + <enum name="MAX_VERTEX_UNITS_OES" value="0x86A4"/> + <enum name="WEIGHT_ARRAY_TYPE_OES" value="0x86A9"/> + <enum name="WEIGHT_ARRAY_STRIDE_OES" value="0x86AA"/> + <enum name="WEIGHT_ARRAY_SIZE_OES" value="0x86AB"/> + <enum name="WEIGHT_ARRAY_POINTER_OES" value="0x86AC"/> + <enum name="WEIGHT_ARRAY_OES" value="0x86AD"/> + <enum name="MATRIX_PALETTE_OES" value="0x8840"/> + <enum name="MAX_PALETTE_MATRICES_OES" value="0x8842"/> + <enum name="CURRENT_PALETTE_MATRIX_OES" value="0x8843"/> + <enum name="MATRIX_INDEX_ARRAY_OES" value="0x8844"/> + <enum name="MATRIX_INDEX_ARRAY_SIZE_OES" value="0x8846"/> + <enum name="MATRIX_INDEX_ARRAY_TYPE_OES" value="0x8847"/> + <enum name="MATRIX_INDEX_ARRAY_STRIDE_OES" value="0x8848"/> + <enum name="MATRIX_INDEX_ARRAY_POINTER_OES" value="0x8849"/> + <enum name="WEIGHT_ARRAY_BUFFER_BINDING_OES" value="0x889E"/> + <enum name="MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES" value="0x8B9E"/> + + <function name="CurrentPaletteMatrixOES" alias="CurrentPaletteMatrixARB" static_dispatch="false"> + <param name="matrixpaletteindex" type="GLuint"/> + </function> + + <!-- no offset --> + <function name="LoadPaletteFromModelViewMatrixOES" static_dispatch="false"> + </function> + + <function name="MatrixIndexPointerOES" alias="MatrixIndexPointerARB" static_dispatch="false"> + <param name="size" type="GLint"/> + <param name="type" type="GLenum"/> + <param name="stride" type="GLsizei"/> + <param name="pointer" type="const GLvoid *"/> + </function> + + <function name="WeightPointerOES" alias="WeightPointerARB" static_dispatch="false"> + <param name="size" type="GLint"/> + <param name="type" type="GLenum"/> + <param name="stride" type="GLsizei"/> + <param name="pointer" type="const GLvoid *"/> + </function> +</category> + +<!-- required for es1.1 --> +<category name="GL_OES_point_size_array" number="14"> + <enum name="POINT_SIZE_ARRAY_TYPE_OES" value="0x898A"/> + <enum name="POINT_SIZE_ARRAY_STRIDE_OES" value="0x898B"/> + <enum name="POINT_SIZE_ARRAY_POINTER_OES" value="0x898C"/> + <enum name="POINT_SIZE_ARRAY_OES" value="0x8B9C"/> + <enum name="POINT_SIZE_ARRAY_BUFFER_BINDING_OES" value="0x8B9F"/> + + <function name="PointSizePointerOES" offset="assign" static_dispatch="false"> + <param name="type" type="GLenum"/> + <param name="stride" type="GLsizei"/> + <param name="pointer" type="const GLvoid *"/> + </function> +</category> + +<!-- required for es1.1 --> +<category name="GL_OES_point_sprite" number="15"> + <enum name="POINT_SPRITE_OES" value="0x8861"/> + <enum name="COORD_REPLACE_OES" value="0x8862"/> +</category> + +<!-- optional for es1.0 --> +<category name="GL_OES_query_matrix" number="16"> + <function name="QueryMatrixxOES" offset="assign" static_dispatch="false"> + <param name="mantissa" type="GLfixed *" count="16" /> + <param name="exponent" type="GLint *" count="16" /> + <return type="GLbitfield"/> + </function> +</category> + +<!-- required for es1.0 and later --> +<!-- 17. GL_OES_read_format --> + +<!-- core addition to es1.0 and later --> +<!-- 18. GL_OES_single_precision --> + +<!-- part of es1.1 extension pack --> +<category name="GL_OES_texture_cube_map" number="20"> + <enum name="TEXTURE_GEN_MODE_OES" value="0x2500"/> + <enum name="NORMAL_MAP_OES" value="0x8511"/> + <enum name="REFLECTION_MAP_OES" value="0x8512"/> + <enum name="TEXTURE_CUBE_MAP_OES" value="0x8513"/> + <enum name="TEXTURE_BINDING_CUBE_MAP_OES" value="0x8514"/> + <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_OES" value="0x8515"/> + <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_OES" value="0x8516"/> + <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_OES" value="0x8517"/> + <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_OES" value="0x8518"/> + <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_OES" value="0x8519"/> + <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_OES" value="0x851A"/> + <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_OES" value="0x851C"/> + <enum name="TEXTURE_GEN_STR_OES" value="0x8D60"/> + + <function name="GetTexGenfvOES" alias="GetTexGenfv" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfloat *" output="true" variable_param="pname"/> + </function> + + <function name="GetTexGenivOES" alias="GetTexGeniv" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLint *" output="true" variable_param="pname"/> + </function> + + <function name="TexGenfOES" alias="TexGenf" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfloat"/> + </function> + + <function name="TexGenfvOES" alias="TexGenfv" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfloat *" variable_param="pname"/> + </function> + + <function name="TexGeniOES" alias="TexGeni" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLint"/> + </function> + + <function name="TexGenivOES" alias="TexGeniv" static_dispatch="false"> + <param name="coord" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLint *" variable_param="pname"/> + </function> +</category> + +<category name="GL_OES_texture_env_crossbar" number="21"> + <!-- No new functions, types, enums. --> +</category> + +<category name="GL_OES_texture_mirrored_repeat" number="22"> + <!-- No new functions, types, enums. --> +</category> + +<!-- 23. GL_OES_EGL_image --> + +<category name="GL_OES_depth24" number="24"> + <enum name="DEPTH_COMPONENT24_OES" value="0x81A6"/> +</category> + +<category name="GL_OES_depth32" number="25"> + <enum name="DEPTH_COMPONENT32_OES" value="0x81A7"/> +</category> + +<!-- 26. GL_OES_element_index_uint --> + +<!-- 27. GL_OES_fbo_render_mipmap --> + +<category name="GL_OES_mapbuffer" number="29"> + <enum name="WRITE_ONLY_OES" value="0x88B9"/> + <enum name="BUFFER_ACCESS_OES" value="0x88BB"/> + <enum name="BUFFER_MAPPED_OES" value="0x88BC"/> + <enum name="BUFFER_MAP_POINTER_OES" value="0x88BD"/> + + <function name="GetBufferPointervOES" alias="GetBufferPointervARB" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLvoid **"/> + </function> + + <function name="MapBufferOES" alias="MapBufferARB" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="access" type="GLenum"/> + <return type="GLvoid *"/> + </function> + + <function name="UnmapBufferOES" alias="UnmapBufferARB" static_dispatch="false"> + <param name="target" type="GLenum"/> + <return type="GLboolean"/> + </function> +</category> + +<category name="GL_OES_rgb8_rgba8" number="30"> + <enum name="RGB8_OES" value="0x8051"/> + <enum name="RGBA8_OES" value="0x8058"/> +</category> + +<category name="GL_OES_stencil1" number="31"> + <enum name="STENCIL_INDEX1_OES" value="0x8D46"/> +</category> + +<category name="GL_OES_stencil4" number="32"> + <enum name="STENCIL_INDEX4_OES" value="0x8D47"/> +</category> + +<category name="GL_OES_stencil8" number="33"> + <enum name="STENCIL_INDEX8_OES" value="0x8D48"/> +</category> + +<category name="GL_OES_texture_3D" number="34"> + <enum name="TEXTURE_BINDING_3D_OES" value="0x806A"/> + <enum name="TEXTURE_3D_OES" value="0x806F"/> + <enum name="TEXTURE_WRAP_R_OES" value="0x8072"/> + <enum name="MAX_3D_TEXTURE_SIZE_OES" value="0x8073"/> + <enum name="SAMPLER_3D_OES" value="0x8B5F"/> + <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/> + + <function name="CompressedTexImage3DOES" alias="CompressedTexImage3DARB" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="internalformat" type="GLenum"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="depth" type="GLsizei"/> + <param name="border" type="GLint"/> + <param name="imageSize" type="GLsizei" counter="true"/> + <param name="data" type="const GLvoid *" count="imageSize"/> + </function> + + <function name="CompressedTexSubImage3DOES" alias="CompressedTexSubImage3DARB" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="xoffset" type="GLint"/> + <param name="yoffset" type="GLint"/> + <param name="zoffset" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="depth" type="GLsizei"/> + <param name="format" type="GLenum"/> + <param name="imageSize" type="GLsizei" counter="true"/> + <param name="data" type="const GLvoid *" count="imageSize"/> + </function> + + <function name="CopyTexSubImage3DOES" alias="CopyTexSubImage3D" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="xoffset" type="GLint"/> + <param name="yoffset" type="GLint"/> + <param name="zoffset" type="GLint"/> + <param name="x" type="GLint"/> + <param name="y" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + </function> + + <function name="FramebufferTexture3DOES" alias="FramebufferTexture3DEXT" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="attachment" type="GLenum"/> + <param name="textarget" type="GLenum"/> + <param name="texture" type="GLuint"/> + <param name="level" type="GLint"/> + <param name="zoffset" type="GLint"/> + </function> + + <function name="TexImage3DOES" alias="TexImage3D" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="internalformat" type="GLenum"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="depth" type="GLsizei"/> + <param name="border" type="GLint"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/> + </function> + + <function name="TexSubImage3DOES" alias="TexSubImage3D" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="xoffset" type="GLint"/> + <param name="yoffset" type="GLint"/> + <param name="zoffset" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="depth" type="GLsizei"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="UNUSED" type="GLuint" padding="true"/> + <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/> + </function> +</category> + +<!-- the other name is OES_texture_float_linear --> +<!-- 35. GL_OES_texture_half_float_linear --> + +<!-- the other name is OES_texture_float --> +<category name="GL_OES_texture_half_float" number="36"> + <enum name="HALF_FLOAT_OES" value="0x8D61"/> +</category> + +<!-- 37. GL_OES_texture_npot --> + +<category name="GL_OES_vertex_half_float" number="38"> + <enum name="HALF_FLOAT_OES" value="0x8D61"/> +</category> + +<!-- 41. GL_EXT_texture_filter_anisotropic --> + +<category name="GL_EXT_texture_type_2_10_10_10_REV" number="42"> + <enum name="UNSIGNED_INT_2_10_10_10_REV_EXT" value="0x8368"/> +</category> + +<category name="GL_OES_packed_depth_stencil" number="43"> + <enum name="DEPTH_STENCIL_OES" value="0x84F9"/> + <enum name="UNSIGNED_INT_24_8_OES" value="0x84FA"/> + <enum name="DEPTH24_STENCIL8_OES" value="0x88F0"/> +</category> + +<!-- 44. GL_OES_depth_texture --> + +<category name="GL_OES_standard_derivatives" number="45"> + <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT_OES" value="0x8B8B"/> +</category> + +<category name="GL_OES_vertex_type_10_10_10_2" number="46"> + <enum name="UNSIGNED_INT_10_10_10_2_OES" value="0x8DF6"/> + <enum name="INT_10_10_10_2_OES" value="0x8DF7"/> +</category> + +<category name="GL_OES_get_program_binary" number="47"> + <enum name="PROGRAM_BINARY_LENGTH_OES" value="0x8741"/> + <enum name="NUM_PROGRAM_BINARY_FORMATS_OES" value="0x87FE"/> + <enum name="PROGRAM_BINARY_FORMATS_OES" value="0x87FF"/> + + <function name="GetProgramBinaryOES" alias="GetProgramBinary" static_dispatch="false"> + <param name="program" type="GLuint"/> + <param name="bufSize" type="GLsizei"/> + <param name="length" type="GLsizei *"/> + <param name="binaryFormat" type="GLenum *"/> + <param name="binary" type="GLvoid *"/> + </function> + + <function name="ProgramBinaryOES" alias="ProgramBinary" static_dispatch="false"> + <param name="program" type="GLuint"/> + <param name="binaryFormat" type="GLenum"/> + <param name="binary" type="const GLvoid *"/> + <param name="length" type="GLint"/> + </function> +</category> + +<category name="GL_EXT_texture_compression_dxt1" number="49"> + <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT" value="0x83F0"/> + <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT" value="0x83F1"/> +</category> + +<category name="GL_EXT_texture_format_BGRA8888" number="51"> + <enum name="BGRA_EXT" value="0x80E1"/> +</category> + +<category name="GL_EXT_texture_lod_bias" number="60"> + <enum name="TEXTURE_FILTER_CONTROL_EXT" value="0x8500"/> + <enum name="TEXTURE_LOD_BIAS_EXT" value="0x8501"/> + <enum name="MAX_TEXTURE_LOD_BIAS_EXT" value="0x84FD"/> +</category> + +<!-- 65. GL_EXT_blend_minmax --> + +<category name="GL_EXT_read_format_bgra" number="66"> + <enum name="BGRA_EXT" value="0x80E1"/> + <enum name="UNSIGNED_SHORT_4_4_4_4_REV_EXT" value="0x8365"/> + <enum name="UNSIGNED_SHORT_1_5_5_5_REV_EXT" value="0x8366"/> +</category> + +<!-- 69. GL_EXT_multi_draw_arrays --> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/glX_API.xml b/src/mapi/glapi/gen/glX_API.xml index 9e02aa498e..b7f4a77708 100644 --- a/src/mapi/glapi/gen/glX_API.xml +++ b/src/mapi/glapi/gen/glX_API.xml @@ -217,4 +217,18 @@ </function> </category> +<category name="GLX_ARB_create_context" number="56"> + <function name="SetClientInfoARB"> + <glx sop="33"/> + </function> + + <function name="CreateContextAttribsARB"> + <glx sop="34"/> + </function> + + <function name="SetClientInfo2ARB"> + <glx sop="35"/> + </function> +</category> + </OpenGLAPI> diff --git a/src/mapi/glapi/gen/glX_proto_recv.py b/src/mapi/glapi/gen/glX_proto_recv.py index 887f63191d..31745fcef7 100644 --- a/src/mapi/glapi/gen/glX_proto_recv.py +++ b/src/mapi/glapi/gen/glX_proto_recv.py @@ -384,9 +384,9 @@ class PrintGlxDispatchFunctions(glX_proto_common.glx_print_proto): print ' int error;' if self.do_swap: - print ' struct glx_context * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);' + print ' __GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);' else: - print ' struct glx_context * const cx = __glXForceCurrent(cl, req->contextTag, &error);' + print ' __GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);' print '' if name not in f.glx_vendorpriv_names: diff --git a/src/mapi/glapi/gen/glX_proto_send.py b/src/mapi/glapi/gen/glX_proto_send.py index 17ebad0176..6330d91f77 100644 --- a/src/mapi/glapi/gen/glX_proto_send.py +++ b/src/mapi/glapi/gen/glX_proto_send.py @@ -350,6 +350,55 @@ const GLuint __glXDefaultPixelStore[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 1 }; if func.glx_sop and func.glx_vendorpriv: self.printFunction(func, func.glx_vendorpriv_names[0]) + self.printGetProcAddress(api) + return + + def printGetProcAddress(self, api): + procs = {} + for func in api.functionIterateGlx(): + for n in func.entry_points: + if func.has_different_protocol(n): + procs[n] = func.static_glx_name(n) + + print """ +#ifdef GLX_SHARED_GLAPI + +static const struct proc_pair +{ + const char *name; + _glapi_proc proc; +} proc_pairs[%d] = {""" % len(procs) + names = procs.keys() + names.sort() + for i in xrange(len(names)): + comma = ',' if i < len(names) - 1 else '' + print ' { "%s", (_glapi_proc) gl%s }%s' % (names[i], procs[names[i]], comma) + print """}; + +static int +__indirect_get_proc_compare(const void *key, const void *memb) +{ + const struct proc_pair *pair = (const struct proc_pair *) memb; + return strcmp((const char *) key, pair->name); +} + +_glapi_proc +__indirect_get_proc_address(const char *name) +{ + const struct proc_pair *pair; + + /* skip "gl" */ + name += 2; + + pair = (const struct proc_pair *) bsearch((const void *) name, + (const void *) proc_pairs, ARRAY_SIZE(proc_pairs), sizeof(proc_pairs[0]), + __indirect_get_proc_compare); + + return (pair) ? pair->proc : NULL; +} + +#endif /* GLX_SHARED_GLAPI */ +""" return @@ -1001,6 +1050,10 @@ extern HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupVendorRequest( break + print '' + print '#ifdef GLX_SHARED_GLAPI' + print 'extern HIDDEN void (*__indirect_get_proc_address(const char *name))(void);' + print '#endif' def show_usage(): diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index 2004647954..56c0ec71b3 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -7949,6 +7949,8 @@ </enum> </category> +<xi:include href="ARB_ES2_compatibility.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + <xi:include href="ARB_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <xi:include href="ARB_copy_buffer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> @@ -7969,6 +7971,8 @@ <xi:include href="NV_primitive_restart.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="NV_texture_barrier.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + <xi:include href="EXT_transform_feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <xi:include href="ARB_draw_instanced.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> @@ -12521,5 +12525,8 @@ <xi:include href="EXT_gpu_shader4.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <xi:include href="GL3x.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="ARB_instanced_arrays.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + +<xi:include href="ARB_draw_buffers_blend.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> </OpenGLAPI> diff --git a/src/mapi/glapi/gen/gl_and_es_API.xml b/src/mapi/glapi/gen/gl_and_es_API.xml new file mode 100644 index 0000000000..ac7d43ceda --- /dev/null +++ b/src/mapi/glapi/gen/gl_and_es_API.xml @@ -0,0 +1,286 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- OpenGL + OpenGL ES --> + +<OpenGLAPI> + +<xi:include href="gl_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + +<!-- these can be moved to gl_API.xml --> +<xi:include href="ARB_get_program_binary.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="OES_fixed_point.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="OES_single_precision.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + +<category name="es1.0"> + <!-- from GL_OES_fixed_point --> + <enum name="FIXED" value="0x140C"/> + + <type name="fixed" size="4" /> + <type name="clampx" size="4" /> + + <function name="AlphaFuncx" alias="AlphaFuncxOES" static_dispatch="false"> + <param name="func" type="GLenum"/> + <param name="ref" type="GLclampx"/> + </function> + + <function name="ClearColorx" alias="ClearColorxOES" static_dispatch="false"> + <param name="red" type="GLclampx"/> + <param name="green" type="GLclampx"/> + <param name="blue" type="GLclampx"/> + <param name="alpha" type="GLclampx"/> + </function> + + <function name="ClearDepthx" alias="ClearDepthxOES" static_dispatch="false"> + <param name="depth" type="GLclampx"/> + </function> + + <function name="Color4x" alias="Color4xOES" static_dispatch="false"> + <param name="red" type="GLfixed"/> + <param name="green" type="GLfixed"/> + <param name="blue" type="GLfixed"/> + <param name="alpha" type="GLfixed"/> + </function> + + <function name="DepthRangex" alias="DepthRangexOES" static_dispatch="false"> + <param name="zNear" type="GLclampx"/> + <param name="zFar" type="GLclampx"/> + </function> + + <function name="Fogx" alias="FogxOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="Fogxv" alias="FogxvOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="Frustumx" alias="FrustumxOES" static_dispatch="false"> + <param name="left" type="GLfixed"/> + <param name="right" type="GLfixed"/> + <param name="bottom" type="GLfixed"/> + <param name="top" type="GLfixed"/> + <param name="zNear" type="GLfixed"/> + <param name="zFar" type="GLfixed"/> + </function> + + <function name="LightModelx" alias="LightModelxOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="LightModelxv" alias="LightModelxvOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="Lightx" alias="LightxOES" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="Lightxv" alias="LightxvOES" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="LineWidthx" alias="LineWidthxOES" static_dispatch="false"> + <param name="width" type="GLfixed"/> + </function> + + <function name="LoadMatrixx" alias="LoadMatrixxOES" static_dispatch="false"> + <param name="m" type="const GLfixed *" count="16"/> + </function> + + <function name="Materialx" alias="MaterialxOES" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="Materialxv" alias="MaterialxvOES" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="MultMatrixx" alias="MultMatrixxOES" static_dispatch="false"> + <param name="m" type="const GLfixed *" count="16"/> + </function> + + <function name="MultiTexCoord4x" alias="MultiTexCoord4xOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="s" type="GLfixed"/> + <param name="t" type="GLfixed"/> + <param name="r" type="GLfixed"/> + <param name="q" type="GLfixed"/> + </function> + + <function name="Normal3x" alias="Normal3xOES" static_dispatch="false"> + <param name="nx" type="GLfixed"/> + <param name="ny" type="GLfixed"/> + <param name="nz" type="GLfixed"/> + </function> + + <function name="Orthox" alias="OrthoxOES" static_dispatch="false"> + <param name="left" type="GLfixed"/> + <param name="right" type="GLfixed"/> + <param name="bottom" type="GLfixed"/> + <param name="top" type="GLfixed"/> + <param name="zNear" type="GLfixed"/> + <param name="zFar" type="GLfixed"/> + </function> + + <function name="PointSizex" alias="PointSizexOES" static_dispatch="false"> + <param name="size" type="GLfixed"/> + </function> + + <function name="PolygonOffsetx" alias="PolygonOffsetxOES" static_dispatch="false"> + <param name="factor" type="GLfixed"/> + <param name="units" type="GLfixed"/> + </function> + + <function name="Rotatex" alias="RotatexOES" static_dispatch="false"> + <param name="angle" type="GLfixed"/> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <function name="SampleCoveragex" alias="SampleCoveragexOES" static_dispatch="false"> + <param name="value" type="GLclampx"/> + <param name="invert" type="GLboolean"/> + </function> + + <function name="Scalex" alias="ScalexOES" static_dispatch="false"> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <function name="TexEnvx" alias="TexEnvxOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="TexEnvxv" alias="TexEnvxvOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <function name="TexParameterx" alias="TexParameterxOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="Translatex" alias="TranslatexOES" static_dispatch="false"> + <param name="x" type="GLfixed"/> + <param name="y" type="GLfixed"/> + <param name="z" type="GLfixed"/> + </function> + + <!-- from GL_OES_single_precision --> + <function name="Frustumf" alias="FrustumfOES" static_dispatch="false"> + <param name="left" type="GLfloat"/> + <param name="right" type="GLfloat"/> + <param name="bottom" type="GLfloat"/> + <param name="top" type="GLfloat"/> + <param name="zNear" type="GLfloat"/> + <param name="zFar" type="GLfloat"/> + </function> + + <function name="Orthof" alias="OrthofOES" static_dispatch="false"> + <param name="left" type="GLfloat"/> + <param name="right" type="GLfloat"/> + <param name="bottom" type="GLfloat"/> + <param name="top" type="GLfloat"/> + <param name="zNear" type="GLfloat"/> + <param name="zFar" type="GLfloat"/> + </function> +</category> + +<category name="es1.1"> + <!-- from GL_OES_fixed_point --> + <function name="ClipPlanex" alias="ClipPlanexOES" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="const GLfixed *" count="4"/> + </function> + + <function name="GetClipPlanex" alias="GetClipPlanexOES" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="GLfixed *" output="true" count="4"/> + </function> + + <function name="GetFixedv" alias="GetFixedvOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetLightxv" alias="GetLightxvOES" static_dispatch="false"> + <param name="light" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetMaterialxv" alias="GetMaterialxvOES" static_dispatch="false"> + <param name="face" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetTexEnvxv" alias="GetTexEnvxvOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="GetTexParameterxv" alias="GetTexParameterxvOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="GLfixed *" output="true" variable_param="pname"/> + </function> + + <function name="PointParameterx" alias="PointParameterxOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="param" type="GLfixed"/> + </function> + + <function name="PointParameterxv" alias="PointParameterxvOES" static_dispatch="false"> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *"/> + </function> + + <function name="TexParameterxv" alias="TexParameterxvOES" static_dispatch="false"> + <param name="target" type="GLenum"/> + <param name="pname" type="GLenum"/> + <param name="params" type="const GLfixed *" variable_param="pname"/> + </function> + + <!-- from GL_OES_single_precision --> + <function name="ClipPlanef" alias="ClipPlanefOES" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="const GLfloat *" count="4"/> + </function> + + <function name="GetClipPlanef" alias="GetClipPlanefOES" static_dispatch="false"> + <param name="plane" type="GLenum"/> + <param name="equation" type="GLfloat *" output="true" count="4"/> + </function> +</category> + +<category name="es2.0"> + <!-- enums missing from GL_ARB_framebuffer_object and GL_EXT_framebuffer_object --> + <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS" value="0x8CD9"/> + <enum name="RGB565" value="0x8D62"/> +</category> + +<xi:include href="es_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/gl_enums.py b/src/mapi/glapi/gen/gl_enums.py index 0caa01030f..d51b74a4a7 100644 --- a/src/mapi/glapi/gen/gl_enums.py +++ b/src/mapi/glapi/gen/gl_enums.py @@ -46,6 +46,7 @@ class PrintGlEnums(gl_XML.gl_print_base): print '#include "main/mfeatures.h"' print '#include "main/enums.h"' print '#include "main/imports.h"' + print '#include "main/mtypes.h"' print '' print 'typedef struct {' print ' size_t offset;' @@ -111,29 +112,39 @@ const char *_mesa_lookup_enum_by_nr( int nr ) } } +/** + * Primitive names + */ +static const char *prim_names[PRIM_UNKNOWN + 1] = { + "GL_POINTS", + "GL_LINES", + "GL_LINE_LOOP", + "GL_LINE_STRIP", + "GL_TRIANGLES", + "GL_TRIANGLE_STRIP", + "GL_TRIANGLE_FAN", + "GL_QUADS", + "GL_QUAD_STRIP", + "GL_POLYGON", + "outside begin/end", + "inside unknown primitive", + "unknown state" +}; + + /* Get the name of an enum given that it is a primitive type. Avoids * GL_FALSE/GL_POINTS ambiguity and others. */ -const char *_mesa_lookup_prim_by_nr( int nr ) +const char * +_mesa_lookup_prim_by_nr(GLuint nr) { - switch (nr) { - case GL_POINTS: return "GL_POINTS"; - case GL_LINES: return "GL_LINES"; - case GL_LINE_STRIP: return "GL_LINE_STRIP"; - case GL_LINE_LOOP: return "GL_LINE_LOOP"; - case GL_TRIANGLES: return "GL_TRIANGLES"; - case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP"; - case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN"; - case GL_QUADS: return "GL_QUADS"; - case GL_QUAD_STRIP: return "GL_QUAD_STRIP"; - case GL_POLYGON: return "GL_POLYGON"; - case GL_POLYGON+1: return "OUTSIDE_BEGIN_END"; - default: return "<invalid>"; - } + if (nr < Elements(prim_names)) + return prim_names[nr]; + else + return "invalid mode"; } - int _mesa_lookup_enum_by_name( const char *symbol ) { enum_elt * f = NULL; diff --git a/src/mapi/glapi/gen/gl_x86-64_asm.py b/src/mapi/glapi/gen/gl_x86-64_asm.py index 2fa140dc30..11cd9af406 100644 --- a/src/mapi/glapi/gen/gl_x86-64_asm.py +++ b/src/mapi/glapi/gen/gl_x86-64_asm.py @@ -166,7 +166,8 @@ class PrintGenericStubs(gl_XML.gl_print_base): print '' print '\t.p2align\t4,,15' print '_x86_64_get_dispatch:' - print '\tmovq\t_gl_DispatchTSD(%rip), %rdi' + print '\tmovq\t_gl_DispatchTSD@GOTPCREL(%rip), %rax' + print '\tmovl\t(%rax), %edi' print '\tjmp\tpthread_getspecific@PLT' print '' print '#elif defined(THREADS)' diff --git a/src/mapi/glapi/gen/gl_x86_asm.py b/src/mapi/glapi/gen/gl_x86_asm.py index 21996a3942..4ef4acb564 100644 --- a/src/mapi/glapi/gen/gl_x86_asm.py +++ b/src/mapi/glapi/gen/gl_x86_asm.py @@ -73,7 +73,7 @@ class PrintGenericStubs(gl_XML.gl_print_base): print '#define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX))' print '' print '#if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) && !defined(__APPLE__)' - print '#define GLOBL_FN(x) GLOBL x ; .type x, function' + print '#define GLOBL_FN(x) GLOBL x ; .type x, @function' print '#else' print '#define GLOBL_FN(x) GLOBL x' print '#endif' |