summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* i965/vs: Fix user clip plane setup on Gen4-5.Kenneth Graunke2012-11-131-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | On Gen6-7, we don't compact clip planes, and nr_userclip_plane_consts is the last bit set, so iterating from i = 0..nr_userclip_plane_consts covers all active clip planes and is the right thing to do. works and is the right thing to do. However, that doesn't work at all on Gen4-5. Since we don't compact clip planes, we skip over ones which aren't active (via the continue statement). We also set set nr_userclip_plane_consts to the number of active clip planes, which means that we end the loop after checking that many bits. If the set of clip planes wasn't contiguous, this means we'd fail to find the last few. By changing the iteration to MAX_CLIP_PLANES, we correctly find all of the active clip planes. Fixes regressions since 66c8473e028d (replacing the old VS backend) in Piglit's spec/glsl-1.20/execution/clipping/fixed-clip-enables and oglconform's mustpass(basic.clip) and userclip(basic.allCases). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56791 Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/vs: Simplify the Gen6-7 part of setup_uniform_clipplane_values().Kenneth Graunke2012-11-131-8/+2
| | | | | | | There's no compaction, so we can drop that code and simply use 'i'. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/vs: Split setup_uniform_clipplane_values() into Gen4-5/6-7 parts.Kenneth Graunke2012-11-131-21/+39
| | | | | | | | | Since Gen4-5 compacts clip planes and Gen6-7 doesn't, it makes sense to split them into separate code paths. This patch simply copies the code to both halves; the next commits will simplify it. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Replace random with standard C rand.Vinson Lee2012-11-121-1/+1
| | | | | | BSD random is not available on some compilers. Signed-off-by: Vinson Lee <[email protected]>
* automake: Remove empty file variable.Brian Paul2012-11-121-2/+1
| | | | | | | | Fixes SCons build regression introduced with commit a665cf1226b80ec52a0c1a4a38378df4389e8ebf. Signed-off-by: Vinson Lee <[email protected]> Tested-by: Vinson Lee <[email protected]>
* mesa: Fix gallium build since 6991c2922fEric Anholt2012-11-121-1/+1
| | | | | | | Looks like I screwed up and didn't test gallium again after tweaking the Makefile. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57044
* mesa: Convert the hash table for GL object ids to the open-addressing hash.Eric Anholt2012-11-122-262/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | The previous 1023-entry chaining hash table never resized, so it was very inefficient when there were many objects live. While one could have an even more efficient implementation than this (keep an array for genned names with packed IDs, or take advantage of the fact that key == hash or key == *(uint32_t *)data to store less data), this is fairly fast, and I want a nice replacement hash table for other parts of Mesa, too. It improves Minecraft performance 12.3% +/- 1.4% (n=9), dropping hash lookups from 8% of the profile to 0.5%. I also tested cairo-gl, which should be a pessimal workload for this hash table: around 247000 FBOs created and destroyed, only around 65 live at any time, and few lookups of them between creation and destruction. No statistically significant performance difference at n=76 (mean 20.3/20.4 seconds, sd 2.8/3.2 seconds). If I remove the >20 seconds outliers that appear to be due to thermal throttling, there's possibly a .97% +/- 0.31% performance win (n=61/59). The choice of cutoff for outliers feels a lot like cooking the data, but I've gone through this process 3 times for minor iterations of the code with the same conclusion each time. Reviewed-by: Brian Paul <[email protected]> Acked-by: Chad Versace <[email protected]> Acked-by: Kenneth Graunke <[email protected]> (v1)
* mesa: Import a copy of the open-addressing hash table code I wrote.Eric Anholt2012-11-1218-0/+1276
| | | | | | | | | | | | | Mesa's chaining hash table for object names is slow, and this should be much faster. I namespaced the functions under _mesa_*, to avoid visibility troubles that we may have had before with hash_table_* functions. v2: Move .c file to main/, const a few things, clean up loop conditions, add/extend some comments. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]> Acked-by: Kenneth Graunke <[email protected]> (v1)
* automake: Remove libdricore clip.c workaround lib.Eric Anholt2012-11-121-16/+7
| | | | | | | | sparc/clip.c got moved to sparc/sparc-clip.c to avoid doing this workaround in the parent directory. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* automake,android: Build program/ into a helper lib (v2)Eric Anholt2012-11-1211-39/+167
| | | | | | | | | | While simplifying mesa/Makefile.am, the more important feature of this commit is allowing a file with the same name to appear in both main/ and program/. v2: [chadv] Add changes to Android makefiles. Reviewed-by: Kenneth Graunke <[email protected]> (v1) Signed-off-by: Chad Versace <[email protected]> (v2)
* android: Moves rules for libmesa_st_mesa to separate makefileChad Versace2012-11-122-49/+63
| | | | | | | | | | | The pair of files src/mesa/Android.mk and src/mesa/Android.gen.mk are too long and complex to be easily understood. This patch belongs to a series that decomposes them into several easily digestible makefiles. This patch move the rules for libmesa_st_mesa.a from Android.mk to Android.libmesa_st_mesa.mk. Signed-off-by: Chad Versace <[email protected]>
* android: Moves rules for libmesa_dricore to separate makefileChad Versace2012-11-122-29/+64
| | | | | | | | | | | The pair of files src/mesa/Android.mk and src/mesa/Android.gen.mk are too long and complex to be easily understood. This patch belongs to a series that decomposes them into several easily digestible makefiles. This patch move the rules for libmesa_dricore.a from Android.mk to Android.libmesa_dricore.mk. Signed-off-by: Chad Versace <[email protected]>
* android: Moves rules for mesa_gen_matypes to separate makefileChad Versace2012-11-122-17/+50
| | | | | | | | | | | The pair of files src/mesa/Android.mk and src/mesa/Android.gen.mk are too long and complex to be easily understood. This patch belongs to a series that decomposes them into several easily digestible makefiles. This patch move the rules for host executable mesa_gen_matypes from Android.mk to Android.mesa_gen_matypes.mk. Signed-off-by: Chad Versace <[email protected]>
* android: Moves rules for libmesa_glsl_utils to separate makefileChad Versace2012-11-122-32/+60
| | | | | | | | | | | The pair of files src/mesa/Android.mk and src/mesa/Android.gen.mk are too long and complex to be easily understood. This patch belongs to a series that decomposes them into several easily digestible makefiles. This patch move the rules for the host and target libmesa_glsl_utils.a from Android.mk to Android.libmesa_glsl_utils.mk. Signed-off-by: Chad Versace <[email protected]>
* automake: Merge *_CXX_FILES variables in the glsl build.Eric Anholt2012-11-125-11/+6
| | | | | Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* automake: Merge per-type *_FILES variables in intel drivers.Eric Anholt2012-11-125-43/+33
| | | | | Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* automake: Merge separated *_CXX_FILES variables to *_FILES in core mesa.Eric Anholt2012-11-124-27/+7
| | | | | | | | They were always used with the corresponding *_FILES variables now that automake handles rule generation. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* automake: Remove dead *_OBJECTS variables from the old build system.Eric Anholt2012-11-121-17/+0
| | | | | Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* automake: Fix a comment typo.Eric Anholt2012-11-121-1/+1
| | | | | Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* r600g: remove redundant parameter in r600_init_surfaceMarek Olšák2012-11-131-6/+4
|
* st/mesa: fix computation of last_level in GenerateMipmapMarek Olšák2012-11-121-21/+7
| | | | | | | | | Array textures were broken. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* st/mesa: fix computation of last_level during texture creationMarek Olšák2012-11-121-4/+2
| | | | | | | | | Array textures were broken. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* st/mesa: fix guessing the base level sizeMarek Olšák2012-11-121-50/+44
| | | | | | | | | | | | It was pretty broken with array textures, where the array size (height or depth depending on the target) shouldn't be magnified. The guessing also doesn't fail with 1D and cube textures. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* mesa: fix error checking of TexStorage(levels) for array and rect texturesMarek Olšák2012-11-121-3/+1
| | | | | | | NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* mesa: use MaxNumlevels in _mesa_test_texobj_completenessMarek Olšák2012-11-121-11/+3
| | | | | Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* mesa: add MaxNumLevels to gl_texture_image, remove MaxLog2Marek Olšák2012-11-125-6/+49
| | | | | | | | | | | MaxLog2 led to bugs, because it didn't work well with 1D and 3D textures. NOTE: This is a candidate for the stable branches. v2: correct the comment at MaxNumlevels Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* gallivm,draw,llvmpipe: use base ptr + mip offsets instead of mip pointersRoland Scheidegger2012-11-1214-63/+131
| | | | | | | | | This might have a slight overhead but handling mip offsets more like the width (and image) strides should make some things easier (mip level being just part of the offset calculation) later. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* llvmpipe: always allocate whole miptrees not individual levelsRoland Scheidegger2012-11-122-60/+81
| | | | | | | | This is preparation work for using mip level offsets + base_ptr for texture sampling instead of per-mip pointers. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* i965: Add comments for each of the surface state table's columns.Kenneth Graunke2012-11-121-0/+11
| | | | | | I can never remember what "AB" means, and having to constantly consult the docs is annoying. Just add comments to the top which explain each of the abbreviations.
* glapi: Stop handling XML annotation exec="{es,check,loopback}".Paul Berry2012-11-121-3/+0
| | | | | | | | | | | Previously, we used these XML annotations to make the code generation scripts aware of any instances where the Mesa implementation of a function had a prefix other than "_mesa_". Now that all of the mesa implementation functions have been renamed to match the XML, we only need to handle exec="skip", exec="dynamic", and the default case of exec="mesa". Acked-by: Brian Paul <[email protected]>
* glapi: Remove handling of mesa_name XML attribute.Paul Berry2012-11-123-53/+4
| | | | | | | | | | | Previously, we used the mesa_name XML attribute to make the code generation scripts aware of any instances where the Mesa implementation of a function had a different function name suffix than the primary name in the XML. Now that all of the Mesa implementation functions have been renamed to match the XML, this attribute is no longer necessary. Acked-by: Brian Paul <[email protected]>
* mesa: Fix const correctness of API implementation functions.Paul Berry2012-11-124-4/+6
| | | | | | | | | | | | | | This patch changes the use of const in the type signatures of _mesa_ShaderSource() and _mesa_TransformFeedbackVaryings(), to match the type signatures in the GL spec. This avoids warnings when building the code-generated api_exec.c file. Note: previously we avoided the build warnings because these functions were being type-checked against ShaderSourceARB and TransformFeedbackVaryingsEXT; those functions are semantically equivalent, but have fewer const qualifiers in their type signatures. Acked-by: Brian Paul <[email protected]>
* mesa: Standardize names of OpenGL functions.Paul Berry2012-11-1287-3259/+3176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adjusts the aliasing pattern in the GL API description XML, and the functions that implement the GL API within Mesa, to consistently follow these naming conventions: - When several function names are aliases of each other, the primary name is the one with no extension suffix (or the name with the suffix "ARB", if no unsuffixed name is available). (By "primary name", I mean the name that all the other functions point to using the XML "alias" attribute). - The name of the mesa implementation of each function is the same as the primary name, with the prefix "_mesa_". This patch renames the following mesa functions: _check_GetTexGenxvOES => _mesa_GetTexGenxvOES _check_TexGenxOES => _mesa_TexGenxOES _check_TexGenxvOES => _mesa_TexGenxvOES _es_AlphaFuncx => _mesa_AlphaFuncx _es_ClearColorx => _mesa_ClearColorx _es_ClearDepthx => _mesa_ClearDepthx _es_ClipPlanef => _mesa_ClipPlanef _es_ClipPlanex => _mesa_ClipPlanex _es_Color4x => _mesa_Color4x _es_DepthRangex => _mesa_DepthRangex _es_DrawTexxOES => _mesa_DrawTexxOES _es_DrawTexxvOES => _mesa_DrawTexxvOES _es_Fogx => _mesa_Fogx _es_Fogxv => _mesa_Fogxv _es_Frustumf => _mesa_Frustumf _es_Frustumx => _mesa_Frustumx _es_GetClipPlanef => _mesa_GetClipPlanef _es_GetClipPlanex => _mesa_GetClipPlanex _es_GetLightxv => _mesa_GetLightxv _es_GetMaterialxv => _mesa_GetMaterialxv _es_GetTexEnvxv => _mesa_GetTexEnvxv _es_GetTexParameterxv => _mesa_GetTexParameterxv _es_LightModelx => _mesa_LightModelx _es_LightModelxv => _mesa_LightModelxv _es_Lightx => _mesa_Lightx _es_Lightxv => _mesa_Lightxv _es_LineWidthx => _mesa_LineWidthx _es_LoadMatrixx => _mesa_LoadMatrixx _es_Materialx => _mesa_Materialx _es_Materialxv => _mesa_Materialxv _es_MultMatrixx => _mesa_MultMatrixx _es_MultiTexCoord4x => _mesa_MultiTexCoord4x _es_Normal3x => _mesa_Normal3x _es_Orthof => _mesa_Orthof _es_Orthox => _mesa_Orthox _es_PointParameterx => _mesa_PointParameterx _es_PointParameterxv => _mesa_PointParameterxv _es_PointSizex => _mesa_PointSizex _es_PolygonOffsetx => _mesa_PolygonOffsetx _es_QueryMatrixxOES => _mesa_QueryMatrixxOES _es_Rotatex => _mesa_Rotatex _es_SampleCoveragex => _mesa_SampleCoveragex _es_Scalex => _mesa_Scalex _es_TexEnvx => _mesa_TexEnvx _es_TexEnvxv => _mesa_TexEnvxv _es_TexParameterx => _mesa_TexParameterx _es_TexParameterxv => _mesa_TexParameterxv _es_Translatex => _mesa_Translatex _mesa_ActiveTextureARB => _mesa_ActiveTexture _mesa_BeginQueryARB => _mesa_BeginQuery _mesa_BindAttribLocationARB => _mesa_BindAttribLocation _mesa_BindBufferARB => _mesa_BindBuffer _mesa_BindFramebufferEXT => _mesa_BindFramebuffer _mesa_BindProgram => _mesa_BindProgramARB _mesa_BindRenderbufferEXT => _mesa_BindRenderbuffer _mesa_BlendEquationSeparateEXT => _mesa_BlendEquationSeparate _mesa_BlendEquationSeparatei => _mesa_BlendEquationSeparateiARB _mesa_BlendEquationi => _mesa_BlendEquationiARB _mesa_BlendFuncSeparateEXT => _mesa_BlendFuncSeparate _mesa_BlendFuncSeparatei => _mesa_BlendFuncSeparateiARB _mesa_BlendFunci => _mesa_BlendFunciARB _mesa_BlitFramebufferEXT => _mesa_BlitFramebuffer _mesa_BufferDataARB => _mesa_BufferData _mesa_BufferSubDataARB => _mesa_BufferSubData _mesa_CheckFramebufferStatusEXT => _mesa_CheckFramebufferStatus _mesa_ClampColorARB => _mesa_ClampColor _mesa_ClientActiveTextureARB => _mesa_ClientActiveTexture _mesa_ColorMaskIndexed => _mesa_ColorMaski _mesa_CompileShaderARB => _mesa_CompileShader _mesa_CompressedTexImage1DARB => _mesa_CompressedTexImage1D _mesa_CompressedTexImage2DARB => _mesa_CompressedTexImage2D _mesa_CompressedTexImage3DARB => _mesa_CompressedTexImage3D _mesa_CompressedTexSubImage1DARB => _mesa_CompressedTexSubImage1D _mesa_CompressedTexSubImage2DARB => _mesa_CompressedTexSubImage2D _mesa_CompressedTexSubImage3DARB => _mesa_CompressedTexSubImage3D _mesa_DeleteBuffersARB => _mesa_DeleteBuffers _mesa_DeleteFramebuffersEXT => _mesa_DeleteFramebuffers _mesa_DeletePrograms => _mesa_DeleteProgramsARB _mesa_DeleteQueriesARB => _mesa_DeleteQueries _mesa_DeleteRenderbuffersEXT => _mesa_DeleteRenderbuffers _mesa_DeleteVertexArraysAPPLE => _mesa_DeleteVertexArrays _mesa_DisableIndexed => _mesa_Disablei _mesa_DisableVertexAttribArrayARB => _mesa_DisableVertexAttribArray _mesa_DrawBuffersARB => _mesa_DrawBuffers _mesa_DrawTexf => _mesa_DrawTexfOES _mesa_DrawTexfv => _mesa_DrawTexfvOES _mesa_DrawTexi => _mesa_DrawTexiOES _mesa_DrawTexiv => _mesa_DrawTexivOES _mesa_DrawTexs => _mesa_DrawTexsOES _mesa_DrawTexsv => _mesa_DrawTexsvOES _mesa_EnableIndexed => _mesa_Enablei _mesa_EnableVertexAttribArrayARB => _mesa_EnableVertexAttribArray _mesa_EndQueryARB => _mesa_EndQuery _mesa_FogCoordPointerEXT => _mesa_FogCoordPointer _mesa_FramebufferRenderbufferEXT => _mesa_FramebufferRenderbuffer _mesa_FramebufferTexture1DEXT => _mesa_FramebufferTexture1D _mesa_FramebufferTexture2DEXT => _mesa_FramebufferTexture2D _mesa_FramebufferTexture3DEXT => _mesa_FramebufferTexture3D _mesa_FramebufferTextureLayerEXT => _mesa_FramebufferTextureLayer _mesa_GenBuffersARB => _mesa_GenBuffers _mesa_GenFramebuffersEXT => _mesa_GenFramebuffers _mesa_GenPrograms => _mesa_GenProgramsARB _mesa_GenQueriesARB => _mesa_GenQueries _mesa_GenRenderbuffersEXT => _mesa_GenRenderbuffers _mesa_GenerateMipmapEXT => _mesa_GenerateMipmap _mesa_GetActiveAttribARB => _mesa_GetActiveAttrib _mesa_GetActiveUniformARB => _mesa_GetActiveUniform _mesa_GetAttribLocationARB => _mesa_GetAttribLocation _mesa_GetBooleanIndexedv => _mesa_GetBooleani_v _mesa_GetBufferParameterivARB => _mesa_GetBufferParameteriv _mesa_GetBufferPointervARB => _mesa_GetBufferPointerv _mesa_GetBufferSubDataARB => _mesa_GetBufferSubData _mesa_GetCompressedTexImageARB => _mesa_GetCompressedTexImage _mesa_GetFramebufferAttachmentParameterivEXT => _mesa_GetFramebufferAttachmentParameteriv _mesa_GetIntegerIndexedv => _mesa_GetIntegeri_v _mesa_GetQueryObjecti64vEXT => _mesa_GetQueryObjecti64v _mesa_GetQueryObjectivARB => _mesa_GetQueryObjectiv _mesa_GetQueryObjectui64vEXT => _mesa_GetQueryObjectui64v _mesa_GetQueryObjectuivARB => _mesa_GetQueryObjectuiv _mesa_GetQueryivARB => _mesa_GetQueryiv _mesa_GetRenderbufferParameterivEXT => _mesa_GetRenderbufferParameteriv _mesa_GetShaderSourceARB => _mesa_GetShaderSource _mesa_GetUniformLocationARB => _mesa_GetUniformLocation _mesa_GetUniformfvARB => _mesa_GetUniformfv _mesa_GetUniformivARB => _mesa_GetUniformiv _mesa_GetVertexAttribPointervARB => _mesa_GetVertexAttribPointerv _mesa_GetVertexAttribdvARB => _mesa_GetVertexAttribdv _mesa_GetVertexAttribfvARB => _mesa_GetVertexAttribfv _mesa_GetVertexAttribivARB => _mesa_GetVertexAttribiv _mesa_IsBufferARB => _mesa_IsBuffer _mesa_IsEnabledIndexed => _mesa_IsEnabledi _mesa_IsFramebufferEXT => _mesa_IsFramebuffer _mesa_IsQueryARB => _mesa_IsQuery _mesa_IsRenderbufferEXT => _mesa_IsRenderbuffer _mesa_IsVertexArrayAPPLE => _mesa_IsVertexArray _mesa_LinkProgramARB => _mesa_LinkProgram _mesa_LoadTransposeMatrixdARB => _mesa_LoadTransposeMatrixd _mesa_LoadTransposeMatrixfARB => _mesa_LoadTransposeMatrixf _mesa_MapBufferARB => _mesa_MapBuffer _mesa_MultTransposeMatrixdARB => _mesa_MultTransposeMatrixd _mesa_MultTransposeMatrixfARB => _mesa_MultTransposeMatrixf _mesa_MultiDrawArraysEXT => _mesa_MultiDrawArrays _mesa_PointSizePointer => _mesa_PointSizePointerOES _mesa_ProvokingVertexEXT => _mesa_ProvokingVertex _mesa_RenderbufferStorageEXT => _mesa_RenderbufferStorage _mesa_SampleCoverageARB => _mesa_SampleCoverage _mesa_SecondaryColorPointerEXT => _mesa_SecondaryColorPointer _mesa_ShaderSourceARB => _mesa_ShaderSource _mesa_Uniform1fARB => _mesa_Uniform1f _mesa_Uniform1fvARB => _mesa_Uniform1fv _mesa_Uniform1iARB => _mesa_Uniform1i _mesa_Uniform1ivARB => _mesa_Uniform1iv _mesa_Uniform2fARB => _mesa_Uniform2f _mesa_Uniform2fvARB => _mesa_Uniform2fv _mesa_Uniform2iARB => _mesa_Uniform2i _mesa_Uniform2ivARB => _mesa_Uniform2iv _mesa_Uniform3fARB => _mesa_Uniform3f _mesa_Uniform3fvARB => _mesa_Uniform3fv _mesa_Uniform3iARB => _mesa_Uniform3i _mesa_Uniform3ivARB => _mesa_Uniform3iv _mesa_Uniform4fARB => _mesa_Uniform4f _mesa_Uniform4fvARB => _mesa_Uniform4fv _mesa_Uniform4iARB => _mesa_Uniform4i _mesa_Uniform4ivARB => _mesa_Uniform4iv _mesa_UniformMatrix2fvARB => _mesa_UniformMatrix2fv _mesa_UniformMatrix3fvARB => _mesa_UniformMatrix3fv _mesa_UniformMatrix4fvARB => _mesa_UniformMatrix4fv _mesa_UnmapBufferARB => _mesa_UnmapBuffer _mesa_UseProgramObjectARB => _mesa_UseProgram _mesa_ValidateProgramARB => _mesa_ValidateProgram _mesa_VertexAttribPointerARB => _mesa_VertexAttribPointer _mesa_WindowPos2dMESA => _mesa_WindowPos2d _mesa_WindowPos2dvMESA => _mesa_WindowPos2dv _mesa_WindowPos2fMESA => _mesa_WindowPos2f _mesa_WindowPos2fvMESA => _mesa_WindowPos2fv _mesa_WindowPos2iMESA => _mesa_WindowPos2i _mesa_WindowPos2ivMESA => _mesa_WindowPos2iv _mesa_WindowPos2sMESA => _mesa_WindowPos2s _mesa_WindowPos2svMESA => _mesa_WindowPos2sv _mesa_WindowPos3dMESA => _mesa_WindowPos3d _mesa_WindowPos3dvMESA => _mesa_WindowPos3dv _mesa_WindowPos3fMESA => _mesa_WindowPos3f _mesa_WindowPos3fvMESA => _mesa_WindowPos3fv _mesa_WindowPos3iMESA => _mesa_WindowPos3i _mesa_WindowPos3ivMESA => _mesa_WindowPos3iv _mesa_WindowPos3sMESA => _mesa_WindowPos3s _mesa_WindowPos3svMESA => _mesa_WindowPos3sv loopback_Color3b_f => _mesa_Color3b loopback_Color3bv_f => _mesa_Color3bv loopback_Color3d_f => _mesa_Color3d loopback_Color3dv_f => _mesa_Color3dv loopback_Color3i_f => _mesa_Color3i loopback_Color3iv_f => _mesa_Color3iv loopback_Color3s_f => _mesa_Color3s loopback_Color3sv_f => _mesa_Color3sv loopback_Color3ub_f => _mesa_Color3ub loopback_Color3ubv_f => _mesa_Color3ubv loopback_Color3ui_f => _mesa_Color3ui loopback_Color3uiv_f => _mesa_Color3uiv loopback_Color3us_f => _mesa_Color3us loopback_Color3usv_f => _mesa_Color3usv loopback_Color4b_f => _mesa_Color4b loopback_Color4bv_f => _mesa_Color4bv loopback_Color4d_f => _mesa_Color4d loopback_Color4dv_f => _mesa_Color4dv loopback_Color4i_f => _mesa_Color4i loopback_Color4iv_f => _mesa_Color4iv loopback_Color4s_f => _mesa_Color4s loopback_Color4sv_f => _mesa_Color4sv loopback_Color4ub_f => _mesa_Color4ub loopback_Color4ubv_f => _mesa_Color4ubv loopback_Color4ui_f => _mesa_Color4ui loopback_Color4uiv_f => _mesa_Color4uiv loopback_Color4us_f => _mesa_Color4us loopback_Color4usv_f => _mesa_Color4usv loopback_EdgeFlagv => _mesa_EdgeFlagv loopback_EvalCoord1d => _mesa_EvalCoord1d loopback_EvalCoord1dv => _mesa_EvalCoord1dv loopback_EvalCoord1fv => _mesa_EvalCoord1fv loopback_EvalCoord2d => _mesa_EvalCoord2d loopback_EvalCoord2dv => _mesa_EvalCoord2dv loopback_EvalCoord2fv => _mesa_EvalCoord2fv loopback_FogCoorddEXT => _mesa_FogCoordd loopback_FogCoorddvEXT => _mesa_FogCoorddv loopback_Indexd => _mesa_Indexd loopback_Indexdv => _mesa_Indexdv loopback_Indexi => _mesa_Indexi loopback_Indexiv => _mesa_Indexiv loopback_Indexs => _mesa_Indexs loopback_Indexsv => _mesa_Indexsv loopback_Indexub => _mesa_Indexub loopback_Indexubv => _mesa_Indexubv loopback_Materialf => _mesa_Materialf loopback_Materiali => _mesa_Materiali loopback_Materialiv => _mesa_Materialiv loopback_MultiTexCoord1dARB => _mesa_MultiTexCoord1d loopback_MultiTexCoord1dvARB => _mesa_MultiTexCoord1dv loopback_MultiTexCoord1iARB => _mesa_MultiTexCoord1i loopback_MultiTexCoord1ivARB => _mesa_MultiTexCoord1iv loopback_MultiTexCoord1sARB => _mesa_MultiTexCoord1s loopback_MultiTexCoord1svARB => _mesa_MultiTexCoord1sv loopback_MultiTexCoord2dARB => _mesa_MultiTexCoord2d loopback_MultiTexCoord2dvARB => _mesa_MultiTexCoord2dv loopback_MultiTexCoord2iARB => _mesa_MultiTexCoord2i loopback_MultiTexCoord2ivARB => _mesa_MultiTexCoord2iv loopback_MultiTexCoord2sARB => _mesa_MultiTexCoord2s loopback_MultiTexCoord2svARB => _mesa_MultiTexCoord2sv loopback_MultiTexCoord3dARB => _mesa_MultiTexCoord3d loopback_MultiTexCoord3dvARB => _mesa_MultiTexCoord3dv loopback_MultiTexCoord3iARB => _mesa_MultiTexCoord3i loopback_MultiTexCoord3ivARB => _mesa_MultiTexCoord3iv loopback_MultiTexCoord3sARB => _mesa_MultiTexCoord3s loopback_MultiTexCoord3svARB => _mesa_MultiTexCoord3sv loopback_MultiTexCoord4dARB => _mesa_MultiTexCoord4d loopback_MultiTexCoord4dvARB => _mesa_MultiTexCoord4dv loopback_MultiTexCoord4iARB => _mesa_MultiTexCoord4i loopback_MultiTexCoord4ivARB => _mesa_MultiTexCoord4iv loopback_MultiTexCoord4sARB => _mesa_MultiTexCoord4s loopback_MultiTexCoord4svARB => _mesa_MultiTexCoord4sv loopback_Normal3b => _mesa_Normal3b loopback_Normal3bv => _mesa_Normal3bv loopback_Normal3d => _mesa_Normal3d loopback_Normal3dv => _mesa_Normal3dv loopback_Normal3i => _mesa_Normal3i loopback_Normal3iv => _mesa_Normal3iv loopback_Normal3s => _mesa_Normal3s loopback_Normal3sv => _mesa_Normal3sv loopback_Rectd => _mesa_Rectd loopback_Rectdv => _mesa_Rectdv loopback_Rectfv => _mesa_Rectfv loopback_Recti => _mesa_Recti loopback_Rectiv => _mesa_Rectiv loopback_Rects => _mesa_Rects loopback_Rectsv => _mesa_Rectsv loopback_SecondaryColor3bEXT_f => _mesa_SecondaryColor3b loopback_SecondaryColor3bvEXT_f => _mesa_SecondaryColor3bv loopback_SecondaryColor3dEXT_f => _mesa_SecondaryColor3d loopback_SecondaryColor3dvEXT_f => _mesa_SecondaryColor3dv loopback_SecondaryColor3iEXT_f => _mesa_SecondaryColor3i loopback_SecondaryColor3ivEXT_f => _mesa_SecondaryColor3iv loopback_SecondaryColor3sEXT_f => _mesa_SecondaryColor3s loopback_SecondaryColor3svEXT_f => _mesa_SecondaryColor3sv loopback_SecondaryColor3ubEXT_f => _mesa_SecondaryColor3ub loopback_SecondaryColor3ubvEXT_f => _mesa_SecondaryColor3ubv loopback_SecondaryColor3uiEXT_f => _mesa_SecondaryColor3ui loopback_SecondaryColor3uivEXT_f => _mesa_SecondaryColor3uiv loopback_SecondaryColor3usEXT_f => _mesa_SecondaryColor3us loopback_SecondaryColor3usvEXT_f => _mesa_SecondaryColor3usv loopback_TexCoord1d => _mesa_TexCoord1d loopback_TexCoord1dv => _mesa_TexCoord1dv loopback_TexCoord1i => _mesa_TexCoord1i loopback_TexCoord1iv => _mesa_TexCoord1iv loopback_TexCoord1s => _mesa_TexCoord1s loopback_TexCoord1sv => _mesa_TexCoord1sv loopback_TexCoord2d => _mesa_TexCoord2d loopback_TexCoord2dv => _mesa_TexCoord2dv loopback_TexCoord2i => _mesa_TexCoord2i loopback_TexCoord2iv => _mesa_TexCoord2iv loopback_TexCoord2s => _mesa_TexCoord2s loopback_TexCoord2sv => _mesa_TexCoord2sv loopback_TexCoord3d => _mesa_TexCoord3d loopback_TexCoord3dv => _mesa_TexCoord3dv loopback_TexCoord3i => _mesa_TexCoord3i loopback_TexCoord3iv => _mesa_TexCoord3iv loopback_TexCoord3s => _mesa_TexCoord3s loopback_TexCoord3sv => _mesa_TexCoord3sv loopback_TexCoord4d => _mesa_TexCoord4d loopback_TexCoord4dv => _mesa_TexCoord4dv loopback_TexCoord4i => _mesa_TexCoord4i loopback_TexCoord4iv => _mesa_TexCoord4iv loopback_TexCoord4s => _mesa_TexCoord4s loopback_TexCoord4sv => _mesa_TexCoord4sv loopback_Vertex2d => _mesa_Vertex2d loopback_Vertex2dv => _mesa_Vertex2dv loopback_Vertex2i => _mesa_Vertex2i loopback_Vertex2iv => _mesa_Vertex2iv loopback_Vertex2s => _mesa_Vertex2s loopback_Vertex2sv => _mesa_Vertex2sv loopback_Vertex3d => _mesa_Vertex3d loopback_Vertex3dv => _mesa_Vertex3dv loopback_Vertex3i => _mesa_Vertex3i loopback_Vertex3iv => _mesa_Vertex3iv loopback_Vertex3s => _mesa_Vertex3s loopback_Vertex3sv => _mesa_Vertex3sv loopback_Vertex4d => _mesa_Vertex4d loopback_Vertex4dv => _mesa_Vertex4dv loopback_Vertex4i => _mesa_Vertex4i loopback_Vertex4iv => _mesa_Vertex4iv loopback_Vertex4s => _mesa_Vertex4s loopback_Vertex4sv => _mesa_Vertex4sv loopback_VertexAttrib1dARB => _mesa_VertexAttrib1d loopback_VertexAttrib1dNV => _mesa_VertexAttrib1dNV loopback_VertexAttrib1dvARB => _mesa_VertexAttrib1dv loopback_VertexAttrib1dvNV => _mesa_VertexAttrib1dvNV loopback_VertexAttrib1sARB => _mesa_VertexAttrib1s loopback_VertexAttrib1sNV => _mesa_VertexAttrib1sNV loopback_VertexAttrib1svARB => _mesa_VertexAttrib1sv loopback_VertexAttrib1svNV => _mesa_VertexAttrib1svNV loopback_VertexAttrib2dARB => _mesa_VertexAttrib2d loopback_VertexAttrib2dNV => _mesa_VertexAttrib2dNV loopback_VertexAttrib2dvARB => _mesa_VertexAttrib2dv loopback_VertexAttrib2dvNV => _mesa_VertexAttrib2dvNV loopback_VertexAttrib2sARB => _mesa_VertexAttrib2s loopback_VertexAttrib2sNV => _mesa_VertexAttrib2sNV loopback_VertexAttrib2svARB => _mesa_VertexAttrib2sv loopback_VertexAttrib2svNV => _mesa_VertexAttrib2svNV loopback_VertexAttrib3dARB => _mesa_VertexAttrib3d loopback_VertexAttrib3dNV => _mesa_VertexAttrib3dNV loopback_VertexAttrib3dvARB => _mesa_VertexAttrib3dv loopback_VertexAttrib3dvNV => _mesa_VertexAttrib3dvNV loopback_VertexAttrib3sARB => _mesa_VertexAttrib3s loopback_VertexAttrib3sNV => _mesa_VertexAttrib3sNV loopback_VertexAttrib3svARB => _mesa_VertexAttrib3sv loopback_VertexAttrib3svNV => _mesa_VertexAttrib3svNV loopback_VertexAttrib4NbvARB => _mesa_VertexAttrib4Nbv loopback_VertexAttrib4NivARB => _mesa_VertexAttrib4Niv loopback_VertexAttrib4NsvARB => _mesa_VertexAttrib4Nsv loopback_VertexAttrib4NubARB => _mesa_VertexAttrib4Nub loopback_VertexAttrib4NubvARB => _mesa_VertexAttrib4Nubv loopback_VertexAttrib4NuivARB => _mesa_VertexAttrib4Nuiv loopback_VertexAttrib4NusvARB => _mesa_VertexAttrib4Nusv loopback_VertexAttrib4bvARB => _mesa_VertexAttrib4bv loopback_VertexAttrib4dARB => _mesa_VertexAttrib4d loopback_VertexAttrib4dNV => _mesa_VertexAttrib4dNV loopback_VertexAttrib4dvARB => _mesa_VertexAttrib4dv loopback_VertexAttrib4dvNV => _mesa_VertexAttrib4dvNV loopback_VertexAttrib4ivARB => _mesa_VertexAttrib4iv loopback_VertexAttrib4sARB => _mesa_VertexAttrib4s loopback_VertexAttrib4sNV => _mesa_VertexAttrib4sNV loopback_VertexAttrib4svARB => _mesa_VertexAttrib4sv loopback_VertexAttrib4svNV => _mesa_VertexAttrib4svNV loopback_VertexAttrib4ubNV => _mesa_VertexAttrib4ubNV loopback_VertexAttrib4ubvARB => _mesa_VertexAttrib4ubv loopback_VertexAttrib4ubvNV => _mesa_VertexAttrib4ubvNV loopback_VertexAttrib4uivARB => _mesa_VertexAttrib4uiv loopback_VertexAttrib4usvARB => _mesa_VertexAttrib4usv loopback_VertexAttribI1iv => _mesa_VertexAttribI1iv loopback_VertexAttribI1uiv => _mesa_VertexAttribI1uiv loopback_VertexAttribI4bv => _mesa_VertexAttribI4bv loopback_VertexAttribI4sv => _mesa_VertexAttribI4sv loopback_VertexAttribI4ubv => _mesa_VertexAttribI4ubv loopback_VertexAttribI4usv => _mesa_VertexAttribI4usv loopback_VertexAttribs1dvNV => _mesa_VertexAttribs1dvNV loopback_VertexAttribs1fvNV => _mesa_VertexAttribs1fvNV loopback_VertexAttribs1svNV => _mesa_VertexAttribs1svNV loopback_VertexAttribs2dvNV => _mesa_VertexAttribs2dvNV loopback_VertexAttribs2fvNV => _mesa_VertexAttribs2fvNV loopback_VertexAttribs2svNV => _mesa_VertexAttribs2svNV loopback_VertexAttribs3dvNV => _mesa_VertexAttribs3dvNV loopback_VertexAttribs3fvNV => _mesa_VertexAttribs3fvNV loopback_VertexAttribs3svNV => _mesa_VertexAttribs3svNV loopback_VertexAttribs4dvNV => _mesa_VertexAttribs4dvNV loopback_VertexAttribs4fvNV => _mesa_VertexAttribs4fvNV loopback_VertexAttribs4svNV => _mesa_VertexAttribs4svNV loopback_VertexAttribs4ubvNV => _mesa_VertexAttribs4ubvNV And changes the primary name assignment in the XML as follows: ActiveTextureARB => ActiveTexture AlphaFuncxOES => AlphaFuncx BeginConditionalRenderNV => BeginConditionalRender BeginQueryARB => BeginQuery BeginTransformFeedbackEXT => BeginTransformFeedback BindAttribLocationARB => BindAttribLocation BindBufferARB => BindBuffer BindBufferBaseEXT => BindBufferBase BindBufferRangeEXT => BindBufferRange BindFragDataLocationEXT => BindFragDataLocation BindFramebufferEXT => BindFramebuffer BindProgramNV => BindProgramARB BindRenderbufferEXT => BindRenderbuffer BlendEquationSeparateEXT => BlendEquationSeparate BlendFuncSeparateEXT => BlendFuncSeparate BlitFramebufferEXT => BlitFramebuffer BufferDataARB => BufferData BufferSubDataARB => BufferSubData CheckFramebufferStatusEXT => CheckFramebufferStatus ClampColorARB => ClampColor ClearColorxOES => ClearColorx ClearDepthxOES => ClearDepthx ClientActiveTextureARB => ClientActiveTexture ClipPlanefOES => ClipPlanef ClipPlanexOES => ClipPlanex Color4xOES => Color4x ColorMaskIndexedEXT => ColorMaski CompileShaderARB => CompileShader CompressedTexImage1DARB => CompressedTexImage1D CompressedTexImage2DARB => CompressedTexImage2D CompressedTexImage3DARB => CompressedTexImage3D CompressedTexSubImage1DARB => CompressedTexSubImage1D CompressedTexSubImage2DARB => CompressedTexSubImage2D CompressedTexSubImage3DARB => CompressedTexSubImage3D DeleteBuffersARB => DeleteBuffers DeleteFramebuffersEXT => DeleteFramebuffers DeleteProgramsNV => DeleteProgramsARB DeleteQueriesARB => DeleteQueries DeleteRenderbuffersEXT => DeleteRenderbuffers DeleteVertexArraysAPPLE => DeleteVertexArrays DepthRangexOES => DepthRangex DisableIndexedEXT => Disablei DisableVertexAttribArrayARB => DisableVertexAttribArray DrawBuffersARB => DrawBuffers EnableIndexedEXT => Enablei EnableVertexAttribArrayARB => EnableVertexAttribArray EndConditionalRenderNV => EndConditionalRender EndQueryARB => EndQuery EndTransformFeedbackEXT => EndTransformFeedback FogCoordPointerEXT => FogCoordPointer FogCoorddEXT => FogCoordd FogCoorddvEXT => FogCoorddv FogxOES => Fogx FogxvOES => Fogxv FramebufferRenderbufferEXT => FramebufferRenderbuffer FramebufferTexture1DEXT => FramebufferTexture1D FramebufferTexture2DEXT => FramebufferTexture2D FramebufferTexture3DEXT => FramebufferTexture3D FramebufferTextureLayerEXT => FramebufferTextureLayer FrustumfOES => Frustumf FrustumxOES => Frustumx GenBuffersARB => GenBuffers GenFramebuffersEXT => GenFramebuffers GenProgramsNV => GenProgramsARB GenQueriesARB => GenQueries GenRenderbuffersEXT => GenRenderbuffers GenerateMipmapEXT => GenerateMipmap GetActiveAttribARB => GetActiveAttrib GetActiveUniformARB => GetActiveUniform GetAttribLocationARB => GetAttribLocation GetBooleanIndexedvEXT => GetBooleani_v GetBufferParameterivARB => GetBufferParameteriv GetBufferPointervARB => GetBufferPointerv GetBufferSubDataARB => GetBufferSubData GetClipPlanefOES => GetClipPlanef GetClipPlanexOES => GetClipPlanex GetCompressedTexImageARB => GetCompressedTexImage GetFixedvOES => GetFixedv GetFragDataLocationEXT => GetFragDataLocation GetFramebufferAttachmentParameterivEXT => GetFramebufferAttachmentParameteriv GetIntegerIndexedvEXT => GetIntegeri_v GetLightxvOES => GetLightxv GetMaterialxvOES => GetMaterialxv GetQueryObjecti64vEXT => GetQueryObjecti64v GetQueryObjectivARB => GetQueryObjectiv GetQueryObjectui64vEXT => GetQueryObjectui64v GetQueryObjectuivARB => GetQueryObjectuiv GetQueryivARB => GetQueryiv GetRenderbufferParameterivEXT => GetRenderbufferParameteriv GetShaderSourceARB => GetShaderSource GetTexEnvxvOES => GetTexEnvxv GetTexParameterIivEXT => GetTexParameterIiv GetTexParameterIuivEXT => GetTexParameterIuiv GetTexParameterxvOES => GetTexParameterxv GetTransformFeedbackVaryingEXT => GetTransformFeedbackVarying GetUniformLocationARB => GetUniformLocation GetUniformfvARB => GetUniformfv GetUniformivARB => GetUniformiv GetUniformuivEXT => GetUniformuiv GetVertexAttribIivEXT => GetVertexAttribIiv GetVertexAttribIuivEXT => GetVertexAttribIuiv GetVertexAttribPointervNV => GetVertexAttribPointerv GetVertexAttribdvARB => GetVertexAttribdv GetVertexAttribfvARB => GetVertexAttribfv GetVertexAttribivARB => GetVertexAttribiv IsBufferARB => IsBuffer IsEnabledIndexedEXT => IsEnabledi IsFramebufferEXT => IsFramebuffer IsProgramNV => IsProgramARB IsQueryARB => IsQuery IsRenderbufferEXT => IsRenderbuffer IsVertexArrayAPPLE => IsVertexArray LightModelxOES => LightModelx LightModelxvOES => LightModelxv LightxOES => Lightx LightxvOES => Lightxv LineWidthxOES => LineWidthx LinkProgramARB => LinkProgram LoadMatrixxOES => LoadMatrixx LoadTransposeMatrixdARB => LoadTransposeMatrixd LoadTransposeMatrixfARB => LoadTransposeMatrixf MapBufferARB => MapBuffer MaterialxOES => Materialx MaterialxvOES => Materialxv MultMatrixxOES => MultMatrixx MultTransposeMatrixdARB => MultTransposeMatrixd MultTransposeMatrixfARB => MultTransposeMatrixf MultiDrawArraysEXT => MultiDrawArrays MultiTexCoord1dARB => MultiTexCoord1d MultiTexCoord1dvARB => MultiTexCoord1dv MultiTexCoord1iARB => MultiTexCoord1i MultiTexCoord1ivARB => MultiTexCoord1iv MultiTexCoord1sARB => MultiTexCoord1s MultiTexCoord1svARB => MultiTexCoord1sv MultiTexCoord2dARB => MultiTexCoord2d MultiTexCoord2dvARB => MultiTexCoord2dv MultiTexCoord2iARB => MultiTexCoord2i MultiTexCoord2ivARB => MultiTexCoord2iv MultiTexCoord2sARB => MultiTexCoord2s MultiTexCoord2svARB => MultiTexCoord2sv MultiTexCoord3dARB => MultiTexCoord3d MultiTexCoord3dvARB => MultiTexCoord3dv MultiTexCoord3iARB => MultiTexCoord3i MultiTexCoord3ivARB => MultiTexCoord3iv MultiTexCoord3sARB => MultiTexCoord3s MultiTexCoord3svARB => MultiTexCoord3sv MultiTexCoord4dARB => MultiTexCoord4d MultiTexCoord4dvARB => MultiTexCoord4dv MultiTexCoord4iARB => MultiTexCoord4i MultiTexCoord4ivARB => MultiTexCoord4iv MultiTexCoord4sARB => MultiTexCoord4s MultiTexCoord4svARB => MultiTexCoord4sv MultiTexCoord4xOES => MultiTexCoord4x Normal3xOES => Normal3x OrthofOES => Orthof OrthoxOES => Orthox PointParameterfEXT => PointParameterf PointParameterfvEXT => PointParameterfv PointParameteriNV => PointParameteri PointParameterivNV => PointParameteriv PointParameterxOES => PointParameterx PointParameterxvOES => PointParameterxv PointSizexOES => PointSizex PolygonOffsetxOES => PolygonOffsetx PrimitiveRestartIndexNV => PrimitiveRestartIndex ProvokingVertexEXT => ProvokingVertex RenderbufferStorageEXT => RenderbufferStorage RotatexOES => Rotatex SampleCoverageARB => SampleCoverage SampleCoveragexOES => SampleCoveragex ScalexOES => Scalex SecondaryColor3bEXT => SecondaryColor3b SecondaryColor3bvEXT => SecondaryColor3bv SecondaryColor3dEXT => SecondaryColor3d SecondaryColor3dvEXT => SecondaryColor3dv SecondaryColor3iEXT => SecondaryColor3i SecondaryColor3ivEXT => SecondaryColor3iv SecondaryColor3sEXT => SecondaryColor3s SecondaryColor3svEXT => SecondaryColor3sv SecondaryColor3ubEXT => SecondaryColor3ub SecondaryColor3ubvEXT => SecondaryColor3ubv SecondaryColor3uiEXT => SecondaryColor3ui SecondaryColor3uivEXT => SecondaryColor3uiv SecondaryColor3usEXT => SecondaryColor3us SecondaryColor3usvEXT => SecondaryColor3usv SecondaryColorPointerEXT => SecondaryColorPointer ShaderSourceARB => ShaderSource TexBufferARB => TexBuffer TexEnvxOES => TexEnvx TexEnvxvOES => TexEnvxv TexParameterIivEXT => TexParameterIiv TexParameterIuivEXT => TexParameterIuiv TexParameterxOES => TexParameterx TexParameterxvOES => TexParameterxv TransformFeedbackVaryingsEXT => TransformFeedbackVaryings TranslatexOES => Translatex Uniform1fARB => Uniform1f Uniform1fvARB => Uniform1fv Uniform1iARB => Uniform1i Uniform1ivARB => Uniform1iv Uniform1uiEXT => Uniform1ui Uniform1uivEXT => Uniform1uiv Uniform2fARB => Uniform2f Uniform2fvARB => Uniform2fv Uniform2iARB => Uniform2i Uniform2ivARB => Uniform2iv Uniform2uiEXT => Uniform2ui Uniform2uivEXT => Uniform2uiv Uniform3fARB => Uniform3f Uniform3fvARB => Uniform3fv Uniform3iARB => Uniform3i Uniform3ivARB => Uniform3iv Uniform3uiEXT => Uniform3ui Uniform3uivEXT => Uniform3uiv Uniform4fARB => Uniform4f Uniform4fvARB => Uniform4fv Uniform4iARB => Uniform4i Uniform4ivARB => Uniform4iv Uniform4uiEXT => Uniform4ui Uniform4uivEXT => Uniform4uiv UniformMatrix2fvARB => UniformMatrix2fv UniformMatrix3fvARB => UniformMatrix3fv UniformMatrix4fvARB => UniformMatrix4fv UnmapBufferARB => UnmapBuffer UseProgramObjectARB => UseProgram ValidateProgramARB => ValidateProgram VertexAttrib1dARB => VertexAttrib1d VertexAttrib1dvARB => VertexAttrib1dv VertexAttrib1sARB => VertexAttrib1s VertexAttrib1svARB => VertexAttrib1sv VertexAttrib2dARB => VertexAttrib2d VertexAttrib2dvARB => VertexAttrib2dv VertexAttrib2sARB => VertexAttrib2s VertexAttrib2svARB => VertexAttrib2sv VertexAttrib3dARB => VertexAttrib3d VertexAttrib3dvARB => VertexAttrib3dv VertexAttrib3sARB => VertexAttrib3s VertexAttrib3svARB => VertexAttrib3sv VertexAttrib4NbvARB => VertexAttrib4Nbv VertexAttrib4NivARB => VertexAttrib4Niv VertexAttrib4NsvARB => VertexAttrib4Nsv VertexAttrib4NubARB => VertexAttrib4Nub VertexAttrib4NubvARB => VertexAttrib4Nubv VertexAttrib4NuivARB => VertexAttrib4Nuiv VertexAttrib4NusvARB => VertexAttrib4Nusv VertexAttrib4bvARB => VertexAttrib4bv VertexAttrib4dARB => VertexAttrib4d VertexAttrib4dvARB => VertexAttrib4dv VertexAttrib4ivARB => VertexAttrib4iv VertexAttrib4sARB => VertexAttrib4s VertexAttrib4svARB => VertexAttrib4sv VertexAttrib4ubvARB => VertexAttrib4ubv VertexAttrib4uivARB => VertexAttrib4uiv VertexAttrib4usvARB => VertexAttrib4usv VertexAttribDivisorARB => VertexAttribDivisor VertexAttribI1ivEXT => VertexAttribI1iv VertexAttribI1uivEXT => VertexAttribI1uiv VertexAttribI4bvEXT => VertexAttribI4bv VertexAttribI4svEXT => VertexAttribI4sv VertexAttribI4ubvEXT => VertexAttribI4ubv VertexAttribI4usvEXT => VertexAttribI4usv VertexAttribIPointerEXT => VertexAttribIPointer VertexAttribPointerARB => VertexAttribPointer WindowPos2dMESA => WindowPos2d WindowPos2dvMESA => WindowPos2dv WindowPos2fMESA => WindowPos2f WindowPos2fvMESA => WindowPos2fv WindowPos2iMESA => WindowPos2i WindowPos2ivMESA => WindowPos2iv WindowPos2sMESA => WindowPos2s WindowPos2svMESA => WindowPos2sv WindowPos3dMESA => WindowPos3d WindowPos3dvMESA => WindowPos3dv WindowPos3fMESA => WindowPos3f WindowPos3fvMESA => WindowPos3fv WindowPos3iMESA => WindowPos3i WindowPos3ivMESA => WindowPos3iv WindowPos3sMESA => WindowPos3s WindowPos3svMESA => WindowPos3sv Acked-by: Brian Paul <[email protected]>
* radeonsi: Implement alpha testing in pixel shader.Michel Dänzer2012-11-126-38/+52
| | | | Signed-off-by: Michel Dänzer <[email protected]>
* radeonsi: Initialize uses_kill boolean from TGSI info.Michel Dänzer2012-11-121-0/+1
| | | | | | Fixes discarded pixels incorrectly updating the depth buffer. Signed-off-by: Michel Dänzer <[email protected]>
* glsl: store read vector in a temp in vec_index_to_condVincent Lejeune2012-11-111-4/+12
| | | | | | | | | | | | | | | | | | | | | Vector indexing on matrixes generates several copy of the constant matrix, for instance vec=mat4[i][j] generates : vec=mat4[i].x; vec=(j==1)?mat4[i].y; vec=(j==2)?mat4[i].z; vec=(j==3)?mat4[i].w; In the case of constant matrixes, the mat4[i] expression generates copy of the 16 elements of the matrix 4 times ; indirect addressing also prevents some conservative CSE algorithms (like the one in LLVM) from factoring the mat4[i] expression. This patch will make the vec_index_to_cond pass generates : temp = mat4[i]; vec=temp.x; vec=(j==1)?temp.y; vec=(j==2)?temp.z; vec=(j==3)?temp.w; Reviewed-by: Kenneth Graunke <[email protected]>
* gallium/u_blitter: handle PIPE_TEXTURE_CUBE_ARRAY in is_box_inside_resourceMarek Olšák2012-11-111-0/+6
|
* build: fix enable/disable language in ./configure --helpAndreas Boll2012-11-102-2/+2
| | | | | | | Based on patch from Brian Paul. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32317 Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Fix AA Line Distance Mode in 3DSTATE_SF on Ivybridge.Kenneth Graunke2012-11-101-3/+1
| | | | | | | | | | | | | We were accidentally setting bit 14 in DWord 2 (which is Reserved/MBZ) rather than bit 14 in DWord 3 (which is AA Line Distance Mode). There's also no reason to ever set it to legacy mode; the bit is only used when drawing antialiased lines anyway. Set it unconditionally. NOTE: This is a candidate for stable branches. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* dri_util: Fix prologue comment for driCreateConfigsIan Romanick2012-11-091-17/+5
| | | | | | | | The parameters and operation of this function changed, but I didn't bother to change the prologue comment. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* swrast: swrastFillInModes doesn't do 8-bit modes, so don't tryIan Romanick2012-11-091-3/+1
| | | | | | | | | | | Support for 8-bit modes was removed in commits 0398a26 and bda208a4. However, I didn't notice code in dri_init_screen that explicitly tries to create this modes. This is structurally different from other drivers (that only create modes that match the display color depth). Signed-off-by: Ian Romanick <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56555 Cc: Vinson Lee <[email protected]>
* Fix use of glsl_parser.{cc,h} where source dir != build dir.Darren Salt2012-11-091-1/+2
| | | | | | | | Fixes a regression caused by commit 9948a3365. https://bugs.freedesktop.org/show_bug.cgi?id=56787 https://bugs.freedesktop.org/show_bug.cgi?id=56685 Reviewed-by: Matt Turner <[email protected]>
* Revert "mesa: assert that key->fragprog_inputs_read value isn't too large"Brian Paul2012-11-091-2/+0
| | | | | | | | This reverts commit 0d61f879a1f2e6bb37368731a29d5267e1c25195. Assigning the FS inputs to the 12 bit field is fine since we don't care about the higher FS inputs. Maybe I'll revisit silencing the compiler warning another day.
* glcpp: wire up glcpp-test to make checkMatt Turner2012-11-092-4/+14
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp/tests: Add tests for multiline #elifMatt Turner2012-11-092-0/+15
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp/tests: Add test for multiline #ifMatt Turner2012-11-092-0/+13
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp/tests: Add test for multiline #lineMatt Turner2012-11-092-0/+11
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp/tests: Add test to check #line followed by codeMatt Turner2012-11-092-0/+5
| | | | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51802 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51506 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41152 Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: don't push #line directives into next lineFabian Bieler2012-11-092-9/+9
| | | | | | | | | | | | | | By moving the HASH_LINE rule out of control_line: and into line:, we avoid adding control_line's additional \n (as seen in the first hunk). mattst88: Carl and I determined independently of Fabian that the 091 test needed to be modified identically to this, and our patch to fix the test was more complicated. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51506 Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Carl Worth <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Reject garbage after #else and #endif tokensMatt Turner2012-11-095-4/+15
| | | | | | | | | | | | | | | | | | | | | | Previously we were accepting garbage after #else and #endif tokens when the previous preprocessor conditional evaluated to false (eg, #if 0). When the preprocessor hits a false conditional, it switches the lexer into the SKIP state, in which it ignores non-control tokens. The parser pops the SKIP state off the stack when it reaches the associated #elif, #else, or #endif. Unfortunately, that meant that it only left the SKIP state after the lexing the entire line containing the #token and thus would accept garbage after the #token. To fix this we use a mid-rule, which is executed immediately after the #token is parsed. NOTE: This is a candidate for the stable branch Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56442 Fixes: preprocess17_frag.test from oglconform Reviewed-by: Carl Worth <[email protected]> (glcpp-parse.y) Acked-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>