summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-07-02radeon/r300: use base width/height.Dave Airlie
I suspect this might break TFP in some way but it makes firecube run here
2009-07-02i965: fixes for JMPIXiang, Haihao
1. the data type of <src1> (JMPI offset) must be D 2. execution size must be 1 3. NoMask 4. instruction compression isn't allowed.
2009-07-01r300g: Fix recursive Draw flush.Corbin Simpson
Also just noticed that demos/copypix walks around the overlapping blit rules. Bad, bad Mesa. :3
2009-07-01r300g: Use floats for surface_copy texcoords, use correct src and dest.Corbin Simpson
This makes demos/copypix better-looking. Horizontal dimensions are right now.
2009-07-01radeon-gallium: Adapt to drm_api changes.Corbin Simpson
Note that trace debugging is temporarily gone. I'll rework it later.
2009-06-30intel: Avoid pointer arithmetic on void *.Eric Anholt
Bug #22000.
2009-06-30i965: Increase G4X default VS URB allocation to actually allow 32 threads.Eric Anholt
This improves the performance of my GLSL demo by 30%. It also fixes the VS deadlock that ut2004 had, for reasons I can't explain. Bug #21330.
2009-06-30demos: Set the depth mask correctly to get the desired blendingIan Romanick
2009-07-01nouveau: return some supported zeta formatsBen Skeggs
2009-07-01nouveau: deal with PIPE_CAP_TGSI_CONT_SUPPORTEDBen Skeggs
2009-07-01nouveau: fix build...Ben Skeggs
2009-07-01drm/st: Remove drm_api struct from driversJakob Bornecrantz
Remove the drm_api from the functions in the softpipe and i915simple drivers. Create wrapper functions in the backends instead.
2009-06-30i965: first attempt at handling URB overflow when there's too many vs outputsBrian Paul
If we can't fit all the VS outputs into the MRF, we need to overflow into temporary GRF registers, then use some MOVs and a second brw_urb_WRITE() instruction to place the overflow vertex results into the URB. This is hit when a vertex/fragment shader pair has a large number of varying variables (12 or more). There's still something broken here, but it seems close...
2009-06-30i965: use BRW_MAX_MRFBrian Paul
2009-06-30i965: use BRW_MAX_GRF, BRW_MAX_MRFBrian Paul
2009-06-30i965: move BRW_MAX_GRF, define BRW_MAX_MRFBrian Paul
2009-06-30i965: defined BRW_MAX_MRFBrian Paul
2009-06-30i965: comments and a new assertionBrian Paul
2009-06-30i915: Fix assertion failure on remapping a non-BO-backed VBO.Eric Anholt
Failure to set the obj->Pointer back to null tripped up the assertion. Bug #22428.
2009-06-30Merge branch 'mesa_7_5_branch'Brian Paul
Conflicts: src/mesa/vbo/vbo_exec_draw.c
2009-06-30gallium: remove the pipe_sampler_state::shadow_ambient fieldBrian Paul
This was only present for the sake of GL_ARB_shadow_ambient which we never implemented in Gallium. If we someday want GL_ARB_shadow_ambient we can implement it in the state tracker by adding a MAD after the relevant TEX instructions.
2009-06-30mesa: fix transform_points_3d_no_rot using undefined values in %xmm0Arthur HUILLET
Signed-off-by: Arthur HUILLET <arthur.huillet@free.fr>
2009-06-30glx: plug a leakKristof Ralovich
Swrast was missing a free for the culmination of driConcatConfigs. Use free(), not _mesa_free() since we shouldn't be calling any Mesa functions from the GLX code. driConcatConfigs() should probably use regular malloc/free to be consistant but the Mesa functions just wrap the libc functions anyway.
2009-06-30glx: fix null pointer dereference segfault (bug 22546)Brian Paul
2009-06-30progs/util: make sure function pointers are initializedKeith Whitwell
Call Init() from CompileShaderFile, was previously only called for the Text version of this function.
2009-06-30mesa: Set FLUSH_EXPLICIT_BIT flags when calling FlushMappedBufferRange.José Fonseca
As prescribed by ARB_map_buffer_range.
2009-06-30util: Set PIPE_BUFFER_USAGE_FLUSH_EXPLICIT when calling ↵José Fonseca
buffer_flush_mapped_range.
2009-06-30gallium: New PIPE_BUFFER_USAGE_FLUSH_EXPLICIT flag for ↵José Fonseca
buffer_flush_mapped_range. When a buffer was mapped for write and no explicit flush range was provided the existing semantics were that the whole buffer would be flushed, mostly for backwards compatability with non map-buffer-range aware code. However if the buffer was mapped/unmapped with nothing really written -- something that often happens with the vbo -- we were unnecessarily assuming that the whole buffer was written. The new PIPE_BUFFER_USAGE_FLUSH_EXPLICIT flag (based from ARB_map_buffer_range 's GL_MAP_FLUSH_EXPLICIT_BIT flag) allows to clearly distinguish the legacy usage from the nothing written usage.
2009-06-30identity: Create a drm_api wrapperJakob Bornecrantz
2009-06-30drm/st: Return drm_api struct from a functionJakob Bornecrantz
2009-06-29softpipe: use shadow_compare4() to compare texcoord to four texture samplesBrian Paul
2009-06-29softpipe: pass sampler state to shadow_compare()Brian Paul
2009-06-29nouveau: Expect right params to tex_transfer_destroy().Younes Manton
Never crashed on x86, ptx is in the same stack slot in either case. Thanks to Bob Gleitsmann for catching this.
2009-06-29nouveau: Turn off debug cannon.Younes Manton
2009-06-29intel: Enable EXT_gpu_program_parameters.Eric Anholt
There doesn't appear to be any driver impact for enabling this, and tests/prog_parameter passes.
2009-06-29Merge branch 'mesa_7_5_branch'Brian Paul
2009-06-29gallium/draw: sketch out some missing pointcoord codeBrian Paul
The gl_PointCoord attribute is currently expected to be in the fog coord register's z/w components. This was never totally fleshed out though. This is just some placeholder code.
2009-06-29st/mesa: enable GL_ARB_framebuffer_objectBrian Paul
All gallium drivers should be able to support mixed-size color/depth/stencil buffers. If not, we'll need a new PIPE_CAP_ query.
2009-06-29mesa: check for ARB_framebuffer_object for GL_TEXTURE_STENCIL_SIZE_EXT queryBrian Paul
2009-06-29mesa: alphabetize linesBrian Paul
2009-06-29intel: added null ptr checkBrian Paul
This fixes a segfault seen with piglit's fdo20701 test.
2009-06-29Revert "intel: Remove unneded pthread mutex in LOCK_HARDWARE."Eric Anholt
This reverts commit de447afff26706e3bf8bdcd5cfb8b1daf49b4b21 but puts the lock under DRI1-only. From keithw: > It's there because the DRI1 code doesn't actually achieve the mutexing > which it looks as if it should. For multi-threaded applications it was > always possible to get two threads inside locked regions -- I have no > idea how, but it certainly was and presumably still is possible.
2009-06-29intel: Move note_unlock() implementation to the one place it's needed.Eric Anholt
2009-06-29intel: Remove unneded pthread mutex in LOCK_HARDWARE.Eric Anholt
This would cause LOCK_HARDWARE to mutex all contexts in this process on both DRI1 and DRI2. On DRI1, LOCK_HARDWARE already does it for all processes on the system. On DRI2, LOCK_HARDWARE doesn't, but there shouldn't be any state outside the context that needs any additional protection. Notably, the bufmgr is protected by its own mutex and not LOCK_HARDWARE. This code was originally introduced with the i915tex code dump, so it's not clear what it was there for.
2009-06-29intel: Make LOCK_HARDWARE recursive to avoid hand-rolling recursiveness.Eric Anholt
2009-06-29Merge branch 'mesa_7_5_branch'Brian Paul
2009-06-29progs/glsl: link with GLEW libraryBrian Paul
2009-06-29progs/glsl: compile with scons and glewKeith Whitwell
Get most of these working with scons.
2009-06-29scons: Don't raise an exception when DXSDK is not found.José Fonseca
Unfortunately scons does not check if a tool exists before it invokes its generate function.
2009-06-28scons: Disable optimizations only for gcc-4.2José Fonseca
gcc-4.2's optimizer has a strange bug where it looses code from inner loops in certain situations. For example, if the appearently innocent looking code below is compiled with gcc-4.2 -S -O1, the inner loop's code is missing from the outputed assembly. struct Size { unsigned width; }; struct Command { unsigned length; struct Size sizes[32]; }; extern void emit_command(void *command, unsigned length); void create_surface( struct Size size, unsigned faces, unsigned levels) { struct Command cmd; unsigned face; unsigned level; cmd.length = faces*levels*sizeof(cmd.sizes[0]); for(face = 0; face < faces; ++face) { for(level = 0; level < levels; ++level) { cmd.sizes[face*levels + level] = size; // This should generate a shrl statement, but the whole for body // disappears in gcc-4.2 -O1/-O2/-O3! size.width >>= 1; } } emit(&cmd, sizeof cmd.length + cmd.length); } Note that this is not specific to MinGW's gcc-4.2 crosscompiler (the version typically found in debian/ubuntu's mingw32 packages). gcc-4.2 on Linux also displays the same error. gcc-4.3 and above gets this correctly though. Updated MinGW debian packages with gcc-4.3 are available from http://people.freedesktop.org/~jrfonseca/debian/pool/main/m/