Age | Commit message (Collapse) | Author |
|
|
|
There were two sets of bugs in the vertex program (ARB and NV)
protocol. First, several of the ARB functions were missing the
'doubles_in_order="true"' annotation. Second, after the ARB decided
that glVertexAttrib*ARB functions must not alias fixed-function state
for GLSL, Nvidia re-assigned GLX protocol opcodes for
glVertexAttrib*NV (circa Septeber 2004). For some reason gl_API.xml
was never updated to reflect this, and the updated version of the
GL_NV_vertex_program spec never made into the registry.
|
|
|
|
Nvidia no longer supports this extension, and they no longer export its
entry points from their libGL. There's no reason for us to keep dragging it
around either.
|
|
Make functions for the following extensions available only via
glXGetProcAddress. In cases where there are other aliases to the same
functions (e.g., between GL_EXT_histogram and GL_ARB_imaging), the alias
functions may still be statically exported.
- GL_ATI_blend_equation_separate
- GL_EXT_blend_equation_separate
- GL_EXT_convolution
- GL_EXT_color_sub_table
- GL_EXT_cull_vertex
- GL_EXT_depth_bounds_test
- GL_EXT_framebuffer_blit
- GL_EXT_histogram
- GL_EXT_multisample
- GL_EXT_stencil_two_side
- GL_EXT_timer_query
- GL_IBM_multimode_draw_arrays
- GL_INGR_blend_func_separate
- GL_NV_fence
- GL_SGI_color_table
- GL_SGIS_multisample
- GL_SGIS_pixel_texture
- GL_SGIS_point_parameters
- GL_SGIX_pixel_texture
|
|
the true static dispatch name (either the glFooBar name or the
gl_dispatch_stub_XXX name). static_name returns the name of the
static function for a specific alias of a GL function.
Adding (and using) these two functions corrects some problems in the
generated code related to functions with multiple aliases where some
of the aliases have true static dispatch functions and some don't. I
have verified that everything under progs, except xdemos/xdemo,
correctly link. I did this by doing 'make linux-dri-x86-64
PROGRAM_DIRS="demos redbook samples xdemos tests"'.
|
|
|
|
entry point generated. This allows us to do things like generate a
static entry point for glPointParameterfvARB but not for
glPointParameterfvSGIS.
|
|
glBlendEquationSeparateEXT. Add missing enum "get" information for
GL_EXT_texture_filter_anisotropic.
|
|
|
|
The functions for GL_EXT_paletted_texture that do not share GLX
protocol with GL_ARB_imaging are supposed to alias the similar
functions from GL_SGI_color_table. They didn't. This patch corrects
this problem and enables GLX protocol for both extensions.
Since this removes 3 entries from the dispatch table, this change
creates a lot of changes in the generated files.
|
|
tells the scripts to assign an available offset to the function. The
important changes are in src/mesa/glapi/gl_XML.py and
src/mesa/glapi/*.xml.
Since the DRI drivers only depend on functions required by the ABI
(e.g., GL 1.2 + ARB_multitexture) having fixed offsets, all functions
not in the ABI use "assign" mode. This has caused the offset of
basically every function outside the ABI to change. I have verified
that a libGL with this patch works with a DRI driver without the patch.
Futher, several function were removed from the dispatch tables
altogether. These are the functions for the following extensions:
GL_SGIS_texture_filter4
GL_SGIS_texture4D
GL_SGIS_detail_texture
GL_SGIS_sharpen_texture
GL_SGIX_sprite
GL_SGIX_instruments
GL_SGIX_framezoom
GL_SGIX_tag_sample_buffer
GL_SGIX_reference_plane
GL_SGIX_flush_raster
GL_SGIX_list_priority
GL_SGIX_fragment_lighting
GL_PGI_misc_hints
GL_EXT_index_material
GL_EXT_index_func
GL_3DFX_tbuffer
This removes 50 functions from the dispatch table.
|
|
generation of protocol tables for Render.
|
|
decode tables in the server.
|
|
|
|
x86. This means that the position of each dispatch function can be
calculated as (dispatch_offset * size_of_function) + glNewList. This
allows us to not store the function pointers in glprocs_table_t.
This same optimization has been done for quite some time on x86. We
could probably also do this for some cases of the SPARC dispatch as
well.
|
|
boolean attribute, which defaults to true, determines whether or not a
static dispatch function is available in libGL for applications to link
against.
Ideally, any new functions that are not part of the ABI should not have
directly accessable dispatch functions. This forces applications to use
glXGetProcAddress to access these functions. By doing this we can
gracefully remove functions from libGL without breaking the linkage of
applications.
Note that the static dispatch functions are still generated. However, they
are given names like gl_dispatch_stub_820 and are marked with the "hidden"
linker attribute.
All extension functions added since the previous Mesa release (6.5) have
been marked as 'static_dispatch="false"'.
|
|
either GL_ARB_vertex_program or GL_ARB_fragment_program should enable this
extension as well.
|
|
older libGL. The data in extension_helper.h erroneous instructed
drivers to expect all functions with establised offsets, even those
not in the ABI, to have a specific offset allocated. This is just
wrong. A function is either in the ABI and has a set offset or a
function is not in the ABI and has a re-map offset.
|
|
|
|
GL_EXT_framebuffer_blit. Enumerants in the XML schema get the GL_ prefix
added to them automatically. This resulted in things like
"GL_GL_TIME_ELAPSED_EXT" in enums.c.
|
|
|
|
and demos are also added.
Adding basic support to drivers should be as easy as just enabling the
extension, though thorough test would also be required.
|
|
of requesting executable stacks.
|
|
|
|
|
|
|
|
|
|
safety problem
|
|
is properly defined. Fixes long-standing, but unnoticed thread safety failure.
Also, updated comments.
|
|
|
|
whatever reason, a space is always inserted. That is not the desired
behavior.
|
|
target. The environment variable XORG_BASE must be set to point to the base
of the X.org server sources where the files are to be placed.
The 7.0.0 server release already contains files generated by these scripts.
The scripts should have been committed months ago. Sorry for the lag. :(
|
|
|
|
|
|
|
|
|
|
New GLint64EXT and GLuint64EXT types (use C99's long long types).
New glGetQueryObject[u]i64vEXT() functions.
|
|
glapi_x86-64.S.
Bug: #5602
|
|
|
|
|
|
|
|
|
|
server). This isn't strictly needed yet, but it doesn't hurt anything
either. However, the patches for fd.o bug #2996 require this to build.
|
|
Remove an extra closing parenthesis in the Linux version of the SWAP_32 macro.
|
|
signals to the script (glX_proto_size.py) that generates the server-side
size functions that a handcoded query is needed to determine the data size.
Also do s/FOG_COORD_SOURCE/FOG_COORD_SRC/.
When initializing the count in glx_enum::__init__, cast the local property
to int. Thanks to Python's dynamic typing, if this isn't done the type of
stored count will be a string instead of an int.
|
|
Update printPixelFunction (which is only used to generate code for the
server-side) to use the correct method for obtaining the dimensions of the
image parameter to a function.
Only use byteswap.h when building generated code on Linux. Elsewhere use
the (horrible!) macros from X11/misc.h.
Make sure that enums associated with the generic "Get" function get applied
to GetIntegerv, GetBooleanv, GetFloatv, and GetDoublev.
|
|
1) change compilation on VMS to use IEEE floating points
2) one more problem with _mesa_sprintf solved
Modified Files:
Mesa/docs/README.VMS Mesa/progs/demos/descrip.mms
Mesa/progs/tests/descrip.mms Mesa/progs/util/descrip.mms
Mesa/progs/xdemos/descrip.mms Mesa/src/glu/mesa/descrip.mms
Mesa/src/glu/sgi/descrip.mms Mesa/src/glut/glx/descrip.mms
Mesa/src/mesa/array_cache/descrip.mms
Mesa/src/mesa/drivers/common/descrip.mms
Mesa/src/mesa/drivers/osmesa/descrip.mms
Mesa/src/mesa/drivers/x11/descrip.mms
Mesa/src/mesa/glapi/descrip.mms Mesa/src/mesa/main/descrip.mms
Mesa/src/mesa/main/texobj.c Mesa/src/mesa/math/descrip.mms
Mesa/src/mesa/shader/descrip.mms
Mesa/src/mesa/shader/grammar/descrip.mms
Mesa/src/mesa/shader/slang/descrip.mms
Mesa/src/mesa/swrast/descrip.mms
Mesa/src/mesa/swrast_setup/descrip.mms
Mesa/src/mesa/tnl/descrip.mms
----------------------------------------------------------------------
|
|
|
|
|