mesa.git
14 years agoglapi: return int = 0 from NoOpGeneric()
Brian Paul [Thu, 25 Mar 2010 22:03:13 +0000 (16:03 -0600)]
glapi: return int = 0 from NoOpGeneric()

If a GL function is called w/out a current rendering context, this stub
gets called.  It should return 0 so that non-void-valued functions return
0/NULL instead of a random number.

14 years agoglslcompiler: Fix build.
Vinson Lee [Thu, 25 Mar 2010 19:58:36 +0000 (12:58 -0700)]
glslcompiler: Fix build.

14 years agor300: report correct state atom size
Maciej Cencora [Sun, 21 Mar 2010 11:43:38 +0000 (12:43 +0100)]
r300: report correct state atom size

Spotted by Pauli Nieminen

14 years agor300: fix off by one
Maciej Cencora [Sun, 21 Mar 2010 11:12:05 +0000 (12:12 +0100)]
r300: fix off by one

R300_PVS_MAX_CONST_ADDR field holds highest const addr, not
const count.

Fixes missing models and others rendering errors for vertex
program using 256 params.

14 years agor300: fix vertex programs with big number of params (>255) under KMS
Maciej Cencora [Sun, 21 Mar 2010 11:10:06 +0000 (12:10 +0100)]
r300: fix vertex programs with big number of params (>255) under KMS

UMS will probably require some kernel work

14 years agor300: fix wpos/fog handling
Maciej Cencora [Sun, 21 Mar 2010 10:34:19 +0000 (11:34 +0100)]
r300: fix wpos/fog handling

It may happen that the vertex attribute we were going to stuff
the wpos/fog attrs in was already written by vertex program.
In such cases we need to remove instruction accessing these
attributes, so they don't overwrite the wpos/fog related
instructions.

This fixes non-textured models in many wine games.

14 years agor300: clean fog_attr/wpos_attr if code accessing these attributes has been removed...
Maciej Cencora [Sun, 21 Mar 2010 10:19:02 +0000 (11:19 +0100)]
r300: clean fog_attr/wpos_attr if code accessing these attributes has been removed FP during compilation

14 years agoi965: Stop abusing ctx->NewState flags for storing driver internal changes.
Eric Anholt [Wed, 24 Mar 2010 03:52:06 +0000 (20:52 -0700)]
i965: Stop abusing ctx->NewState flags for storing driver internal changes.

We're still abusing the flags by putting them where our driver stores
ctx->NewState changes.  Making them into more restricted state change
flags would be a project for later.

Fixes a failure where calling intel_draw_buffer() too often would trip
up Mesa assertions about when Mesa state could get changed, when it hadn't.

Bug #27034.

14 years agodocs: update docs with 7.7.1 and 7.8 release info
Brian Paul [Tue, 23 Mar 2010 15:23:26 +0000 (09:23 -0600)]
docs: update docs with 7.7.1 and 7.8 release info

14 years agosoftpipe: comments, re-formatting, etc
Brian Paul [Tue, 23 Mar 2010 15:08:35 +0000 (09:08 -0600)]
softpipe: comments, re-formatting, etc

14 years agosoftpipe: add special cases for all Z compare modes for 16-bit Z buffer
Brian Paul [Tue, 23 Mar 2010 15:00:19 +0000 (09:00 -0600)]
softpipe: add special cases for all Z compare modes for 16-bit Z buffer

We had fast paths for PIPE_FUNC_LESS and LEQUAL before.  To satisfy
OpenGL invariance rules, all depth compare modes should produce the
same fragment Z values.

Fixes progs/demos/singlebuffer.c

14 years agost/glx: better format selection in xmesa_choose_z_stencil_format()
Brian Paul [Tue, 23 Mar 2010 14:58:09 +0000 (08:58 -0600)]
st/glx: better format selection in xmesa_choose_z_stencil_format()

This is a back-port of commit ef2664da6c4db1b52ef351641e3ee949b87f9c7b
from master.

14 years agoAdd missing EGL files to the tarballs.
Chia-I Wu [Tue, 23 Mar 2010 06:37:24 +0000 (14:37 +0800)]
Add missing EGL files to the tarballs.

Add the Makefile of Gallium EGL drivers and demos using EGL to the
tarballs.

14 years agoglx: Suppress BadDrawable from DRI2CopyRegion
Kristian Høgsberg [Tue, 23 Mar 2010 01:57:26 +0000 (21:57 -0400)]
glx: Suppress BadDrawable from DRI2CopyRegion

This can happen when an X window is destroyed behind our back.  We use
DRI2CopyRegion behind the scenes in many places (like flushing the fake
front to the real front) so we have to ignore X errors triggered in that
case.

The glean test cases trigger this consistently as they don't destroy the
GLX drawable nicely, they just destroy the X window.

14 years agomesa: set version string to 7.8-rc2
Ian Romanick [Tue, 23 Mar 2010 01:09:15 +0000 (18:09 -0700)]
mesa: set version string to 7.8-rc2

14 years agointel: Call intel_prepare_render() before looking up regions.
Kristian Høgsberg [Mon, 22 Mar 2010 21:54:35 +0000 (17:54 -0400)]
intel: Call intel_prepare_render() before looking up regions.

Fixes #27213.

14 years agoFix potential compilation issue in visual studio project file
Karl Schultz [Mon, 22 Mar 2010 18:18:02 +0000 (12:18 -0600)]
Fix potential compilation issue in visual studio project file

Add quotes around filespec in post-build event to allow paths
with embedded spaces.

14 years agoglslcompiler: fix build breakage
Brian Paul [Mon, 22 Mar 2010 15:00:13 +0000 (09:00 -0600)]
glslcompiler: fix build breakage

14 years agomesa: Add end of line to the end of a debug output.
Pauli Nieminen [Mon, 22 Mar 2010 13:14:16 +0000 (15:14 +0200)]
mesa: Add end of line to the end of a debug output.

14 years agoprogs/tests: Add cva_huge to SCons build.
Vinson Lee [Mon, 22 Mar 2010 02:21:11 +0000 (19:21 -0700)]
progs/tests: Add cva_huge to SCons build.

14 years agoprogs/tests: Include stddef.h for ptrdiff_t on all platforms.
Vinson Lee [Mon, 22 Mar 2010 02:09:54 +0000 (19:09 -0700)]
progs/tests: Include stddef.h for ptrdiff_t on all platforms.

stddef.h is the standard C header that defines ptrdiff_t.

Fixes build of cva_huge on Mac OS X.

14 years agor200: Fix emit size prediction to account elt splitting.
Pauli Nieminen [Sun, 21 Mar 2010 21:23:21 +0000 (23:23 +0200)]
r200: Fix emit size prediction to account elt splitting.

Emit sizes prediction didn't account for render splitting in
hwtnl path.

14 years agor200: Don't flush when closing elts in KMS.
Pauli Nieminen [Sun, 21 Mar 2010 20:55:13 +0000 (22:55 +0200)]
r200: Don't flush when closing elts in KMS.

Flush in middle of rendering in KMS is not allowed because
buffers are discarded in flush.

Fixes crash when emiting split indices with RADEON_DEBUG=all.

14 years agor200: Fix swtnl fallback to flush pending rendering before transition.
Pauli Nieminen [Sun, 21 Mar 2010 18:16:17 +0000 (20:16 +0200)]
r200: Fix swtnl fallback to flush pending rendering before transition.

Flush after transition would emit wrong state that could cause
wrong state emited for pending rendering operation.

Fixes wan once from extrement tuxracer that is using per vertex
materials.

14 years agor200: Fix mixed indetion in r200TclFallback.
Pauli Nieminen [Sun, 21 Mar 2010 18:02:10 +0000 (20:02 +0200)]
r200: Fix mixed indetion in r200TclFallback.

14 years agovbo: Fix vbo_split_copy to pass correct max_index to draw.
Pauli Nieminen [Sun, 21 Mar 2010 10:42:10 +0000 (12:42 +0200)]
vbo: Fix vbo_split_copy to pass correct max_index to draw.

vbo_split_copy was passing one past the max_index to draw function
which caused _tnl_draw_prims function to read uninitialized values
from copied array.

Bug was spoted in valgrind report of progs/tests/cva_huge.

14 years agotests: Add test for huge client arrays that has to be split.
Pauli Nieminen [Sun, 21 Mar 2010 11:11:47 +0000 (13:11 +0200)]
tests: Add test for huge client arrays that has to be split.

When running this test case in valgrind report includes read of unitialized
value in _tnl_draw_prims. The bug doesn't cause any vissible errors.

Bug is caused by vbo_split_copy that is calling draw function with max_index
one past the end instead of the end.

14 years agor300/compiler: fix assertion failure in the r500-fragprog emission path
Marek Olšák [Sat, 20 Mar 2010 17:31:11 +0000 (18:31 +0100)]
r300/compiler: fix assertion failure in the r500-fragprog emission path

14 years agodocs: remove the 'Last updated date'
Brian Paul [Sat, 20 Mar 2010 16:33:10 +0000 (10:33 -0600)]
docs: remove the 'Last updated date'

14 years agoglapi: Fix aliases to non-static functions.
Chia-I Wu [Sat, 20 Mar 2010 15:58:15 +0000 (23:58 +0800)]
glapi: Fix aliases to non-static functions.

The bug is triggered by 41a87a43e11c664935349f938022d58d3e22da4e.
glBlitFramebuffer, for example, is an alias to the non-static
glBlitFramebufferEXT.  We should define glBlitFramebuffer as an alias to
_dispatch_stub_NNN.

14 years agoglapi: Correctly generate static disatches for X86.
Chia-I Wu [Thu, 18 Mar 2010 03:36:57 +0000 (11:36 +0800)]
glapi: Correctly generate static disatches for X86.

The entry point names, instead of the function name, should be used to
test if the entry point should be statically dispatched.

14 years agor300g: remove hacks from translate_vertex_data_swizzle
Marek Olšák [Tue, 9 Mar 2010 01:10:36 +0000 (02:10 +0100)]
r300g: remove hacks from translate_vertex_data_swizzle

Fixing RGBA 4ub vertex colors.

14 years agodrivers/x11: add PUBLIC qualifier to more API functions
Brian Paul [Fri, 19 Mar 2010 16:35:58 +0000 (10:35 -0600)]
drivers/x11: add PUBLIC qualifier to more API functions

Based on a patch from Tom Fogal.

14 years agointel: Use bit-wise not instead of logical not (i830 path)
Ian Romanick [Fri, 19 Mar 2010 00:30:15 +0000 (17:30 -0700)]
intel: Use bit-wise not instead of logical not (i830 path)

The assertion is checking that the low-order bits of offset are not
set.  It does this by anding the inverted offset mask with the
offset.  This is clearly intended to be a bit-wise "invert".

Fixes bug #25984.

14 years agointel: Correct value of S0_VB_OFFSET_MASK to match hardware docs.
Ian Romanick [Fri, 19 Mar 2010 00:28:52 +0000 (17:28 -0700)]
intel: Correct value of S0_VB_OFFSET_MASK to match hardware docs.

14 years agoUse bit-wise not instead of logical not.
Ian Romanick [Thu, 18 Mar 2010 22:35:05 +0000 (15:35 -0700)]
Use bit-wise not instead of logical not.

The assertion is checking that the low-order bits of offset are not
set.  It does this by anding the inverted offset mask with the
offset.  This is clearly intended to be a bit-wise "invert".

Fixes bug #25984.

14 years agost/mesa: s/unpack/pack/ to be more consistent
Brian Paul [Thu, 18 Mar 2010 15:17:11 +0000 (09:17 -0600)]
st/mesa: s/unpack/pack/ to be more consistent

14 years agointel: Call _mesa_make_current() after getting initial buffers
Kristian Høgsberg [Thu, 18 Mar 2010 02:44:58 +0000 (22:44 -0400)]
intel: Call _mesa_make_current() after getting initial buffers

The default viewport is the window rectangle, which is set up by
_mesa_make_current().  To be able to do that we need to get the
window dimension (and buffers) first, so we have to call
intel_prepare_render() before we can call into _mesa_make_current().

Fixes #26676 and #26678.

14 years agocell: return 1 for PIPE_CAP_BLEND_EQUATION_SEPARATE
Brian Paul [Wed, 17 Mar 2010 23:39:49 +0000 (17:39 -0600)]
cell: return 1 for PIPE_CAP_BLEND_EQUATION_SEPARATE

With this feature, we get OpenGL version 2.0 and the progs/glsl/
demos run as-is.

14 years agocell: be more conservative in cell_is_format_supported()
Brian Paul [Wed, 17 Mar 2010 22:33:29 +0000 (16:33 -0600)]
cell: be more conservative in cell_is_format_supported()

This fixes a regression from commit a84575cdc0c8193b2c7858734e2ec6b1ec4511b2
which changed the depth/stencil format we were trying to use.

14 years agost/mesa: fix glCopyPixels bugs/crashes when src region need clipping
Brian Paul [Wed, 17 Mar 2010 16:06:27 +0000 (10:06 -0600)]
st/mesa: fix glCopyPixels bugs/crashes when src region need clipping

Use the _mesa_clip_readpixels() function to clip the src region against
the buffer's bounds.  Neatly, the resulting pixel unpack object's
SkipPixels/SkipRows fields can be used to determine the position of the
region in the destination texture.

Fixes crash in progs/samples/copy.c and probably other cases.

14 years agomesa: rename params in prototype to match implementation
Brian Paul [Wed, 17 Mar 2010 15:04:26 +0000 (09:04 -0600)]
mesa: rename params in prototype to match implementation

14 years agoswrast: remove unused compute_coveragei() function
Brian Paul [Wed, 17 Mar 2010 14:41:47 +0000 (08:41 -0600)]
swrast: remove unused compute_coveragei() function

14 years agoi965: Fix ENDLOOP to only patch up this loop's BREAK and CONT.
Eric Anholt [Tue, 9 Mar 2010 22:22:51 +0000 (14:22 -0800)]
i965: Fix ENDLOOP to only patch up this loop's BREAK and CONT.

Corresponds to d225a25e21a24508aea3b877c78beb35502e942d and fixes
piglit glsl-fs-loop-nested.  Bug #25173.
(cherry picked from commit a81836ee2fe5092d695b717addf8cec91f569777)

14 years agoi965: Unalias all GLSL source regs from the destination regs used.
Eric Anholt [Tue, 9 Mar 2010 19:56:14 +0000 (11:56 -0800)]
i965: Unalias all GLSL source regs from the destination regs used.

We were doing it ad-hoc before, as instructions with potential
aliasing problems were identified.  But thanks to swizzling basically
anything can have aliasing, so just do it generally at source reg
setup time.  This is somewhat inefficient, because sometimes an
operation doesn't need unaliasing protection if the swizzling is safe,
but the unaliasing before didn't cover those cases either.

Fixes piglit glsl-fs-loop.
(cherry picked from commit 6b194dab6b4d9f12cdd54c699b23c0d3420a49c2)

14 years agoi965: Fix nested loops in the VS.
Eric Anholt [Tue, 9 Mar 2010 17:56:42 +0000 (09:56 -0800)]
i965: Fix nested loops in the VS.

We were patching up all the break and continues between the start of
our loop and the end of our loop, even if they were breaks/continues
for an inner loop.  Avoiding patching already patched breaks/continues
fixes piglit glsl-vs-loop-nested.
(cherry picked from commit f6f547d87ea68f44c50a0b0231b7360ca94b2975)

14 years agoi965: Fix up VP constbuf leak on program delete.
Eric Anholt [Tue, 9 Mar 2010 00:08:33 +0000 (16:08 -0800)]
i965: Fix up VP constbuf leak on program delete.
(cherry picked from commit 7f6d2754d586545ab6c970acffdd897294879039)

14 years agoi965: Fix up the handling of point sprite coordinate replacement.
Eric Anholt [Mon, 8 Mar 2010 20:12:31 +0000 (12:12 -0800)]
i965: Fix up the handling of point sprite coordinate replacement.

The code was walking over the regs of pairs of attributes and checking
whether the attribute with a given reg index had point sprite enabled.
So the point sprite setup code was rarely even getting executed.
Instead, we need to determine which channels of a reg need point
sprite coordinate replacement.  In addition, it was multiplying the
attribute by 1/w, when it's supposed to cover (0, 1) in each direction
regardless of w, and it wasn't filling in the Z and W components of
the texcoord as specified.

Fixes piglit point-sprite and the spriteblast demo.  Bug #24431, #22245.
(cherry picked from commit bc632d04370566c1156cbd0345fe303834f0b910)

14 years agoi965: Add support for the CMP opcode in the GLSL path.
Eric Anholt [Wed, 10 Mar 2010 19:00:40 +0000 (11:00 -0800)]
i965: Add support for the CMP opcode in the GLSL path.

This would be triggered by use of sqrt() along with control flow.
Fixes piglit-fs-sqrt-branch and a bug in Yo Frankie!.
(cherry picked from commit 48dca99feb394febc3af44e14f23fb12a9cc9204)

14 years agoi965: Fix the response len of masked sampler messages for 8-wide dispatch.
Eric Anholt [Wed, 10 Mar 2010 18:38:20 +0000 (10:38 -0800)]
i965: Fix the response len of masked sampler messages for 8-wide dispatch.

The bad response length would hang the GPU with a masked sample in a
shader using control flow.  For 8-wide, the response length is always
4, and masked slots are just not written to.  brw_wm_glsl.c already
allocates registers in the right locations.

Fixes piglit glsl-fs-bug25902 (fd.o bug #25902).
(cherry picked from commit f6d210c284751ac50a8d6358de7e75a1ff1e4ac7)
(cherry picked from commit dc8c0359448cdae7b367552ba58783c04b199778)

14 years agoRemove nonexistant files from tarballs rule of Makefile
Ian Romanick [Tue, 16 Mar 2010 14:48:14 +0000 (07:48 -0700)]
Remove nonexistant files from tarballs rule of Makefile

The Makefile should eventually be fixed to stop building tarballs if
one of the individual calls to tar fails.

14 years agomesa: set version string to 7.8-rc1
Ian Romanick [Tue, 16 Mar 2010 14:38:51 +0000 (07:38 -0700)]
mesa: set version string to 7.8-rc1

14 years agoCorrect GL_EQUIV code in r67/7xx.
Matthew W. S. Bell [Mon, 15 Mar 2010 01:18:02 +0000 (01:18 +0000)]
Correct GL_EQUIV code in r67/7xx.

From 247e121106e8d3e389f2e5a6edf13ea70ac18df7 Mon Sep 17 00:00:00 2001

These seem to be documented in
<http://www.svgopen.org/2003/papers/RasterOperationsUsingFilterElements/index.html>.

14 years agoradeon: Fix buffer object unmap to be called only once for dma buffers.
Pauli Nieminen [Mon, 15 Mar 2010 08:30:18 +0000 (10:30 +0200)]
radeon: Fix buffer object unmap to be called only once for dma buffers.

If flush happens inside radeonRefillCurrentMaRegion the last dma buffer would
be unmapped twice. Unmapping buffer when moving buffer to wait list fixes the
mapping error.

14 years agoReplace _mesa_strtod with _mesa_strtof.
Marcin Baczyński [Sat, 13 Mar 2010 13:26:45 +0000 (14:26 +0100)]
Replace _mesa_strtod with _mesa_strtof.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
14 years agomesa: Fix memory leak in decompress-with-blit.
Keith Whitwell [Fri, 12 Mar 2010 18:32:10 +0000 (18:32 +0000)]
mesa: Fix memory leak in decompress-with-blit.
(cherry picked from commit f05a4ee6f2840590c90da4be2fe5c6295410a5af)

14 years agovmwgfx/dri: Fix SCons build.
Michel Dänzer [Fri, 12 Mar 2010 17:54:23 +0000 (18:54 +0100)]
vmwgfx/dri: Fix SCons build.

14 years agost/dri: Always try to set up R5G6B5 configs.
Michel Dänzer [Fri, 12 Mar 2010 17:24:34 +0000 (18:24 +0100)]
st/dri: Always try to set up R5G6B5 configs.

Allows compiz to work in depth 16.

The DRI2 getBuffersWithFormat hook is only required for 16/32 bit depth
buffers, for colour buffers the only requirement is that the format matches
the drawable depth, which we can't check here.

(cherry picked from commit c50477c255a34444720fb944c54373462ef39fb9)

14 years agodri/r700: include shader/programopt.h instead of programopt.c.
Luc Verhaegen [Fri, 12 Mar 2010 07:35:22 +0000 (08:35 +0100)]
dri/r700: include shader/programopt.h instead of programopt.c.

Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoAdd programs to .gitignore in redbook
Jeff Smith [Fri, 12 Mar 2010 02:19:49 +0000 (20:19 -0600)]
Add programs to .gitignore in redbook

Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoAdd programs to .gitignore in xdemos
Jeff Smith [Fri, 2 Mar 2007 06:14:48 +0000 (00:14 -0600)]
Add programs to .gitignore in xdemos

Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoAdd -L$(libdir) for xdemos and egl so that the right libX11 is found
Jeff Smith [Tue, 9 Mar 2010 18:40:44 +0000 (12:40 -0600)]
Add -L$(libdir) for xdemos and egl so that the right libX11 is found

Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoGrammar and spelling fixes
Jeff Smith [Fri, 13 Jun 2008 14:50:43 +0000 (09:50 -0500)]
Grammar and spelling fixes

Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoradeon: Fix memory leaks from early return.
Vinson Lee [Fri, 12 Mar 2010 05:55:44 +0000 (21:55 -0800)]
radeon: Fix memory leaks from early return.

14 years agost/mesa: s/BUFFER_FRONT_LEFT/surfIndex/
Brian Paul [Thu, 11 Mar 2010 21:51:02 +0000 (14:51 -0700)]
st/mesa: s/BUFFER_FRONT_LEFT/surfIndex/

14 years agost/mesa: fix st_set_framebuffer_surface() state validation
Brian Paul [Thu, 11 Mar 2010 20:44:39 +0000 (13:44 -0700)]
st/mesa: fix st_set_framebuffer_surface() state validation

Set the _NEW_BUFFERS flag and remove the code which updated the
parent framebuffer size.  Normal Mesa state validation will do that.

Fixes issues with Warsow on r300g and possibly other bugs.

14 years agost/xorg: Fixup configure
Jakob Bornecrantz [Thu, 11 Mar 2010 19:23:15 +0000 (19:23 +0000)]
st/xorg: Fixup configure

Make sure we always test for XEXT version.
Make sure that the user has a recent version of libkms and libdrm installed.

Note that the st/xorg code requires so new versions to work but these are
needed to make a proper vmwgfx_drv.so driver which is the only real user.

Cherry picked from 46cf606cd35d6740b28fd26bd32dbdfdde2c7833
Conflicts:

configure.ac

14 years agoARB prog parser: added (float) casts and regenerate files
Brian Paul [Thu, 11 Mar 2010 16:08:58 +0000 (09:08 -0700)]
ARB prog parser: added (float) casts and regenerate files

14 years agost/xorg: Include cursorstr.h
Jakob Bornecrantz [Sat, 6 Feb 2010 16:58:32 +0000 (16:58 +0000)]
st/xorg: Include cursorstr.h

14 years agowindows: fix compilation errors and warnings
Karl Schultz [Wed, 10 Mar 2010 22:58:10 +0000 (15:58 -0700)]
windows: fix compilation errors and warnings

14 years agowindows: Quiet warning by not defining YY_NO_UNISTD_H.
Karl Schultz [Wed, 10 Mar 2010 21:27:34 +0000 (14:27 -0700)]
windows: Quiet warning by not defining YY_NO_UNISTD_H.

14 years agost/mesa: fix incorrect glCopyPixels between window/FBO
Brian Paul [Wed, 10 Mar 2010 17:42:22 +0000 (10:42 -0700)]
st/mesa: fix incorrect glCopyPixels between window/FBO

There was a DrawBuffer/ReadBuffer typo and we were neglecting to invert
the texture coords when copying from a window to an FBO.

Plus, add some surface dump/debug code (disabled).

(cherry picked from commit 34f02071618624263eba839b5aeb930d0e794078)

14 years agost/mesa: fix incorrect glDrawPixels into FBO
Brian Paul [Wed, 10 Mar 2010 17:41:22 +0000 (10:41 -0700)]
st/mesa: fix incorrect glDrawPixels into FBO

We weren't inverting the textured quad when drawing into an fbo.

(cherry picked from commit 8d3f629a13afb0d6acafc7a007972fdc5efe6847)

14 years agost/xorg: Work around cursor reference counting bugs in older X servers.
Michel Dänzer [Wed, 10 Mar 2010 17:26:25 +0000 (18:26 +0100)]
st/xorg: Work around cursor reference counting bugs in older X servers.

Could result in use of freed memory and consequently random crashes, e.g. on
screen resize.
(cherry picked from commit 21c91b410a2a2cbf8eb677e59e3322f86320f2b0)

Conflicts:

src/gallium/state_trackers/xorg/xorg_tracker.h

14 years agoradeon: don't attempt to use alternate blit formats for depth buffers
Alex Deucher [Mon, 8 Mar 2010 22:38:39 +0000 (17:38 -0500)]
radeon: don't attempt to use alternate blit formats for depth buffers

noticed by fredrikh on IRC.

14 years agosoftpipe: zero-out entire clear_flags array in sp_tile_cache_flush_clear()
Brian Paul [Mon, 8 Mar 2010 18:34:55 +0000 (11:34 -0700)]
softpipe: zero-out entire clear_flags array in sp_tile_cache_flush_clear()

Before, we only cleared the flags for the active tiles (the ones inside
the framebuffer bound).  The problem is if we later bound a different,
larger surface to the tile cache we'd have some stale clear-flags still
set (and mistakenly clear some tiles in the new surface).

Fixes fd.o bug 26932.

14 years agost/mesa: don't detach renderbuffer, surface in st_finish_render_texture()
Brian Paul [Mon, 8 Mar 2010 18:31:23 +0000 (11:31 -0700)]
st/mesa: don't detach renderbuffer, surface in st_finish_render_texture()

There's no reason to release the renderbuffer from the framebuffer object
or release the gallium surface in this function (they're reference counted).
In fact, we don't want to do this because we may later use the texture as a
pixel source (ex: glBlitFramebuffer) and need the surface.

Fixes fd.o bug 26923 and is part of the fix for bug 26932.

14 years agor600: enable GL_ARB_pixel_buffer_object
Alex Deucher [Mon, 8 Mar 2010 16:59:02 +0000 (11:59 -0500)]
r600: enable GL_ARB_pixel_buffer_object

14 years agomesa: add additional missing z formats for render to texture
Brian Paul [Mon, 8 Mar 2010 16:58:54 +0000 (09:58 -0700)]
mesa: add additional missing z formats for render to texture

Allow render to texture for X8_Z24 and Z24_X8 formats.
Replace big if/else with switch, etc.

14 years agoradeon/r200/r600: allow src and dst BOs to be placed in GTT during blit
Alex Deucher [Mon, 8 Mar 2010 15:13:49 +0000 (10:13 -0500)]
radeon/r200/r600: allow src and dst BOs to be placed in GTT during blit

14 years agoradeon/r200/r600: reset bos when validating buffers during blit
Alex Deucher [Mon, 8 Mar 2010 15:04:02 +0000 (10:04 -0500)]
radeon/r200/r600: reset bos when validating buffers during blit

14 years agor600: recalculate point size, if point min/max size changes
Alex Deucher [Mon, 8 Mar 2010 15:00:59 +0000 (10:00 -0500)]
r600: recalculate point size, if point min/max size changes

14 years agor600: no need to flush on context init
Alex Deucher [Mon, 8 Mar 2010 14:57:26 +0000 (09:57 -0500)]
r600: no need to flush on context init

14 years agor300: don't enable EXT_packed_depth_stencil
Maciej Cencora [Sat, 13 Feb 2010 23:02:05 +0000 (00:02 +0100)]
r300: don't enable EXT_packed_depth_stencil

R300 hw doesn't support sampling from Z24_S8 or S8_Z24 formats.

14 years agoradeon: no need to emit full state twice after flush
Maciej Cencora [Sat, 16 Jan 2010 14:11:37 +0000 (15:11 +0100)]
radeon: no need to emit full state twice after flush

14 years agor300: allow src and dst BOs to be placed in GTT during blit
Maciej Cencora [Thu, 4 Mar 2010 17:35:55 +0000 (18:35 +0100)]
r300: allow src and dst BOs to be placed in GTT during blit

Fixes some relocation failures

14 years agor300: reset bos when validating buffers during blit
Maciej Cencora [Sat, 6 Feb 2010 17:25:36 +0000 (18:25 +0100)]
r300: reset bos when validating buffers during blit

14 years agoradeon: fallback to software in glCopyTexImage if blit isn't available
Maciej Cencora [Sat, 6 Feb 2010 18:37:23 +0000 (19:37 +0100)]
radeon: fallback to software in glCopyTexImage if blit isn't available

14 years agor300: VAP flush is needed only when vertex program or constants are changed
Maciej Cencora [Sun, 7 Mar 2010 11:02:28 +0000 (12:02 +0100)]
r300: VAP flush is needed only when vertex program or constants are changed

14 years agor300: recalculate point size, if point min/max size changes
Maciej Cencora [Sat, 6 Mar 2010 12:39:13 +0000 (13:39 +0100)]
r300: recalculate point size, if point min/max size changes

Fixes two wine d3d9 unit tests

14 years agor300: no need to flush on context init
Maciej Cencora [Sat, 6 Mar 2010 12:18:11 +0000 (13:18 +0100)]
r300: no need to flush on context init

14 years agor300: remove unnecessary code
Maciej Cencora [Sat, 6 Mar 2010 12:09:47 +0000 (13:09 +0100)]
r300: remove unnecessary code

_tnl_UpdateFixedFunctionProgram is already called in r300_draw.c

14 years agomesa: add render-to-texture case for MESA_FORMAT_S8_Z24
Brian Paul [Mon, 8 Mar 2010 16:38:07 +0000 (09:38 -0700)]
mesa: add render-to-texture case for MESA_FORMAT_S8_Z24

14 years agomesa: s/GL_DEPTH_STENCIL/GL_DEPTH_COMPONENT/ for MESA_FORMAT_Z16 renderbuffer
Brian Paul [Mon, 8 Mar 2010 16:34:46 +0000 (09:34 -0700)]
mesa: s/GL_DEPTH_STENCIL/GL_DEPTH_COMPONENT/ for MESA_FORMAT_Z16 renderbuffer

MESA_FORMAT_Z16 has no stencil bits.

14 years agost/vega: Fix OpenVG demo segfaults.
Chia-I Wu [Wed, 3 Mar 2010 15:51:13 +0000 (23:51 +0800)]
st/vega: Fix OpenVG demo segfaults.

When the paint is color, paint_bind_samplers binds a dummy sampler
without a texture.  It causes demos requiring a sampler (those use a
mask or an image) to crash.

14 years agogallivm: Initialize variables for default cases.
Vinson Lee [Sun, 7 Mar 2010 04:30:28 +0000 (20:30 -0800)]
gallivm: Initialize variables for default cases.

Fixes use of uninitialized variables in non-debug builds.

14 years agoprogs/demos: Add arbocclude2 to Makefile and .gitignore.
Vinson Lee [Sat, 6 Mar 2010 07:18:01 +0000 (23:18 -0800)]
progs/demos: Add arbocclude2 to Makefile and .gitignore.

14 years agoglx: Move initialization of ext_list_first_time to where it's storage is allocated
Brian Paul [Sat, 6 Mar 2010 00:32:36 +0000 (17:32 -0700)]
glx: Move initialization of ext_list_first_time to where it's storage is allocated

Move the initialization of ext_list_first_time from all of the DRI loader's
CreateScreen routines, to where the storage for the screen config is
allocated.

It needs to get set in the screen-config even if DRI is forced off
using LIBGL_ALWAYS_INDIRECT, so that psc->direct_support is initialized
correctly, otherwise __glXExtensionBitIsEnabled() always returns FALSE

Specifically, this causes a problem with an X server which advertises
GLX<=1.2, and the GLX_SGIX_fbconfig extension.
glXGetFBConfigFromVisualSGIX() uses __glXExtensionBitIsEnabled() to
check if the GLX_SGIX_fbconfig extension is available, but that function
won't return correct information because that data has never been
initialized, because ext_list_first_time was never set...

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Brian Paul <brianp@vmware.com>
(cherry picked from commit 96ab4d2b84178209ee59017458d9964b32b7e183)

14 years agodocs: remove merge conflict garbage
Brian Paul [Sat, 6 Mar 2010 00:32:07 +0000 (17:32 -0700)]
docs: remove merge conflict garbage

14 years agometa: Use the DrawBuffer's stencil size
Ian Romanick [Thu, 4 Mar 2010 01:20:27 +0000 (17:20 -0800)]
meta: Use the DrawBuffer's stencil size

Previously the code was erroneously using the stencil size of the
context instead of the stencil size of the DrawBuffer.  With FBOs
these may be different.  As a result, clearing the stencil buffer of
an FBO bound to a context that doesn't have stencil would fail.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>