Kenneth Graunke [Thu, 8 Nov 2012 10:24:08 +0000 (02:24 -0800)]
mesa: Fix error code for glTexParameteri of TEXTURE_MAX_LEVEL.
Calling glTexParameteri() with pname GL_TEXTURE_MAX_LEVEL and either a
target of GL_TEXTURE_RECTANGLE or a negative value previously generated
GL_INVALID_OPERATION. However, GL_INVALID_VALUE seems more appropriate.
Fixes oglconform's api-error/negative.glTexParameter and es3conform's
sgis_texture_lod_basic_error.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-and-tested-by: Matt Turner <mattst88@gmail.com>
Kenneth Graunke [Mon, 19 Nov 2012 07:51:47 +0000 (23:51 -0800)]
i965/vs: Don't lose attribute type when converting ATTR to FIXED_HW_REG.
The new brw_reg always had type BRW_REGISTER_TYPE_F, rather than
inheriting the original type of the ATTR file register.
In the past, this hasn't been a problem since we only execute this code
when fixing up GL_FIXED attributes, which always have float types.
However, we'll soon be using it for ARB_vertex_type_10_10_10_2 support,
which uses D and UD types.
Reviewed-by: Eric Anholt <eric@anholt.net>
Chad Versace [Fri, 9 Nov 2012 22:06:41 +0000 (14:06 -0800)]
egl/dri2: Set error code when dri2CreateContextAttribs fails
When dri2CreateContextContextAttribs failed, eglCreateContext returned
NULL yet set the error code to EGL_SUCCESS! The problem was that
eglCreateContext ignored the error code returned by
driCreateContextAttribs.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56706
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Chad Versace [Fri, 9 Nov 2012 22:06:40 +0000 (14:06 -0800)]
i965: Validate requested GLES context version in brwCreateContext
For GLES1 and GLES2, brwCreateContext neglected to validate the requested
context version received from the DRI layer. If DRI requested an OpenGL
ES2 context with version 3.9, we provided it one.
Before this fix, the switch statement that validated the requested GL
context flavor was an ugly #ifdef copy-paste mess. Instead of reproducing
the copy-past-mess for GLES1 and GLES2, I first refactored it. Now the
switch statement is readable.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Maarten Lankhorst [Mon, 19 Nov 2012 08:43:29 +0000 (09:43 +0100)]
automake: strip LLVM_CXXFLAGS and LLVM_CPPFLAGS too
It seems that -NDEBUG and other flags might still be leaked through
those variables, so strip those off there as well.
NOTE: This is a candidate for the 9.0 branch.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Kenneth Graunke [Thu, 15 Nov 2012 04:50:05 +0000 (20:50 -0800)]
i965/fs: Properly patch special values during VGRF compaction.
In addition to registers used by instructions, fs_visitor maintains
direct references to certain "special" values used for inputs/outputs.
When I added VGRF compaction, I overlooked these, believing that these
direct references weren't used once instructions were generated. That
was wrong. For example, pixel_x/y are used in virtual_grf_interferes(),
which is called by optimization passes and register allocation.
This patch treats all of them as used and patches them after compacting.
While it's not strictly necessary to patch all of them (as some aren't
used after emitting code), it seems safer to simply fix them all.
Fixes oglconform's textureswizzle/advanced.shader.targets, piglit's
glsl-fs-lots-of-tex, and glean's texCombine on pre-Gen6 hardware.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56790
Reviewed-by: Eric Anholt <eric@anholt.net>
Eric Anholt [Wed, 14 Nov 2012 22:37:00 +0000 (14:37 -0800)]
i965/gen4: Respect the VERTEX_PROGRAM_TWO_SIDE vertex program/shader flag.
Fixes piglit "vertex-program-two-side enabled front back" and 4 others.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Tue, 13 Nov 2012 22:40:22 +0000 (14:40 -0800)]
mesa: Fix linker-assigned varying component counting since
8fb1e4a462
The goal of that change was to skip counting things that aren't actually
outputs from the VS to the FS. However, explicit_location isn't set in
the case of linker-assigned locations (the common case), so basically
varying component counting got disabled. At this stage of the linker,
we've already ensured that var->location is set, so we can just look at
it without worrying.
Fixes i965 assertion failure with the new
piglit glsl-max-varyings --exceed-limits.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51545
Reviewed-by: Brian Paul <brianp@vmware.com>
Eric Anholt [Tue, 13 Nov 2012 21:39:37 +0000 (13:39 -0800)]
mesa: Fix segfault on reading from a missing color read buffer.
The diff looks funny, but it's moving the integer vs non-integer check
below the _mesa_source_buffer_exists() check that ensures
_ColorReadBuffer is non-null, so we get a GL_INVALID_OPERATION instead
of a segfault. This looks like it had regressed in the
_mesa_error_check_format_and_type() changes, which removed the first of
the two duplicated checks for the source buffer. Fixes segfault in the
new piglit ARB_framebuffer_object/negative-readpixels-no-rb.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45877
NOTE: This is a candidate for the stable branches.
Reviewed-by: Brian Paul <brianp@vmware.com>
Eric Anholt [Tue, 13 Nov 2012 20:45:35 +0000 (12:45 -0800)]
intel: Use core mesa support for determining lastLevel.
We had similar issues with using depth in determining the lastLevel of array
textures.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Eric Anholt [Tue, 13 Nov 2012 20:45:19 +0000 (12:45 -0800)]
mesa: Also handle GL_TEXTURE_EXTENRAL_OES in max num levels.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Eric Anholt [Thu, 8 Nov 2012 22:02:22 +0000 (14:02 -0800)]
i965/fs: Unify the param pointer allocation for FP/non-FP.
Now that we're using the new backend, we may actually put things into push
constants if you have too many uniform values uploaded. Also, correctly
account for texture rectangle params and drop the old special case for the
0.0/1.0 params from the old backend.
Maarten Lankhorst [Sat, 17 Nov 2012 12:22:39 +0000 (13:22 +0100)]
st/vdpau: Fix vlVdpVideoSurfaceSize for interlaced buffers
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Andreas Boll [Sat, 17 Nov 2012 07:57:00 +0000 (08:57 +0100)]
docs: import release notes for 9.0.1, add news item
Vinson Lee [Thu, 15 Nov 2012 06:25:05 +0000 (22:25 -0800)]
util: Only use open coded snprintf for MSVC.
MinGW has snprintf.
The patch fixes these warnings with the MinGW SCons build.
src/gallium/auxiliary/util/u_snprintf.c:459:1: warning: no previous prototype for ‘util_vsnprintf’ [-Wmissing-prototypes]
src/gallium/auxiliary/util/u_snprintf.c:1436:1: warning: no previous prototype for ‘util_snprintf’ [-Wmissing-prototypes]
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Tested-by: Brian Paul <brianp@vmware.com>
Tom Stellard [Mon, 12 Nov 2012 16:04:03 +0000 (16:04 +0000)]
clover: Fix build with clang 3.2
Tom Stellard [Sun, 16 Sep 2012 03:25:34 +0000 (23:25 -0400)]
r300/compiler: Avoid generating MOV instructions for invalid IMM swizzles v2
If an instruction reads from a constant register that contains
immediates using an invalid swizzle, we can avoid generating MOV
instructions to fix up the swizzle by loading the immediates into a
different constant register that can be read using a valid swizzle.
This only affects r300 and r400 cards.
For example:
CONST[1] = { -3.5000 3.5000 2.5000 1.5000 }
MAD temp[4].xy, const[0].xy__, const[1].xz__, input[0].xy__;
========== Before this change would be lowered to: =========
CONST[1] = { -3.5000 3.5000 2.5000 1.5000 }
MOV temp[0].x, const[1].x___;
MOV temp[0].y, const[1]._z__;
MAD temp[4].xy, const[0].xy__, temp[0].xy__, input[0].xy__;
========== After this change is lowered to: ===============
CONST[1] = { -3.5000 3.5000 2.5000 1.5000 }
CONST[2] = { 0.0000 -3.5000 2.5000 0.0000 }
MAD temp[4].xy, const[0].xy__, const[2].yz__, input[0].xy__;
============================================================
This change reduces one of the Lightsmark shaders from 133 to 91
instructions.
v2:
- Fix crash caused by swizzles with only inline constants.
Alex Deucher [Fri, 16 Nov 2012 00:17:34 +0000 (19:17 -0500)]
radeonsi: clean up some magic numbers
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Alex Deucher [Fri, 16 Nov 2012 00:15:53 +0000 (19:15 -0500)]
radeonsi: emit PA_SC_RASTER_CONFIG
Use per asic golden values.
Programming this register doesn't seem to be strictly
necessary on SI, but programming it wrong leads to
rendering issues or reduced performance so just
go ahead and program the golden values explicitly
to avoid any potential problems down the road.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Maarten Lankhorst [Fri, 16 Nov 2012 17:50:57 +0000 (18:50 +0100)]
[PATCH] makefiles: use configured name for -ldrm* where possible
For precise lts support I had to do some magic with the library names, which works fine
as long as the libraries from pkg-config are used.
The parts with src/gallium/targets/va-*/Makefile will not apply on the master branch,
but do apply to the 9.0 branch.
NOTE: This is a candidate for the 9.0 branch.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Andreas Boll [Thu, 15 Nov 2012 10:09:38 +0000 (11:09 +0100)]
docs: add note about removal of OpenVMS support
Matt Turner [Thu, 23 Aug 2012 01:44:54 +0000 (18:44 -0700)]
Remove OpenVMS support
Not maintained since 2008. Doubtful that it's worked in quite a while.
Also see commit
32ac8cb05 which removed VMS stuff from Makefile in 2009.
Cc: Jouk Jansen <j.jansen@tudelft.nl>
Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Andreas Boll <andreas.boll.dev@gmail.com>
Andreas Boll [Thu, 15 Nov 2012 09:11:51 +0000 (10:11 +0100)]
build: add missing Makefile.in files to tarballs target
Those are recently introduced on master.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Andreas Boll [Wed, 14 Nov 2012 22:38:16 +0000 (23:38 +0100)]
build: fix make tarballs target
fixes regression introduced in
907844107252260c646aca361191ef7f121f3d23
Targets for making lex.yy.c program_parse.tab.c and program_parse.tab.h
got moved into its own Makefile
Reviewed-by: Matt Turner <mattst88@gmail.com>
Matt Turner [Thu, 15 Nov 2012 19:56:22 +0000 (11:56 -0800)]
gles2: Update gl2ext.h to revision 19436
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Matt Turner [Thu, 15 Nov 2012 19:55:59 +0000 (11:55 -0800)]
gles2: Update gl2.h to revision 16803
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Matt Turner [Thu, 15 Nov 2012 19:55:16 +0000 (11:55 -0800)]
gles: Update glext.h to revision 19260
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Matt Turner [Thu, 15 Nov 2012 19:54:20 +0000 (11:54 -0800)]
egl: Update eglext.h to revision 19571
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Matt Turner [Tue, 13 Nov 2012 21:49:51 +0000 (13:49 -0800)]
mesa: return INVALID_VALUE from WaitSync if timeout != GL_TIMEOUT_IGNORED
This was added in version 22 of the GL_ARB_sync spec.
Fixes gles3conform's sync_error_waitsync_timeout test.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Matt Turner [Tue, 13 Nov 2012 21:26:11 +0000 (13:26 -0800)]
mesa: return INVALID_VALUE from WaitSync if flags != 0
Fixes gles3conform's sync_error_waitsync_flags test.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Matt Turner [Tue, 13 Nov 2012 21:26:11 +0000 (13:26 -0800)]
mesa: return INVALID_VALUE from ClientWaitSync if flags contains an unsupported flag
Fixes gles3conform's sync_error_clientwaitsync_flags test.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Matt Turner [Tue, 13 Nov 2012 21:05:03 +0000 (13:05 -0800)]
mesa: return INVALID_VALUE from VertexAttribDivisor if index out of range
All the other range checks on index already return the proper error,
INVALID_VALUE.
Fixes gles3conform's instanced_arrays_invalid test.
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Matt Turner [Tue, 13 Nov 2012 00:45:43 +0000 (16:45 -0800)]
glcpp: Don't define macros for extensions that aren't in ES
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Alex Deucher [Thu, 15 Nov 2012 20:36:46 +0000 (15:36 -0500)]
radeonsi: remove new asserts and replace with warnings
Fixes piglit regressions.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Kenneth Graunke [Sat, 3 Nov 2012 04:24:05 +0000 (21:24 -0700)]
i965/fs: Don't calculate_live_intervals() in opt_algebraic().
There's no point: opt_algebraic() doesn't use any liveness information.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 22:24:31 +0000 (14:24 -0800)]
i965: Remove duplicate brw_opcodes table in favor of opcode_descs.
brw_optimize.c's brw_opcodes table was a copy of brw_disasm.c's
opcode_descs table, but with an additional field: is_arith. Now that
I've deleted that, the two are identical. Keep the one in brw_disasm.c.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Sun, 11 Nov 2012 05:53:35 +0000 (21:53 -0800)]
i965/vs: Remove dead vec4_visitor::src_reg_for_float prototype.
No such function exists. src_reg's constructor does that.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Fri, 9 Nov 2012 08:38:37 +0000 (00:38 -0800)]
i965/fs: Remove bblock field of fs_visitor.
All users of basic block analysis simply create their own local
variables. Nobody uses the visitor-wide field.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 04:42:36 +0000 (20:42 -0800)]
i965: Remove brw_instruction_info::is_arith().
Nobody uses it.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 04:33:33 +0000 (20:33 -0800)]
i965: Remove some dead code optimization passes.
The old brw_remove_grf_to_mrf_moves() pass is obsolete and replaced by
fs_visitor::compute_to_mrf().
The old brw_remove_duplicate_mrf_moves() pass is obsolete and replaced
by fs_visitor::remove_duplicate_mrf_writes().
The remaining pass, brw_set_dp4_dependency_control(), is currently
unused, but could be, so I'm leaving it for now.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 04:17:29 +0000 (20:17 -0800)]
i965: Remove unused BRW_PACKCOLOR8888 macro.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 03:59:08 +0000 (19:59 -0800)]
i965: Remove brw_shader_program wrapper struct.
At this point, it's just gl_shader_program. Nobody even uses it; even
the program that creates them only returns gl_shader_program pointers.
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 14 Nov 2012 03:56:05 +0000 (19:56 -0800)]
i965: Remove unused struct brw_vs_ouput_sizes.
With a name like that, it can't be used. Sure enough, it's not.
Reviewed-by: Eric Anholt <eric@anholt.net>
José Fonseca [Tue, 13 Nov 2012 10:23:11 +0000 (10:23 +0000)]
util/u_debug: Fix DEBUG_NAMED_VALUE.
"#__symbol" doesn't work with nested macro expansions, at least not on gcc.
Roland Scheidegger [Fri, 2 Nov 2012 15:48:49 +0000 (16:48 +0100)]
draw: fix crashes with out-of-bounds indices
The passthrough pipeline needs to check index values (which might be passed
through) as they can be invalid (which causes crashes and various assertion
failures if the clip code runs). Obviously, rendering won't be well-defined,
but those bogus indices might come directly from apps.
There were already debug printfs which reported the out-of-bounds indices but
we really ought to not crash.
While checking at that point doesn't seem like the most efficient solution,
it seems there isn't really another appropriate function to do it.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
Alex Deucher [Thu, 15 Nov 2012 14:37:44 +0000 (09:37 -0500)]
radeonsi: cleanup si_db()
Clean up a few magic numbers and rework the code a bit.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Alex Deucher [Thu, 15 Nov 2012 14:34:13 +0000 (09:34 -0500)]
radeonsi: assert the CB format is valid (v2)
Assert the the CB format is valid and default to
the INVALID hw format rather than ~0U when the format
doesn't match for non-debug builds.
v2: use INVALID hw format rather than ~0U
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Alex Deucher [Thu, 15 Nov 2012 14:31:26 +0000 (09:31 -0500)]
radeonsi: assert that the DB format is valid (v2)
Assert that the DB format is valid and default to
the INVALID hw format rather than ~0U when the format
doesn't match for non-debug builds.
v2: use INVALID hw format rather than ~0U
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Dmitry Cherkassov [Wed, 14 Nov 2012 19:33:18 +0000 (23:33 +0400)]
gallium: fix some function comments in p_context.h
Signed-off-by: Dmitry Cherkassov <dcherkassov@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Andreas Boll [Wed, 14 Nov 2012 20:43:31 +0000 (21:43 +0100)]
build: add missing files to tarballs target
fixes errors ./configure and make was complaining about
NOTE: This is a candidate for the 9.0 branch.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Andreas Boll [Wed, 14 Nov 2012 20:39:15 +0000 (21:39 +0100)]
build: add missing Makefile.in files to tarballs target
fixes errors ./configure was complaining about
NOTE: This is a candidate for the 9.0 branch.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Andreas Boll [Wed, 14 Nov 2012 20:34:44 +0000 (21:34 +0100)]
build: add config.sub and config.guess to tarballs target
fixes errors ./configure was complaining about
NOTE: This is a candidate for the 9.0 branch.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Andreas Boll [Mon, 22 Oct 2012 19:18:17 +0000 (21:18 +0200)]
mesa: use .cherry-ignore in the get-pick-list.sh script
NOTE: This is a candidate for the stable branches.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Paul Berry [Wed, 14 Nov 2012 19:23:51 +0000 (11:23 -0800)]
mesa: Add .gitignore for hashtable collision unit test.
This test was introduced in commit
35fd61bd99c15c2e13d3945b41c4db7df6e64319.
Michel Dänzer [Wed, 14 Nov 2012 15:06:52 +0000 (16:06 +0100)]
radeonsi: Set STENCILOPVAL fields to 1.
This is necessary for backwards compatibility with pre-SI for stencil.
Fixes a number of stencil related piglit tests, and real apps using stencil.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Michel Dänzer [Tue, 13 Nov 2012 14:41:49 +0000 (15:41 +0100)]
radeonsi: Bump SI_PM4_MAX_DW.
Fixes assertion failure with Mesa demo glsl/samplers.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Michel Dänzer [Tue, 6 Nov 2012 16:41:50 +0000 (17:41 +0100)]
radeonsi: Handle TGSI TXL opcode.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Michel Dänzer [Tue, 6 Nov 2012 16:39:01 +0000 (17:39 +0100)]
radeonsi: Handle TGSI TXB opcode.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Vinson Lee [Wed, 14 Nov 2012 05:18:09 +0000 (21:18 -0800)]
mesa: Include compiler.h in hash_table.h.
Include the header for the inline symbol. MSVC does not have the inline
keyword for C.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Marek Olšák [Tue, 13 Nov 2012 15:04:13 +0000 (16:04 +0100)]
r600g: use LINEAR_ALIGNED tiling for 1D array textures and if height0 <= 3
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Tom Stellard [Fri, 9 Nov 2012 12:59:33 +0000 (07:59 -0500)]
auxillary: Append LLVM_CXXFLAGS to CXXFLAGS
Marek Olšák [Tue, 13 Nov 2012 14:48:25 +0000 (15:48 +0100)]
r300g: don't call buffer_unmap in draw functions
It's been a no-op anyway.
Marek Olšák [Tue, 13 Nov 2012 14:44:46 +0000 (15:44 +0100)]
r300g: fix crash since the set_vertex_buffers(start_slot) change
Marek Olšák [Mon, 12 Nov 2012 23:36:00 +0000 (00:36 +0100)]
r600g: untiled window-system buffers should be LINEAR_ALIGNED
though I guess the DDX allocates them as LINEAR_GENERAL
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Marek Olšák [Mon, 12 Nov 2012 23:29:33 +0000 (00:29 +0100)]
r600g: use LINEAR_ALIGNED tiling for 1D textures
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Marek Olšák [Mon, 12 Nov 2012 23:25:49 +0000 (00:25 +0100)]
r600g: use LINEAR_ALIGNED tiling for staging textures, reorder the code
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Kenneth Graunke [Wed, 7 Nov 2012 06:23:05 +0000 (22:23 -0800)]
i965/vs: Fix user clip plane setup on Gen4-5.
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 <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 7 Nov 2012 06:23:04 +0000 (22:23 -0800)]
i965/vs: Simplify the Gen6-7 part of setup_uniform_clipplane_values().
There's no compaction, so we can drop that code and simply use 'i'.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Kenneth Graunke [Wed, 7 Nov 2012 06:23:03 +0000 (22:23 -0800)]
i965/vs: Split setup_uniform_clipplane_values() into Gen4-5/6-7 parts.
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 <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Vinson Lee [Tue, 13 Nov 2012 06:15:42 +0000 (22:15 -0800)]
mesa: Replace random with standard C rand.
BSD random is not available on some compilers.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Brian Paul [Tue, 13 Nov 2012 05:29:34 +0000 (21:29 -0800)]
automake: Remove empty file variable.
Fixes SCons build regression introduced with commit
a665cf1226b80ec52a0c1a4a38378df4389e8ebf.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Tested-by: Vinson Lee <vlee@freedesktop.org>
Eric Anholt [Tue, 13 Nov 2012 03:32:58 +0000 (19:32 -0800)]
mesa: Fix gallium build since
6991c2922f
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
Eric Anholt [Wed, 7 Nov 2012 07:18:42 +0000 (23:18 -0800)]
mesa: Convert the hash table for GL object ids to the open-addressing hash.
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 <brianp@vmware.com>
Acked-by: Chad Versace <chad.versace@linux.intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org> (v1)
Eric Anholt [Wed, 7 Nov 2012 07:18:41 +0000 (23:18 -0800)]
mesa: Import a copy of the open-addressing hash table code I wrote.
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 <brianp@vmware.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org> (v1)
Eric Anholt [Wed, 7 Nov 2012 07:18:40 +0000 (23:18 -0800)]
automake: Remove libdricore clip.c workaround lib.
sparc/clip.c got moved to sparc/sparc-clip.c to avoid doing this workaround in
the parent directory.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (v1)
Eric Anholt [Thu, 8 Nov 2012 00:33:39 +0000 (16:33 -0800)]
automake,android: Build program/ into a helper lib (v2)
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 <kenneth@whitecape.org> (v1)
Signed-off-by: Chad Versace <chad.versace@linux.intel.com> (v2)
Chad Versace [Wed, 7 Nov 2012 23:38:14 +0000 (15:38 -0800)]
android: Moves rules for libmesa_st_mesa to separate makefile
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 <chad.versace@linux.intel.com>
Chad Versace [Wed, 7 Nov 2012 23:34:59 +0000 (15:34 -0800)]
android: Moves rules for libmesa_dricore to separate makefile
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 <chad.versace@linux.intel.com>
Chad Versace [Wed, 7 Nov 2012 23:26:46 +0000 (15:26 -0800)]
android: Moves rules for mesa_gen_matypes to separate makefile
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 <chad.versace@linux.intel.com>
Chad Versace [Wed, 7 Nov 2012 22:22:54 +0000 (14:22 -0800)]
android: Moves rules for libmesa_glsl_utils to separate makefile
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 <chad.versace@linux.intel.com>
Eric Anholt [Wed, 7 Nov 2012 07:18:38 +0000 (23:18 -0800)]
automake: Merge *_CXX_FILES variables in the glsl build.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Wed, 7 Nov 2012 07:18:37 +0000 (23:18 -0800)]
automake: Merge per-type *_FILES variables in intel drivers.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Wed, 7 Nov 2012 07:18:36 +0000 (23:18 -0800)]
automake: Merge separated *_CXX_FILES variables to *_FILES in core mesa.
They were always used with the corresponding *_FILES variables now that
automake handles rule generation.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Wed, 7 Nov 2012 07:18:35 +0000 (23:18 -0800)]
automake: Remove dead *_OBJECTS variables from the old build system.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Eric Anholt [Wed, 7 Nov 2012 07:18:34 +0000 (23:18 -0800)]
automake: Fix a comment typo.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Marek Olšák [Mon, 12 Nov 2012 23:33:34 +0000 (00:33 +0100)]
r600g: remove redundant parameter in r600_init_surface
Marek Olšák [Sun, 11 Nov 2012 14:32:59 +0000 (15:32 +0100)]
st/mesa: fix computation of last_level in GenerateMipmap
Array textures were broken.
NOTE: This is a candidate for the stable branches.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 11 Nov 2012 15:29:00 +0000 (16:29 +0100)]
st/mesa: fix computation of last_level during texture creation
Array textures were broken.
NOTE: This is a candidate for the stable branches.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 11 Nov 2012 15:08:56 +0000 (16:08 +0100)]
st/mesa: fix guessing the base level size
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 <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 11 Nov 2012 14:25:55 +0000 (15:25 +0100)]
mesa: fix error checking of TexStorage(levels) for array and rect textures
NOTE: This is a candidate for the stable branches.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 11 Nov 2012 14:25:06 +0000 (15:25 +0100)]
mesa: use MaxNumlevels in _mesa_test_texobj_completeness
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 11 Nov 2012 14:22:32 +0000 (15:22 +0100)]
mesa: add MaxNumLevels to gl_texture_image, remove MaxLog2
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 <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Roland Scheidegger [Mon, 12 Nov 2012 19:35:04 +0000 (20:35 +0100)]
gallivm,draw,llvmpipe: use base ptr + mip offsets instead of mip pointers
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 <brianp@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
Roland Scheidegger [Mon, 12 Nov 2012 19:08:19 +0000 (20:08 +0100)]
llvmpipe: always allocate whole miptrees not individual levels
This is preparation work for using mip level offsets + base_ptr for texture
sampling instead of per-mip pointers.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
Kenneth Graunke [Mon, 12 Nov 2012 19:14:35 +0000 (11:14 -0800)]
i965: Add comments for each of the surface state table's columns.
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.
Paul Berry [Wed, 7 Nov 2012 17:31:39 +0000 (09:31 -0800)]
glapi: Stop handling XML annotation exec="{es,check,loopback}".
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 <brianp@vmware.com>
Paul Berry [Wed, 7 Nov 2012 17:29:20 +0000 (09:29 -0800)]
glapi: Remove handling of mesa_name XML attribute.
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 <brianp@vmware.com>
Paul Berry [Tue, 6 Nov 2012 15:26:56 +0000 (07:26 -0800)]
mesa: Fix const correctness of API implementation functions.
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 <brianp@vmware.com>
Paul Berry [Tue, 6 Nov 2012 16:57:59 +0000 (08:57 -0800)]
mesa: Standardize names of OpenGL functions.
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 <brianp@vmware.com>
Michel Dänzer [Fri, 2 Nov 2012 14:57:30 +0000 (15:57 +0100)]
radeonsi: Implement alpha testing in pixel shader.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>