OSDN Git Service
Brian Paul [Wed, 30 Aug 2006 19:02:45 +0000 (19:02 +0000)]
init a local var to silence warning
Roland Scheidegger [Wed, 30 Aug 2006 13:44:31 +0000 (13:44 +0000)]
Minor r200 vertex program cleanups. Remove disabled leftovers from r300 vertex program code. Fix authors. Correct slightly wrong check to determine if ran out of temps. Simplify check to determine if ran out of max instructions. Correctly report used native temps. Always kick off program translation when ProgramStringNotify is called (otherwise the reported native resources used queried might be wrong).
Roland Scheidegger [Wed, 30 Aug 2006 11:55:18 +0000 (11:55 +0000)]
fix initialization of native resource usage of vertex/fragment programs
Roland Scheidegger [Wed, 30 Aug 2006 10:26:31 +0000 (10:26 +0000)]
fix typo causing a segfault when a vertex program uses more than 96 parameters
Brian Paul [Tue, 29 Aug 2006 22:32:31 +0000 (22:32 +0000)]
Move call to _swrast_update_rasterflags() since it depends on the
results of _swrast_update_fog_state().
Fixes bug where first frame of progs/samples/fog.c does not show fog.
Brian Paul [Tue, 29 Aug 2006 22:30:58 +0000 (22:30 +0000)]
_mesa_debug() should be a no-op when not compiled with DEBUG defined.
Brian Paul [Tue, 29 Aug 2006 21:56:59 +0000 (21:56 +0000)]
set 6.5.1 release to Aug 31
Brian Paul [Tue, 29 Aug 2006 21:54:01 +0000 (21:54 +0000)]
remove assertion that referenced &glSetFenceNV for debug test
Brian Paul [Tue, 29 Aug 2006 19:09:57 +0000 (19:09 +0000)]
replace abort with _mesa_problem()
Ian Romanick [Tue, 29 Aug 2006 17:44:45 +0000 (17:44 +0000)]
Deprecate GL_EXT_vertex_weighting.
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.
Ian Romanick [Tue, 29 Aug 2006 16:43:44 +0000 (16:43 +0000)]
More static dispatch function removal.
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
Ian Romanick [Tue, 29 Aug 2006 15:38:19 +0000 (15:38 +0000)]
Clean up GLX function exports.
Make functions for the following extensions only accessable via
glXGetProcAddress:
- GLX_EXT_texture_from_pixmap
- GLX_MESA_copy_sub_buffer
- GLX_MESA_release_buffers
- GLX_MESA_swap_control
- GLX_MESA_swap_frame_usage
- GLX_OML_sync_control
- GLX_SGI_make_current_read
- GLX_SGI_swap_control
- GLX_SGI_video_sync
- GLX_SGIX_swap_barrier
- GLX_SGIX_swap_group
Removed all remnants of the following extensions:
- GLX_MESA_set_3dfx_mode
- GLX_SGI_cushion
- GLX_SGIX_dmbuffer
- GLX_SGIX_video_resize
- GLX_SGIX_video_source
- GLX_SUN_get_transparent_index
-
Roland Scheidegger [Mon, 28 Aug 2006 21:19:34 +0000 (21:19 +0000)]
move initialization code aroudn so glPointParameter isn't called before checking the extension is present
Brian Paul [Mon, 28 Aug 2006 19:42:41 +0000 (19:42 +0000)]
Check mesa_vp->Base.NumInstructions == 0 instead of mesa_vp->Base.String to
determine if we actually have a program. See "[r300] TCL fallback with Quake3".
Ian Romanick [Mon, 28 Aug 2006 17:40:45 +0000 (17:40 +0000)]
Add two new gl_function methods. dispatch_name returns the name of
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"'.
Ian Romanick [Mon, 28 Aug 2006 17:35:54 +0000 (17:35 +0000)]
Add dependencies for all API XML files.
Brian Paul [Mon, 28 Aug 2006 15:16:49 +0000 (15:16 +0000)]
remove unused var
Brian Paul [Mon, 28 Aug 2006 15:16:36 +0000 (15:16 +0000)]
fix the check for force_s3tc_enable (bug 8042)
Brian Paul [Mon, 28 Aug 2006 15:12:07 +0000 (15:12 +0000)]
omit installmesa script from tarballs
Brian Paul [Mon, 28 Aug 2006 14:20:19 +0000 (14:20 +0000)]
check for GL_ARB_point_parameters
Aapo Tahkola [Sun, 27 Aug 2006 13:24:36 +0000 (13:24 +0000)]
close #6318
Sean D'Epagnier [Sun, 27 Aug 2006 01:16:09 +0000 (01:16 +0000)]
The colormap code is now simpler, 15bpp works where it did not before.
The input is fixed so that delete reports '\b' and backspace 127
The vt switching works both right and left.
Ian Romanick [Sat, 26 Aug 2006 21:26:55 +0000 (21:26 +0000)]
Explicitly store the names for each function that should have a static
entry point generated. This allows us to do things like generate a
static entry point for glPointParameterfvARB but not for
glPointParameterfvSGIS.
Alan Hourihane [Sat, 26 Aug 2006 21:21:34 +0000 (21:21 +0000)]
Fix bug 8010 - locking issues.
Aapo Tahkola [Sat, 26 Aug 2006 16:24:04 +0000 (16:24 +0000)]
fix #8008
Brian Paul [Fri, 25 Aug 2006 22:13:08 +0000 (22:13 +0000)]
delete buffers, destroy window upon exit
Brian Paul [Fri, 25 Aug 2006 22:08:43 +0000 (22:08 +0000)]
include texobj.h to silence warning
Brian Paul [Fri, 25 Aug 2006 22:07:40 +0000 (22:07 +0000)]
6.5.1 bug fixes
Brian Paul [Fri, 25 Aug 2006 22:06:02 +0000 (22:06 +0000)]
Error detection/reporting was broken in several places.
Ian Romanick [Fri, 25 Aug 2006 19:57:37 +0000 (19:57 +0000)]
Add a couple of the missing GL 2.0 functions. Enable GLX protocol for
glBlendEquationSeparateEXT. Add missing enum "get" information for
GL_EXT_texture_filter_anisotropic.
Brian Paul [Fri, 25 Aug 2006 19:46:31 +0000 (19:46 +0000)]
Free vertex program TnlData, if any. Fixes a mem leak.
Brian Paul [Fri, 25 Aug 2006 19:45:31 +0000 (19:45 +0000)]
clamp result.depth to [0,1] if written to
Brian Paul [Fri, 25 Aug 2006 18:07:49 +0000 (18:07 +0000)]
Remove XFree86 CVS keyword.
Brian Paul [Fri, 25 Aug 2006 17:18:56 +0000 (17:18 +0000)]
Rearrange glBindProgram() code to do all error checking before changing
the binding. Prevent a potential dangling pointer error. SF Bug
1544507.
Brian Paul [Fri, 25 Aug 2006 15:44:09 +0000 (15:44 +0000)]
In _save_End(), set CurrentExecPrimitive = PRIM_OUTSIDE_BEGIN_END if
we're in GL_COMPILE_AND_EXECUTE mode.
This fixes bug 7984.
Brian Paul [Fri, 25 Aug 2006 15:42:37 +0000 (15:42 +0000)]
improved comments
Brian Paul [Fri, 25 Aug 2006 15:15:24 +0000 (15:15 +0000)]
Rename _mesa_append_modelview_code() to _mesa_insert_mvp_code().
The four DP4 instructions are now inserted at the top of the program
instead of appended to tail.
Brian Paul [Fri, 25 Aug 2006 15:14:25 +0000 (15:14 +0000)]
use _mesa_alloc_instructions()
Brian Paul [Fri, 25 Aug 2006 15:13:25 +0000 (15:13 +0000)]
added _mesa_alloc_instructions() utility function
Ian Romanick [Fri, 25 Aug 2006 00:56:34 +0000 (00:56 +0000)]
Add missing enums for GL_SGI_color_table.
Brian Paul [Thu, 24 Aug 2006 23:37:36 +0000 (23:37 +0000)]
recent bug fixes
Brian Paul [Thu, 24 Aug 2006 23:37:13 +0000 (23:37 +0000)]
update MAX_INSTRUCTIONS limit
Brian Paul [Thu, 24 Aug 2006 23:28:01 +0000 (23:28 +0000)]
According to GL_NV_fragment_program, max frag prog length is 1024 instructions.
Updated MAX_NV_FRAGMENT_PROGRAM_INSTRUCTIONS to 1024.
Brian Paul [Thu, 24 Aug 2006 23:11:39 +0000 (23:11 +0000)]
Cg tries to bind NV fragment programs to the GL_FRAGMENT_PROGRAM_ARB target
with glBindProgramARB(). I guess the GL_ARB_fragment_program specification
allows that, but Mesa didn't.
Relaxed the check with a new predicate function: compatible_program_targets().
Brian Paul [Thu, 24 Aug 2006 23:08:01 +0000 (23:08 +0000)]
scalar sources such as 'time.x' weren't accepted by parser
Brian Paul [Thu, 24 Aug 2006 22:11:40 +0000 (22:11 +0000)]
Functions for vertex/fragment program transformations, optimizations, etc.
Brian Paul [Thu, 24 Aug 2006 22:05:35 +0000 (22:05 +0000)]
fix bad casts, carry over r200 fix to check for null program string in r300_translate_vertex_shader()
Brian Paul [Thu, 24 Aug 2006 22:03:38 +0000 (22:03 +0000)]
Check for NULL program string in r200_translate_vertex_program().
Fixes bug reported by Chris Rankin.
Added some new comments.
Brian Paul [Thu, 24 Aug 2006 21:58:32 +0000 (21:58 +0000)]
use _mesa_realloc_instructions()
Brian Paul [Thu, 24 Aug 2006 21:57:36 +0000 (21:57 +0000)]
Added _mesa_realloc_instructions() utility function.
Fixed/updated comments for parameter list functions.
Ian Romanick [Thu, 24 Aug 2006 21:42:38 +0000 (21:42 +0000)]
GL_EXT_paletted_texture functions should alias GL_SGI_color_table functions.
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.
Ian Romanick [Thu, 24 Aug 2006 20:14:45 +0000 (20:14 +0000)]
Add a new offset mode to the GL API XML. This mode, called "assign,"
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.
Brian Paul [Thu, 24 Aug 2006 19:06:02 +0000 (19:06 +0000)]
fix fragment.position initialization bug
Ian Romanick [Thu, 24 Aug 2006 18:06:37 +0000 (18:06 +0000)]
Make sure that _GNU_SOURCE is enabled in the linux configs that set
HAVE_POSIX_MEMALIGN. This eliminates a compiler warning. Also,
clean up some crufty linux-sparc* configs.
Keith Whitwell [Thu, 24 Aug 2006 17:49:37 +0000 (17:49 +0000)]
add point-position.c
Keith Whitwell [Thu, 24 Aug 2006 17:48:53 +0000 (17:48 +0000)]
Test for fragment.position in points primitives. Currently renders
incorrectly on software mesa.
Brian Paul [Thu, 24 Aug 2006 17:01:35 +0000 (17:01 +0000)]
added glut/mini/ sources to glut tarball
Brian Paul [Thu, 24 Aug 2006 15:57:12 +0000 (15:57 +0000)]
Check if mesa_vp->Base.Parameters is null before dereferencing (bug report
from Chris Rankin).
Also, fix some bad casts.
Ian Romanick [Thu, 24 Aug 2006 00:26:47 +0000 (00:26 +0000)]
Fix some problems with the generation of the size tables. Enable
generation of protocol tables for Render.
Brian Paul [Wed, 23 Aug 2006 23:18:39 +0000 (23:18 +0000)]
silence warning
Brian Paul [Wed, 23 Aug 2006 23:10:14 +0000 (23:10 +0000)]
Added _mesa_lookup_program() and _mesa_lookup_bufferobj() functions to avoid
a lot of casting elsewhere.
Use _mesa_lookup_texture() in tdfx driver, use _mesa_lookup_bufferobj() in r300
driver.
Ian Romanick [Wed, 23 Aug 2006 20:32:48 +0000 (20:32 +0000)]
New script and API description file to enable generate of GLX protocol
decode tables in the server.
Brian Paul [Wed, 23 Aug 2006 19:46:17 +0000 (19:46 +0000)]
update glut fbdev sources list
Sean D'Epagnier [Wed, 23 Aug 2006 07:55:48 +0000 (07:55 +0000)]
VT switching now uses correct keys.
exiting when virtual screen size is larger than regular size doesn't corrupt screen.
colormap is reset when using stdin input on exit.
return is not reported as ctrl-m but '\r' as it should be
backspace keycode was incorrect and not working, fixed
Aapo Tahkola [Tue, 22 Aug 2006 22:27:32 +0000 (22:27 +0000)]
remove duplicate pieces of code.
Aapo Tahkola [Tue, 22 Aug 2006 21:54:50 +0000 (21:54 +0000)]
extend some DrawRangeElements cases to support rendering more than 65535 verts in one blast. ut2k4 cases in other words ...
Aapo Tahkola [Tue, 22 Aug 2006 21:05:37 +0000 (21:05 +0000)]
fix broken write-only depth setting. use early z where possible.
Ian Romanick [Tue, 22 Aug 2006 18:44:58 +0000 (18:44 +0000)]
Correct the name of the GL_NV_texture_expand_normal extension.
Ian Romanick [Tue, 22 Aug 2006 18:22:20 +0000 (18:22 +0000)]
The TLS dispatch functions for x86-64 are fixed-size, just like on
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.
Ian Romanick [Tue, 22 Aug 2006 16:34:38 +0000 (16:34 +0000)]
Add new attribute called static_dispatch to the <function> element. This
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"'.
Brian Paul [Mon, 21 Aug 2006 16:05:30 +0000 (16:05 +0000)]
move ALL_SOURCES to sources file
Brian Paul [Mon, 21 Aug 2006 15:50:41 +0000 (15:50 +0000)]
remove FBDEV_DRIVER_OBJECTS assignment (in sources file)
Brian Paul [Mon, 21 Aug 2006 14:26:06 +0000 (14:26 +0000)]
various updates
Michal Krol [Mon, 21 Aug 2006 09:25:11 +0000 (09:25 +0000)]
More GLSL preprocessor code:
Rename slang_version.syn to slang_pp_version.syn.
The #version directive understands version 120.
Cosmetic changes in version preprocessor.
Checks if requested version is supported by the compiler.
Michal Krol [Mon, 21 Aug 2006 08:47:28 +0000 (08:47 +0000)]
GLSL 1.20 constructors and operators.
Roland Scheidegger [Sat, 19 Aug 2006 08:54:03 +0000 (08:54 +0000)]
remove the now confusing option to manually enable software ARB_vp if drm is not new enough on r200
Sean D'Epagnier [Sat, 19 Aug 2006 00:28:36 +0000 (00:28 +0000)]
Removed ifeq from makefile, and corrected fbdev driver so it compiles
Brian Paul [Fri, 18 Aug 2006 20:24:54 +0000 (20:24 +0000)]
updates for 6.5.1
Brian Paul [Fri, 18 Aug 2006 20:20:28 +0000 (20:20 +0000)]
Fix-ups for linux-fbdev config. No longer build Xlib driver sources.
Sean D'Epagnier [Fri, 18 Aug 2006 10:38:15 +0000 (10:38 +0000)]
The driver now compiles correctly without any x headers or libraries installed
The bitmap and stroke code can't be shared with glx anymore because of this.
The model for the mini teapot is restored and I have tested it to work with
linux-fbdev and linux-solo
The driver recognizes 32bpp where there is no alpha (my radeon 7500) It also
sets the correct number of cmap entrees (instead of 256 which can be an error)
Alan Hourihane [Fri, 18 Aug 2006 09:04:48 +0000 (09:04 +0000)]
Fix writemasks on texture arb fp instructions.
Cleanup invarient state emission.
Brian Paul [Thu, 17 Aug 2006 14:27:10 +0000 (14:27 +0000)]
sort the FEATURE_ defines
Brian Paul [Thu, 17 Aug 2006 14:25:04 +0000 (14:25 +0000)]
added FEATURE_EXT_timer_query and tests
Brian Paul [Thu, 17 Aug 2006 14:16:03 +0000 (14:16 +0000)]
change #ifdef to #if
Brian Paul [Wed, 16 Aug 2006 20:53:39 +0000 (20:53 +0000)]
change tex memory allocation calls (debian bug 383209)
Ian Romanick [Wed, 16 Aug 2006 17:06:08 +0000 (17:06 +0000)]
When available, which is most of the time, use posix_memalign to implement
_mesa_align_malloc and friends.
Ian Romanick [Tue, 15 Aug 2006 16:48:06 +0000 (16:48 +0000)]
Enable support for GL_EXT_gpu_program_parameters for R300.
Ian Romanick [Tue, 15 Aug 2006 16:47:34 +0000 (16:47 +0000)]
Add support for GL_EXT_gpu_program_parameters. Any driver that enables
either GL_ARB_vertex_program or GL_ARB_fragment_program should enable this
extension as well.
Ian Romanick [Tue, 15 Aug 2006 16:44:32 +0000 (16:44 +0000)]
Add test for GL_EXT_gpu_program_parameters.
Ian Romanick [Tue, 15 Aug 2006 16:26:34 +0000 (16:26 +0000)]
Remove extraneous trailing semicolon.
Brian Paul [Tue, 15 Aug 2006 14:28:03 +0000 (14:28 +0000)]
s/GLvoid/void/ to fix gcc 4.2 issue (bug 7875)
Michel Dänzer [Mon, 14 Aug 2006 15:53:37 +0000 (15:53 +0000)]
Bug #7169: Attempt to make libGL symbols visible to drivers.
Some applications end up dlopening libGL without RTLD_GLOBAL, so the libGL
symbols referenced by the driver can't be unresolved when libGL dlopens it.
This attempts to make the libGL symbols visible to the driver by dlopening
libGL (again) with RTLD_GLOBAL before dlopening the driver and dlclosing
the obtained handle afterwards.
Aapo Tahkola [Sat, 12 Aug 2006 13:31:15 +0000 (13:31 +0000)]
gcc-4.1.1 compile fix
Ian Romanick [Sat, 12 Aug 2006 00:11:05 +0000 (00:11 +0000)]
Add comments explaining a couple "mystery" bits.
Ian Romanick [Sat, 12 Aug 2006 00:05:54 +0000 (00:05 +0000)]
Fix white-space problem in the prototype for glBlitFramebufferEXT that
prevented gl_mangle.h from picking it up.
Ian Romanick [Fri, 11 Aug 2006 23:56:37 +0000 (23:56 +0000)]
Fix long standing bug that prevented newer drivers from working with
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.
Ian Romanick [Fri, 11 Aug 2006 22:26:49 +0000 (22:26 +0000)]
Convert comment header for __GLcontextModesRec to Doxygen style.
Aapo Tahkola [Fri, 11 Aug 2006 13:59:37 +0000 (13:59 +0000)]
support shorts as vertex data
Eric Anholt [Thu, 10 Aug 2006 21:26:50 +0000 (21:26 +0000)]
Add padding to match the current xf86-video-intel DDX->DRI interface.
Adam Jackson [Thu, 10 Aug 2006 20:24:50 +0000 (20:24 +0000)]
mkdir -> mkdir -p, since /usr/include might not exist in the installroot yet