Commit graph

32144 commits

Author SHA1 Message Date
Maciej Cencora
fabc744999 r300: report correct state atom size
Spotted by Pauli Nieminen
2010-03-24 20:08:17 +01:00
Maciej Cencora
88f785935e 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.
2010-03-24 20:08:09 +01:00
Maciej Cencora
7a77effb0b r300: fix vertex programs with big number of params (>255) under KMS
UMS will probably require some kernel work
2010-03-24 20:08:00 +01:00
Maciej Cencora
bed7d88708 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.
2010-03-24 20:07:44 +01:00
Maciej Cencora
70929f4505 r300: clean fog_attr/wpos_attr if code accessing these attributes has been removed FP during compilation 2010-03-24 20:07:37 +01:00
Eric Anholt
516334b7ff 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.
2010-03-23 15:51:54 -04:00
Brian Paul
ed29329b08 docs: update docs with 7.7.1 and 7.8 release info 2010-03-23 09:24:13 -06:00
Brian Paul
ff54af530b softpipe: comments, re-formatting, etc 2010-03-23 09:08:35 -06:00
Brian Paul
fc1ba0423a 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
2010-03-23 09:00:19 -06:00
Brian Paul
4ceeb1307a st/glx: better format selection in xmesa_choose_z_stencil_format()
This is a back-port of commit ef2664da6c
from master.
2010-03-23 08:58:12 -06:00
Chia-I Wu
2ded27b2f0 Add missing EGL files to the tarballs.
Add the Makefile of Gallium EGL drivers and demos using EGL to the
tarballs.
2010-03-23 14:46:03 +08:00
Kristian Høgsberg
094c6fbc45 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.
2010-03-22 22:04:23 -04:00
Ian Romanick
4eead42550 mesa: set version string to 7.8-rc2 2010-03-22 18:09:15 -07:00
Kristian Høgsberg
62d54f0387 intel: Call intel_prepare_render() before looking up regions.
Fixes #27213.
2010-03-22 17:59:04 -04:00
Karl Schultz
092ca30366 Fix potential compilation issue in visual studio project file
Add quotes around filespec in post-build event to allow paths
with embedded spaces.
2010-03-22 12:18:02 -06:00
Brian Paul
ca97f8b9ba glslcompiler: fix build breakage 2010-03-22 09:00:13 -06:00
Pauli Nieminen
361e8e9118 mesa: Add end of line to the end of a debug output. 2010-03-22 15:16:02 +02:00
Vinson Lee
fce72d5803 progs/tests: Add cva_huge to SCons build. 2010-03-21 19:21:11 -07:00
Vinson Lee
1e7d65bb5b 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.
2010-03-21 19:09:54 -07:00
Pauli Nieminen
4ea694a26b r200: Fix emit size prediction to account elt splitting.
Emit sizes prediction didn't account for render splitting in
hwtnl path.
2010-03-21 23:39:55 +02:00
Pauli Nieminen
0900544fb5 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.
2010-03-21 23:39:53 +02:00
Pauli Nieminen
1968d8f31d 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.
2010-03-21 20:27:49 +02:00
Pauli Nieminen
44e3ec3c05 r200: Fix mixed indetion in r200TclFallback. 2010-03-21 20:27:44 +02:00
Pauli Nieminen
9a7acbccfb 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.
2010-03-21 13:18:36 +02:00
Pauli Nieminen
a81cd67a4f 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.
2010-03-21 13:17:52 +02:00
Marek Olšák
3d72c4ae78 r300/compiler: fix assertion failure in the r500-fragprog emission path 2010-03-20 18:54:55 +01:00
Brian Paul
f0491c945c docs: remove the 'Last updated date' 2010-03-20 10:33:10 -06:00
Chia-I Wu
6fed3a9fa0 glapi: Fix aliases to non-static functions.
The bug is triggered by 41a87a43e1.
glBlitFramebuffer, for example, is an alias to the non-static
glBlitFramebufferEXT.  We should define glBlitFramebuffer as an alias to
_dispatch_stub_NNN.
2010-03-21 00:05:01 +08:00
Chia-I Wu
41a87a43e1 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.
2010-03-20 13:02:05 +08:00
Marek Olšák
7e6e049bb7 r300g: remove hacks from translate_vertex_data_swizzle
Fixing RGBA 4ub vertex colors.
2010-03-19 19:13:01 +01:00
Brian Paul
73060ec7eb drivers/x11: add PUBLIC qualifier to more API functions
Based on a patch from Tom Fogal.
2010-03-19 10:35:58 -06:00
Ian Romanick
062a208814 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.
2010-03-18 17:30:15 -07:00
Ian Romanick
689e4b5541 intel: Correct value of S0_VB_OFFSET_MASK to match hardware docs. 2010-03-18 17:28:52 -07:00
Ian Romanick
fda5078324 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.
2010-03-18 15:35:05 -07:00
Brian Paul
b7e8039132 st/mesa: s/unpack/pack/ to be more consistent 2010-03-18 09:17:11 -06:00
Kristian Høgsberg
38bd7282f2 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.
2010-03-18 09:53:41 -04:00
Brian Paul
05a980ac2a 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.
2010-03-17 17:40:13 -06:00
Brian Paul
6dd4054ca5 cell: be more conservative in cell_is_format_supported()
This fixes a regression from commit a84575cdc0
which changed the depth/stencil format we were trying to use.
2010-03-17 16:35:29 -06:00
Brian Paul
1bfc314596 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.
2010-03-17 10:06:27 -06:00
Brian Paul
c492227683 mesa: rename params in prototype to match implementation 2010-03-17 09:04:26 -06:00
Brian Paul
3828910d0e swrast: remove unused compute_coveragei() function 2010-03-17 08:42:59 -06:00
Eric Anholt
a29c7948d9 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 a81836ee2f)
2010-03-16 12:15:18 -07:00
Eric Anholt
42e0e86866 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 6b194dab6b)
2010-03-16 12:15:12 -07:00
Eric Anholt
d24f59d008 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 f6f547d87e)
2010-03-16 12:15:02 -07:00
Eric Anholt
009392f50d i965: Fix up VP constbuf leak on program delete.
(cherry picked from commit 7f6d2754d5)
2010-03-16 12:14:57 -07:00
Eric Anholt
1254d3d315 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 bc632d0437)
2010-03-16 12:14:48 -07:00
Eric Anholt
837f003eeb 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 48dca99feb)
2010-03-16 12:14:18 -07:00
Eric Anholt
7ee4db50b1 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 f6d210c284)
(cherry picked from commit dc8c035944)
2010-03-16 11:56:21 -07:00
Ian Romanick
c1c9fad293 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.
2010-03-16 10:21:37 -07:00
Ian Romanick
f0c3262927 mesa: set version string to 7.8-rc1 2010-03-16 10:21:37 -07:00