Commit graph

22817 commits

Author SHA1 Message Date
Stephane Marchesin
39ebeead56 Fix an nv04 bug (thanks Mhopf). 2009-05-05 11:29:58 +02:00
Brian Paul
f95c0c06c0 mesa: also print program params/constants when dumping shaders to disk 2009-05-04 11:14:35 -06:00
Brian Paul
27dbdb1684 mesa: remove some unfinished/devel code 2009-05-04 11:13:35 -06:00
Brian Paul
986d4a9ec6 draw: added some inf/nan debug code (disabled) 2009-05-01 18:35:59 -06:00
Brian Paul
08bc3d1750 gallium/glx: say we're direct rendering 2009-05-01 18:35:59 -06:00
Brian Paul
62043b2757 mesa: in glReadBufer() set _NEW_BUFFERS, not _NEW_PIXEL
Since GL_READ_BUFFER is historically part of the gl_pixel_attrib group
it made sense to signal changes with _NEW_PIXEL.  But now with FBOs it's
also part of the framebuffer state.

Now _NEW_PIXEL strictly indicates pixels transfer state changes.

This change avoids framebuffer state validation when any random bit of
pixel-transfer state is set.

DRI drivers updated too:  don't check _NEW_COLOR when updating framebuffer
state.  I think that was just copied from the Xlib driver because we care
about dither enable/disable state there.
2009-05-01 18:31:04 -06:00
Brian Paul
a7ef5b76d6 Merge branch 'mesa_7_5_branch' 2009-05-01 18:21:02 -06:00
Brian Paul
0a56a49687 st: create renderbuffer's pipe_surface in st_render_texture()
Previously we created the pipe_surface during framebuffer validation.
But if we did a glCopyTex[Sub]Image() before anything else we wouldn't yet
have the surface.  This fixes that.
2009-05-01 18:17:34 -06:00
Brian Paul
63f0130980 mesa: fix state validation bug for glCopyTex[Sub]Image()
We need to make sure the framebuffer state is up to date to make sure we
read pixels from the right buffer when doing a texture image copy.
2009-05-01 18:04:07 -06:00
Brian Paul
602833b107 st: if st_swapbuffers() is called for single-buffered visual don't crash
Furthermore, return pointer(s) to the front color buffer(s).
2009-05-01 16:44:04 -06:00
Brian Paul
b57b6c2d2c xlib winsys: use new st_swapbuffers() function
The front/back buffer pointers are truly swapped (when there is an actual
front buffer).

This fixes some issues seen with apps/tests that draw to both the front
and back color buffers.  The true swap allows us to avoid the (potentially)
slow surface_copy() call in update_framebuffer_state() and is cleaner
overall.
2009-05-01 12:54:20 -06:00
Brian Paul
3f52a853f7 st: when creating an on-demand front color buffer, init to back buffer image
When we create a new front color buffer (user called glDrawBuffer(GL_FRONT))
initialize it to the contents of the back buffer.  Any previous call to
SwapBuffers() would have done that in effect, so make it reality.
2009-05-01 12:54:16 -06:00
Brian Paul
b85b315ebb st: added st_renderbuffer::defined flag
Indicates whether there's defined image contents, or garbage/don't care.
This is set when we draw into a renderbuffer and cleared when we resize/
reallocate a renderbuffer or do a buffer swap (back buffer becomes undefined).

We use this to determine whether the front color buffer has been drawn to,
and whether to display its contents upon glFlush/Finish(), when the new
st_swapbuffers() function is used.
2009-05-01 12:25:42 -06:00
Brian Paul
30b3d80091 mesa: fix comment 2009-05-01 12:12:43 -06:00
Brian Paul
06cd826fcb Merge branch 'mesa_7_5_branch' 2009-05-01 11:57:00 -06:00
Tom Fogal
36edcebb90 Fix symbol list for mangled Mesa on Darwin.
When building mangled Mesa on Darwin, the exported symbols are
named `_mgluWhatever' instead of simply `_gluWhatever'.  When
using a list of exported symbols via the system ld's
`-exported_symbols_list' command line option (as done by mklib),
this resulted in error messages about exporting symbols which do
not exist.

Fortunately the file format accepts simple wildcards.  This throws
a wildcard so that the symbol list will match both the mangled and
non-mangled names, preventing the warning and actually exporting
the correct symbols in one shot.
2009-05-01 11:55:50 -06:00
Brian Paul
3534539557 set: new st_swapbuffers() which does a true front/back buffer swap
The pointers to the front/back renderbuffers are exchanged.
This new function isn't actually used yet...
2009-05-01 11:24:08 -06:00
Zack Rusin
fbceedd2de actually add debug to the debug config 2009-05-01 12:51:01 -04:00
José Fonseca
293f576db7 egl_xlib: Pass RTLD_LAZY to dlopen.
dlopen manpage mandates that either RTLD_LAZY or RTLD_NOW flags must be
passed. Not doing so was causing a NULL return on debian unstable x86-64.
2009-05-01 12:51:01 -04:00
Ian Romanick
2085cf2462 Test either GL_FRONT_LEFT or GL_FRONT for front-buffer rendering
For non-stereo visuals, which is all we support, we treat
GL_FRONT_LEFT as GL_FRONT.  However, they are technically different,
and they have different enum values.  Test for either one to determine
if we're in front-buffer rendering mode.

This fix was suggested by Pierre Willenbrock.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-05-01 09:49:06 -07:00
Brian Paul
cd6734288d st: when double buffered, only create front color buffer on demand
Before we always created the front color buffer, even if was never used.
This can save some memory.
2009-05-01 10:19:00 -06:00
Brian Paul
b9196c1fa3 Merge branch 'const-buffer-changes'
Conflicts:

	src/mesa/drivers/dri/i965/brw_curbe.c
	src/mesa/drivers/dri/i965/brw_vs_emit.c
	src/mesa/drivers/dri/i965/brw_wm_glsl.c
2009-05-01 09:37:14 -06:00
Brian Paul
3f25219c7b mesa: create/use a fallback texture when bound texture is incomplete
When a GLSL sampler reads from an incomplete texture it should
return (0,0,0,1).  Instead of jumping through hoops in all the drivers
to make this happen, just create/install a fallback texture with those
texel values.

Fixes piglit/fp-incomplete-tex on i965 and more importantly, fixes some
GPU lockups when trying to sample from missing surfaces.  If a binding
table entry is NULL, it seems that sampling sometimes works, but not
always (lockup).

Todo: create a fallback texture for each type of texture target?
2009-05-01 09:30:32 -06:00
Brian Paul
7ca0427338 docs: initial 7.6 release notes page 2009-05-01 09:24:19 -06:00
Brian Paul
666e5bf4a6 mesa: bump version to 7.6 (devel) 2009-05-01 09:22:20 -06:00
Brian Paul
8a488b1be7 mesa: remove -devel suffix from version 2009-05-01 09:19:59 -06:00
Brian Paul
3eafd25aa3 configs: bump MESA_MINOR to 5 2009-05-01 09:15:14 -06:00
Brian Paul
edd2bbe4a7 docs: fix typo 2009-05-01 09:08:39 -06:00
Corbin Simpson
2953b18004 radeon: Don't even bother with things too big to fit into our card. 2009-05-01 07:29:14 -07:00
Corbin Simpson
5b15cc312f r300-gallium, radeon-winsys: Hide radeon_cs from r300 pipe. 2009-05-01 06:01:52 -07:00
Corbin Simpson
c11ad489e7 r300-gallium, radeon-winsys: Space accounting.
It is no longer optional in current libdrm, so it was time to actually
start counting our BOs.
2009-05-01 05:54:53 -07:00
Corbin Simpson
d7f4ac9f34 r300-gallium, radeon-winsys: Reorganize r300_winsys header, break ABI.
Make things more consistent, prepare for more function hooks.
2009-05-01 05:03:56 -07:00
Corbin Simpson
a609f78cf6 r300-gallium: Don't bother with conditional double define.
We'll just forever leave it in r300_winsys.h since it's needed for
whichever winsys is hosting the pipe.
2009-05-01 04:47:50 -07:00
Corbin Simpson
1f43cc1d84 radeon: Fix cast and comment. 2009-05-01 04:39:04 -07:00
Brian Paul
e4e7ecc221 docs: asst. updates for 7.5 release 2009-04-30 17:17:31 -06:00
Brian Paul
a405cc7b72 docs: bring in 7.4 doc updates from mesa_7_4_branch 2009-04-30 17:13:22 -06:00
Brian Paul
675b1cacf7 docs: notes about new version number meaning in release notes 2009-04-30 17:11:20 -06:00
Brian Paul
aef475c889 mesa: update linux-static, linux-x86-static configs 2009-04-30 17:04:01 -06:00
Brian Paul
3dfe672c85 demos: silence warning 2009-04-30 17:03:54 -06:00
Tormod Volden
eef79d50bf mklib: replace if/expr with case
Saves forking an expr for every object.
2009-04-30 16:55:54 -06:00
Tormod Volden
9cb3cdec76 mesa: Prepend "-Wl," to linking options
Let mklib ignore -Wl options inside the object list when building
static libraries
2009-04-30 16:52:56 -06:00
Brian Paul
60927f97f7 i915simple: remove duplicated i915_context.c in C_SOURCES 2009-04-30 16:52:02 -06:00
Michel Dänzer
c28707b507 r300: Increase reference count of texture objects referenced by current state.
Fixes a use-after-free reported in
http://bugs.freedesktop.org/show_bug.cgi?id=20539, so this possibly fixes that
bug. It has been confirmed to fix
http://bugs.freedesktop.org/show_bug.cgi?id=17895 .
2009-04-30 13:21:08 +02:00
Michel Dänzer
ba27fe3710 gallium: Add SCons build support for the DRI state tracker. 2009-04-30 09:39:29 +02:00
Dan Nicholson
cc68cd20d9 egl: Don't install demodriver
I don't think anyone besides a developer would ever want to use the demo
egl driver. Furthermore, egl would only ever load demodriver if it was
set via EGL_DRIVER in the environment. In that case, I think you can
point it to your mesa source directory.
2009-04-29 20:46:37 -07:00
Jakob Bornecrantz
289dc69418 progs/tests: Update ignores 2009-04-29 20:44:03 +01:00
Jakob Bornecrantz
1793d5adac progs/tests: Add mipmap_comp for mipmap testing with compressed textures 2009-04-29 20:18:12 +01:00
Tom Fogal
a9c97c5f2a Use variable library name in pkg-config output.
Previously the pkg-config output files would contain e.g. `-lGL'
and `-lGLU', even if the user modified their configuration to
build libraries with different names.  This modifies the
pkg-config inputs, and corresponding makery, so that modifying the
output library name will cause the appropriate updated name to
appear in the pkg-config `-l' option.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-04-29 12:15:07 -07:00
Dan Nicholson
66f9786256 autoconf: Add switch for optional EGL
EGL doesn't build on all platforms, so allow people to opt out.
2009-04-29 12:15:07 -07:00
Dan Nicholson
356f311c4a autoconf: Clean up some m4 usage
m4_fatal is equivalent to m4_errprint + m4_exit.
2009-04-29 12:15:07 -07:00