Michel Dänzer [Fri, 25 Sep 2009 18:59:44 +0000 (20:59 +0200)]
intel: Handle GL_RGB8 for glCopyTex(Sub)Image.
Avoids an unnecessary fallback.
Vinson Lee [Fri, 25 Sep 2009 14:51:57 +0000 (08:51 -0600)]
mesa: move declaration before code
Eric Anholt [Thu, 24 Sep 2009 23:15:52 +0000 (16:15 -0700)]
intel: Flush the batch when we're about to subdata into a VBO.
This fixes the clears in openarena with the new metaops clear code, and
the new piglit vbo-subdata-sync test.
Bug #23857.
Eric Anholt [Thu, 24 Sep 2009 21:53:49 +0000 (14:53 -0700)]
i965: Clean up some mess with the batch cache.
Its flagging of extra state that's already flagged by the vtbl new_batch
when appropriate was confusing my tracking down of the OA clear bug.
Brian Paul [Thu, 24 Sep 2009 22:01:26 +0000 (16:01 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Vinson Lee [Thu, 24 Sep 2009 21:59:57 +0000 (15:59 -0600)]
softpipe: Increase GL_MAX_3D_TEXTURE_SIZE to 256.
Eric Anholt [Thu, 24 Sep 2009 18:58:33 +0000 (11:58 -0700)]
i965: Emit zero initialization for NV VP temporaries as required.
This is similar to what r300 does inside the driver, but I've added it as
a generic option since it seems most hardware will want it.
Fixes piglit nv-init-zero-reg.vpfp and nv-init-zero-addr.vpfp.
Eric Anholt [Wed, 23 Sep 2009 23:50:59 +0000 (16:50 -0700)]
i965: Remove assert about NV_vp now that it somewhat works.
Eric Anholt [Thu, 24 Sep 2009 17:40:32 +0000 (10:40 -0700)]
i965: Load NV program matrices when required.
Eric Anholt [Wed, 23 Sep 2009 23:49:52 +0000 (16:49 -0700)]
mesa: Initialize NV_vertex_program fields for the parameter lists and such.
This helps let drivers treat NV_vp like ARB_vp.
Brian Paul [Thu, 24 Sep 2009 20:24:14 +0000 (14:24 -0600)]
mesa: remove glEnable(GL_DEPTH_BOUNDS_TEST_EXT) check/warning
At the time of the enable there may not be a Z buffer, but one
may be attached to the FBO later.
Brian Paul [Thu, 24 Sep 2009 20:19:06 +0000 (14:19 -0600)]
mesa: remove rgbMode check in enable_texture()
If the currently bound FBO isn't yet validated it's possible for
rgbMode to be zero so we'll lose the texture enable.
This could fix some FBO rendering glitches, but I don't know of
any specific instances.
Brian Paul [Thu, 24 Sep 2009 18:41:14 +0000 (12:41 -0600)]
intel: use default array/element buffers in intel_generate_mipmap()
If there happened to be a bound VBO when intel_generate_mipmap() was
called we blew up because of a bad vertex array pointer.
Fixes regnumonline, bug 23859.
Brian Paul [Thu, 24 Sep 2009 18:37:34 +0000 (12:37 -0600)]
mesa: replace assertion with no-op function assignment
Brian Paul [Thu, 24 Sep 2009 18:37:06 +0000 (12:37 -0600)]
mesa: added comment
Brian Paul [Thu, 24 Sep 2009 18:35:51 +0000 (12:35 -0600)]
vbo: limit number of warnings to 10
Otherwise some apps will emit tons of warnings.
Pauli Nieminen [Thu, 24 Sep 2009 16:58:09 +0000 (19:58 +0300)]
radeon: Fix scissors for r600 KMS.
Radeon generic scissors code had problem that some of code was using exclusive
and some inclusive bottom right corner. Only r600 driver is using exclusive
coordinate so changed generic code to pass inclusive coordinate and r600 driver
changes BR coordinate to be exclusive.
Brian Paul [Thu, 24 Sep 2009 16:52:15 +0000 (10:52 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Thu, 24 Sep 2009 16:26:56 +0000 (10:26 -0600)]
tgsi/sse: Pass the lodbias, not zero. More comments.
This fixes the glean/glsl1 "texture2D(), with bias" test when using SSE.
Brian Paul [Wed, 23 Sep 2009 21:44:37 +0000 (15:44 -0600)]
mesa: added default case return to silence warning
Brian Paul [Wed, 23 Sep 2009 21:44:18 +0000 (15:44 -0600)]
glsl: init var to silence warning
Brian Paul [Wed, 23 Sep 2009 21:44:02 +0000 (15:44 -0600)]
glsl: fix missing initializers warning
Andre Maasikas [Wed, 23 Sep 2009 11:20:59 +0000 (14:20 +0300)]
r600: add support for CUBE textures, also TXP
seems to work here ...
Alex Deucher [Mon, 21 Sep 2009 20:48:55 +0000 (16:48 -0400)]
r600: fix typo in the last commit
128 gprs, 256 reg-based consts
Alex Deucher [Mon, 21 Sep 2009 20:30:14 +0000 (16:30 -0400)]
r600: various cleanups
- max texture size is 8k, but mesa doesn't support
that at the moment.
- attempt to set shader limits to what the hw actually
supports
- clean up some old r300 cruft
- no need to explicitly disable irqs. This is fixed
in the drm now.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Andre Maasikas [Mon, 21 Sep 2009 14:14:25 +0000 (10:14 -0400)]
r600: fix some issues with LIT instruction
- MUL_LIT is ALU.Trans instruction
- some Trans instructions can take 3 arguments
- don't clobber dst.x, use dst.z as temp, it'll get written correct
value in last insn
- respect source swizzles
Alex Deucher [Sat, 19 Sep 2009 19:18:42 +0000 (15:18 -0400)]
r600: fix point sizes
registers takes radius
Alex Deucher [Sat, 19 Sep 2009 18:46:06 +0000 (14:46 -0400)]
r600: fix polygon offset
Alex Deucher [Tue, 15 Sep 2009 21:12:03 +0000 (17:12 -0400)]
radeon: don't build non-r600 span code on r600
Alex Deucher [Tue, 15 Sep 2009 20:58:37 +0000 (16:58 -0400)]
r600: minor span cleanups
Andre Maasikas [Tue, 15 Sep 2009 15:27:51 +0000 (11:27 -0400)]
r600: support position_invariant programs
Alex Deucher [Mon, 14 Sep 2009 22:05:15 +0000 (18:05 -0400)]
r600: add span support for 1D tiles
1D tile span support for depth/stencil/color/textures
Z and stencil buffers are always tiled, so this fixes
sw access to Z and stencil buffers. color and textures
are currently linear, but this adds span support when we
implement 1D tiling.
This fixes the text in progs/demos/engine and progs/tests/z*
Alex Deucher [Mon, 14 Sep 2009 21:08:26 +0000 (17:08 -0400)]
r600: fix warning
Noticed by rnoland on IRC.
Andre Maasikas [Fri, 11 Sep 2009 19:59:55 +0000 (15:59 -0400)]
r600: fix texcoords from constants
with some minor updates from Richard.
Andre Maasikas [Fri, 11 Sep 2009 14:59:05 +0000 (10:59 -0400)]
r600: enable caching of vertex programs
Alex Deucher [Wed, 9 Sep 2009 15:14:17 +0000 (11:14 -0400)]
r600: check if textures are actually enabled before submission
noticed by taiu on IRC.
Alex Deucher [Wed, 9 Sep 2009 05:41:46 +0000 (01:41 -0400)]
r600: fix ftp for dri1
We use t->bo for dri1 since r600 uses CS for dri1.
Dave Airlie [Wed, 9 Sep 2009 05:02:16 +0000 (15:02 +1000)]
r600: don't setup hardware state if TFP
if we have a BO here it means TFP and we should have set it
up already.
tested by b0le on #radeon
Alex Deucher [Tue, 8 Sep 2009 20:03:25 +0000 (16:03 -0400)]
r600: fix dri2 clipping
Maciej Cencora [Sat, 19 Sep 2009 16:45:59 +0000 (18:45 +0200)]
r300: fallback to software rendering if we are out of free texcoords
Fixes #22741
Brian Paul [Wed, 23 Sep 2009 19:35:03 +0000 (13:35 -0600)]
swrast: add lod bias when texture sampling
Mostly fixes progs/demos/lodbias when MESA_TEX_PROG=1. But the LOD still
seems off by -1 or so.
May be an issue with the params passed to _swrast_compute_lambda()
Brian Paul [Wed, 23 Sep 2009 19:34:30 +0000 (13:34 -0600)]
mesa: don't bias LOD in shader interpreter; do it in swrast
Brian Paul [Wed, 23 Sep 2009 18:54:14 +0000 (12:54 -0600)]
swrast: fix typo in partial derivatives parameter passing
Keith Whitwell [Wed, 23 Sep 2009 13:40:45 +0000 (14:40 +0100)]
st/mesa: trim calculated userbuffer size
In get_array_bounds we were previously defining a user buffer sized as
(nr_vertices * stride). The trouble is that if the vertex data
occupies less than stride bytes, the extra tailing (stride - size)
bytes may extend outside the memory actually allocated by the app and
caused a segfault.
To fix this, define a the buffer bounds to be:
ptr .. ptr + (nr-1)*stride + element_size
Brian Paul [Wed, 23 Sep 2009 16:50:38 +0000 (10:50 -0600)]
softpipe: added max texture/surface size sanity check
Brian Paul [Tue, 22 Sep 2009 21:35:05 +0000 (15:35 -0600)]
softpipe: increase MAX_WIDTH/HEIGTH 4096 to match max texture size
Brian Paul [Tue, 22 Sep 2009 21:58:12 +0000 (15:58 -0600)]
mesa: don't re-use the meta glDrawPixels VBO; create a new one each time
This should help to work around bugs 24083 and 23670.
Brian Paul [Tue, 22 Sep 2009 19:47:49 +0000 (13:47 -0600)]
mesa: fix more buffer object error messages
Brian Paul [Tue, 22 Sep 2009 19:44:43 +0000 (13:44 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
src/mesa/main/bufferobj.c
Brian Paul [Tue, 22 Sep 2009 19:19:05 +0000 (13:19 -0600)]
glx: include string.h to silence missing memset() prototype warning
Brian Paul [Tue, 22 Sep 2009 19:14:55 +0000 (13:14 -0600)]
mesa: fix error message text
Nicolai Hähnle [Tue, 22 Sep 2009 18:57:05 +0000 (20:57 +0200)]
r300: Fix crash reported in bug #24066
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Tormod Volden [Sun, 20 Sep 2009 18:20:01 +0000 (20:20 +0200)]
GLX: Warn only once about applications calling GLX 1.3 functions
The warnings introduced in
1f309c40b8065b8729fce631540c66e4b50b84df
would pour out generously from some applications. This patch adds a
"warn once" wrapper macro, heavily inspired by
src/mesa/drivers/dri/r600/radeon_debug.h
Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Brian Paul [Mon, 21 Sep 2009 20:49:46 +0000 (14:49 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Mon, 21 Sep 2009 20:23:07 +0000 (14:23 -0600)]
mesa: refine the error checking vbo_exec_DrawRangeElements()
If the 'end' index is out of bounds issue a warning as before. But instead
of just no-op'ing the draw call, examine the actual array indices to see
if they're OK. If the max array index is out of bounds, issue another
warning and no-op the draw call. Otherwise, draw normally. This is a
debug build-only feature since it could impact performance.
This "fixes" the missing torus in the OGL Distilled / Picking demo.
Brian Paul [Mon, 21 Sep 2009 20:07:35 +0000 (14:07 -0600)]
mesa: make max_buffer_index() a non-static function
Maciej Cencora [Sun, 20 Sep 2009 11:54:59 +0000 (13:54 +0200)]
Maciej Cencora [Sat, 19 Sep 2009 16:47:36 +0000 (18:47 +0200)]
mesa: add some debug info to teximage.c
Maciej Cencora [Sat, 19 Sep 2009 16:46:51 +0000 (18:46 +0200)]
r300: fix a typo
Eric Anholt [Wed, 20 May 2009 21:05:03 +0000 (14:05 -0700)]
intel: Mark the FBO as incomplete if there's no intel_renderbuffer for it.
This happens to rendering with textures with a border, which had resulted
in a segfault on dereferencing the irb.
(cherry-picked from commit
8bba183b9eeb162661a287bf2e118c6dd419dd24)
Brian Paul [Mon, 21 Sep 2009 14:34:00 +0000 (08:34 -0600)]
softpipe: Fix cube face selection.
If arx and ary are equal, we still want to choose from one of them,
and not arz.
(cherry picked from commit
de685b37a91bc95dd4093a44a49b7b47385b1f7c)
Brian Paul [Mon, 21 Sep 2009 14:32:43 +0000 (08:32 -0600)]
swrast: fix cube face selection
If arx and ary are equal, we still want to choose from one of them,
and not arz.
This is the same as Michal's softpipe fix.
Nicolai Hähnle [Mon, 21 Sep 2009 10:50:33 +0000 (12:50 +0200)]
r300: Zero-initialize register for NV_vertex_program
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Wed, 9 Sep 2009 17:56:57 +0000 (19:56 +0200)]
r300: Fix handling of NV_vertex_program parameters
The handling is a bit inefficient, unfortunately, but I don't want to make
any intrusive changes for Mesa 7.6.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Michel Dänzer [Mon, 21 Sep 2009 08:39:20 +0000 (10:39 +0200)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Michel Dänzer [Mon, 21 Sep 2009 08:08:11 +0000 (10:08 +0200)]
intel: Fix crash in intel_flush().
Since commit
2921a2555d0a76fa649b23c31e3264bbc78b2ff5 ('intel: Deassociated
drawables from private context struct in intelUnbindContext'),
intel->driDrawable may be NULL in intel_flush().
Pauli Nieminen [Sun, 20 Sep 2009 19:24:35 +0000 (22:24 +0300)]
radeon: Fix legacy bo not to reuse dma buffers before refcount is 1.
This should help detecting possible memory leaks with dma buffers and prevent
possible visual corruption if data would be overwriten too early.
Nicolai Hähnle [Sun, 20 Sep 2009 18:40:03 +0000 (20:40 +0200)]
r300/compiler: Fix trig instructions in R300 fp
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Pauli Nieminen [Sun, 20 Sep 2009 18:08:42 +0000 (21:08 +0300)]
radeon: Fix typo in variable name.
Pauli Nieminen [Sun, 20 Sep 2009 17:07:35 +0000 (20:07 +0300)]
radeon: Improve WARN_ONCE macro to appear as single statement.
Do-while makes macro safe to be used with if and for constructions.
Also remove __LINE__ macro from variable name because scope is local to macro anyway.
Nicolai Hähnle [Sun, 20 Sep 2009 16:45:32 +0000 (18:45 +0200)]
radeon: Fix "verts" debugging enable
Copy'n'paste apparently prevented the RADEON_VERTS flag from being enabled.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sun, 20 Sep 2009 14:59:03 +0000 (16:59 +0200)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Nicolai Hähnle [Sat, 12 Sep 2009 14:49:31 +0000 (16:49 +0200)]
mesa/st: Create front renderbuffer on the fly when supplied with a surface
Normally, the mesa/st would create a fake front buffer out of a
client-allocated surface.
In the DRI setting, however, st/dri provides a front buffer surface which is
created and maintained by the X server. Prefer to use this surface instead,
so that front buffer rendering and reading works correctly.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sat, 12 Sep 2009 10:13:35 +0000 (12:13 +0200)]
mesa/st: Initialize format bits of framebuffer renderbuffers
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sun, 20 Sep 2009 14:46:58 +0000 (16:46 +0200)]
docs: Document new features in radeon/r200/r300 drivers
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sun, 20 Sep 2009 14:33:59 +0000 (16:33 +0200)]
r300/compiler: Fix R300 fragment program regression introduced by
0723cd1...
We obviously need to move the code addr register backwards because their may
be overlap.
This bug affected in particular the Compiz water plugin.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Zou Nan hai [Fri, 18 Sep 2009 08:04:41 +0000 (16:04 +0800)]
[i965] add a missing header file
Zou Nan hai [Fri, 18 Sep 2009 05:29:28 +0000 (13:29 +0800)]
[i965] use intel_batchbuffer_flush to flush the clear
Brian Paul [Thu, 17 Sep 2009 03:21:42 +0000 (21:21 -0600)]
mesa: fix clip plane, fog issues
Ian Romanick [Wed, 16 Sep 2009 23:43:50 +0000 (16:43 -0700)]
glx: Use initstate_r / random_r instead of corrupting global random number state
Previously srandom and random were used. This cause the global random
number generator state to be modified. This caused problems for
applications that called srandom before calling into GLX. By using
local state the global state is left unmodified.
This should fix bug #23774.
Brian Paul [Wed, 16 Sep 2009 19:07:12 +0000 (13:07 -0600)]
st/mesa: fix some incorrect branching/clean-up code in TexImage functions
We need to be sure to call the _mesa_unmap_teximage_pbo() function if we
called _mesa_validate_pbo_teximage().
Brian Paul [Wed, 16 Sep 2009 18:57:26 +0000 (12:57 -0600)]
st/mesa: fix texture memory allocation bug
The following example caused an incorrect GL_OUT_OF_MEMORY error to be
raised in glTexSubImage2D:
glTexImage2D(level=0, width=32, height=32, pixels=NULL);
glTexImage2D(level=0, width=64, height=64, pixels=NULL);
glTexSubImage2D(level=0, pixels!=NULL);
The second glTexImage2D() call needs to cause the first image to be
deallocated then reallocated at the new size. This was not happening
because we were testing for pixels==NULL too early.
Ian Romanick [Wed, 16 Sep 2009 14:57:19 +0000 (07:57 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
src/mesa/main/dlist.c
Ian Romanick [Wed, 16 Sep 2009 14:39:58 +0000 (07:39 -0700)]
intel: Deassociated drawables from private context struct in intelUnbindContext
The generic DRI infrastructure makes sure that __DRIcontextRec::driDrawablePriv
and __DRIcontextRec::driReadablePriv are set to NULL after unbinding a
context. However, the intel_context structure keeps cached copies of
these pointers. If these cached pointers are not NULLed and the
drawable is actually destroyed after unbinding the context (typically
by way of glXDestroyWindow), freed memory will be dereferenced in
intelDestroyContext.
This should fix bug #23418.
Zou Nan hai [Wed, 16 Sep 2009 05:25:46 +0000 (13:25 +0800)]
i965: do a flush in clear, fix openarena render issue,
fd.o bug# 23857
Brian Paul [Tue, 15 Sep 2009 21:12:29 +0000 (15:12 -0600)]
docs: glUniform functions are now compiled into display lists
Brian Paul [Tue, 15 Sep 2009 21:10:29 +0000 (15:10 -0600)]
mesa: compile glUniformMatrix() functions into display lists
I believe this is the last of the shader-related functions that needed
display list treatment.
Brian Paul [Tue, 15 Sep 2009 20:56:55 +0000 (14:56 -0600)]
mesa: implement more glUniform display list functions
Brian Paul [Tue, 15 Sep 2009 20:38:52 +0000 (14:38 -0600)]
docs: document glUseProgram display list fix
Brian Paul [Tue, 15 Sep 2009 20:31:10 +0000 (14:31 -0600)]
mesa: compile glUniform4f() into display lists
Note: there are more glUniform functions to compile...
Brian Paul [Tue, 15 Sep 2009 20:25:44 +0000 (14:25 -0600)]
mesa: compile glUseProgram/glUseProgramObjectARB into display lists
Fixes bug 23746
Ian Romanick [Tue, 15 Sep 2009 20:13:35 +0000 (13:13 -0700)]
Merge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Tue, 15 Sep 2009 20:12:22 +0000 (13:12 -0700)]
GLX: Complain when buggy applications call GLX 1.3 functions.
Brian Paul [Tue, 15 Sep 2009 15:45:18 +0000 (09:45 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Tue, 15 Sep 2009 15:36:31 +0000 (09:36 -0600)]
gl: restore some PFNGL typedefs
Commit
d33c315d9e32584dea12cea683795b498a9f5eca removed a few too many
typedefs. We need the typedefs in glext.h which are protected by #ifdef
GL_VERSION_1_2 but we can exclude the ones protected by
GL_VERSION_1_2_DEPRECATED.
Brian Paul [Mon, 14 Sep 2009 23:48:17 +0000 (17:48 -0600)]
progs/vp: print program and error info when program does not compile
Brian Paul [Mon, 14 Sep 2009 23:32:03 +0000 (17:32 -0600)]
glsl: added some link debug code (disabled)
Brian Paul [Mon, 14 Sep 2009 23:27:47 +0000 (17:27 -0600)]
docs: document linker/preprocessor bug fix
Brian Paul [Mon, 14 Sep 2009 23:24:25 +0000 (17:24 -0600)]
glsl: remove extra #version directives from concatenated shader sources
When we concatenate shaders to do our form of poor-man linking, if there's
multiple #version directives, preprocessing fails. This change disables
the extra #version directives by changing the first two chars to //.
This should help with some Wine issues such as bug 23946.
Vinson Lee [Mon, 14 Sep 2009 17:50:48 +0000 (11:50 -0600)]
gallium: Add Mac OS to pipe/p_thread.h.
Mac OS also has POSIX threads.