summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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-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-30mesa/vbo: fix compile and replay of nodes ending in a FALLBACKKeith Whitwell
Where vbo save nodes are terminated with a call to DO_FALLBACK(), as in the case of a recursive CallList which is itself within a Begin/End pair, there two problems: 1) The display list node's primitive information was incorrect, stating the cut-off prim had zero vertices 2) On replay, we would get confused by a primitive that started in a node, but was terminated by individual opcodes. This change fixes the first problem by correctly terminating the last primitive on fallback, and the second by forcing the display list to use the Loopback path, converting all nodes into immediate-mode rendering. The loopback fix is a performance hit, but avoiding this would require a fairly large rework of this code.
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-30mesa/dlist: fixes and improvements for material cachingKeith Whitwell
Only short-circuit material call if *all* statechanges from this call are cached. Some material calls (eg with FRONT_AND_BACK) change more than one piece of state -- need to check all of them before returning. Also, Material calls are legal inside begin/end pairs, so don't need to be as careful about begin/end state as with regular statechanges (like ShadeModel) when caching. Take advantage of this and do better caching.
2009-06-30mesa/dlist: don't cache state which may not be replayed on CallListKeith Whitwell
Statechanges which occur before the first End in a display list may not be replayed when the list is called, in particular if it is called from within a begin/end pair. Recognize vulnerable statechanges and do not use them to fill in the state cache.
2009-06-30mesa/dlist: invalidate cached dlist compile state after CallListKeith Whitwell
When compiling a display list containing a CallList, it is necessary to invalidate any assumption about the GL state after the recursive call completes.
2009-06-30Merge branch 'mesa_7_5_branch' into dlist-statechange-shortcircuitKeith Whitwell
Need this to pick up fixes for per-vertex materials.
2009-06-30mesa: remove whitespaceKeith Whitwell
2009-06-30mesa: remove dead constant pointsize code from ffvertex_prog.cKeith Whitwell
2009-06-30mesa: remove dead vertex fog code from ffvertex_prog.cKeith Whitwell
2009-06-30mesa: fix material inputs in ffvertex_prog.cKeith Whitwell
Varying material inputs were not being picked up from the same slots where the VBO code is currently placing them (GENERIC0 and above). Most often they were just being ignored.
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-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-30st/gl: Add stubs for CompressedTexSubImage[1D|3D]Jakob Bornecrantz
2009-06-30st/gl: Add support for glCompressedTexSubImageJakob Bornecrantz
2009-07-01util: Increase OutputDebugStringA to 4k.José Fonseca
According to http://unixwiz.net/techtips/outputdebugstring.html that's how big the buffer is. The 512bytes limitation is in kernel mode.
2009-07-01mesa: Unbind depth/stencil surface from pipe_framebuffer when none is attached.José Fonseca
2009-07-01st/wgl: dummy implementation of wgl swapinterval extensionKeith Whitwell
Required as some applications retrieve and call these functions regardless of the fact that we don't advertise the extension and further more the results of wglGetProcAddress are NULL.
2009-07-01gallium: fix the front face semanticsZack Rusin
mesa allocates both frontface and pointcoord registers within the fog coordinate register, by using swizzling. to make it cleaner and easier for drivers we want each of them in its own register. so when doing compilation from the mesa IR to tgsi allocate new registers for both and add new semantics to the respective declarations.
2009-07-01wgl: Optimize wglGetProcAddress.José Fonseca
Do linear search only if prefix matches.
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. (cherry picked from commit 57a06d3a48c9af1067ec05e3ad96c58f4b9b99be)
2009-06-30mesa/vbo: fix compile and replay of nodes ending in a FALLBACKKeith Whitwell
Where vbo save nodes are terminated with a call to DO_FALLBACK(), as in the case of a recursive CallList which is itself within a Begin/End pair, there two problems: 1) The display list node's primitive information was incorrect, stating the cut-off prim had zero vertices 2) On replay, we would get confused by a primitive that started in a node, but was terminated by individual opcodes. This change fixes the first problem by correctly terminating the last primitive on fallback, and the second by forcing the display list to use the Loopback path, converting all nodes into immediate-mode rendering. The loopback fix is a performance hit, but avoiding this would require a fairly large rework of this code.
2009-06-30mesa/dlist: restore missing SAVE_FLUSH_VERTICES in save_ShadeModelKeith Whitwell
Reorganization of ShadeModel to avoid flushing vertices too often ended up never flushing vertices due to omitted line of code.
2009-06-30mesa/vbo: use _lookup_prim_by_nr for debuggingKeith Whitwell
Switch over to specialized enum lookup for primitives
2009-06-30mesa: add debug printer for primitive nameKeith Whitwell
Add a simple version of _mesa_lookup_enum_by_nr() which expects a primitive enum (GL_POINTS..GL_POLYGON). This avoids some annoying duplicates when looking up primitives, such as the GL_FALSE/GL_POINTS clash.
2009-06-30identity: Create a drm_api wrapperJakob Bornecrantz
2009-06-30drm/st: Return drm_api struct from a functionJakob Bornecrantz
2009-06-30mesa/dlist: shortcircuit some redundant statechanges at compile timeKeith Whitwell
Currently, state-changes in mesa display lists are more or less a verbatim recording of the GL calls made during compilation. This change introduces a minor optimization to recognize and eliminate cases where the application emits redundant state changes, eg: glShadeModel( GL_FLAT ); glBegin( prim ) ... glEnd() glShadeModel( GL_FLAT ); glBegin( prim ) ... glEnd() The big win is when we can eliminate all the statechanges between two primitive blocks and combine them into a single VBO node. This commit implements state-change elimination for Material and ShadeModel only. This is enough to make a start on debugging, etc.
2009-06-29softpipe: use shadow_compare4() to compare texcoord to four texture samplesBrian Paul