summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-09-12Potential fix for doom3 lockups. Seems that there is a conflictKeith Whitwell
between the vertex cache, the vertex shader and the clipping stages, all of which are competitors for URB entries assigned to the VS unit. This change reduces the maximum number of clip and VS threads by enough to ensure that they cannot consume all the available URB entries, and then reduces the number somewhat more up to an arbitary amount I discovered by trial and error. Unfortunately trial and error solutions don't inspire total confidence...
2006-09-12Disassemble active program when DEBUG_VS is set.Keith Whitwell
2006-09-12Add code to tweak aubfile state and primitives on replay.Keith Whitwell
2006-09-12Encode a unique id in the aub header date fields.Keith Whitwell
2006-09-11Win32 fixes (SF bug 1554931)Brian Paul
2006-09-11undo some accidental changes in _mesa_is_legal_format_and_type()Brian Paul
2006-09-11init accum buffer fields in _mesa_update_framebuffer_visual()Brian Paul
2006-09-10remove code to deal with non-normalized texture coordinates for tex rect ↵Roland Scheidegger
targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles).
2006-09-10Redefine the BYTE_TO_FLOAT() and SHORT_TO_FLOAT() macros to avoid problemsBrian Paul
converting 0 to exactly 0.0 This goes against the OpenGL spec (see table 2.6) but solves problems when doing byte -> float -> ubyte conversion for particular texture formats.
2006-09-10don't use xmesa_DrawPixels_8R8G8B() if there's a software alpha channelBrian Paul
2006-09-10cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv ↵Roland Scheidegger
conversion appears only to work on first unit.
2006-09-08Basic facility for playing back captured aubfiles. Requires a smallKeith Whitwell
hack to the drm to disable command verification on the cmd_buffer ioctl. Doesn't exactly replay as commands are normally delivered as batchbuffers but are captured and replayed as commands on the ring.
2006-09-08cause a vtxfmt fallback directly when hitting NewList for radeon and r200 ↵Roland Scheidegger
drivers, otherwise we'll mix up tcl and vtxfmt path for some reason. This fixes a warzone2100 asssertion failure.
2006-09-07Consistent return values from the bm* functions.Keith Whitwell
Get aubfile generation working again.
2006-09-07Cope with memory pool fragmentation by allowing a second attempt atKeith Whitwell
rendering operations to take place after evicting all resident buffers. Cope better with memory allocation failures throughout the driver and improve tracking of failures.
2006-09-07Add some asserts, fix some not-quite-bugs.Keith Whitwell
2006-09-07Fix glitch with pool alignments.Keith Whitwell
2006-09-07Use lower alignments where possible. Also pad out allocated blocks toKeith Whitwell
a multiple of alignment to avoid accumulating unusable free blocks.
2006-09-07Make sure bmBufferOffset is called for all active buffers every timeKeith Whitwell
we render. Currenly requires that some state be re-examined after every LOCK_HARDWARE().
2006-09-07make really sure R200_VAP_PROG_VTX_SHADER_ENABLE is never set when we're ↵Roland Scheidegger
already in a tcl fallback, otherwise the chip will instantly lock up when vertex progs are enabled the next time not in a tcl fallback (fixes for instance guaranteed lockup running any program which uses vertex progs with tcl_mode=0 and then later with tcl_mode=1).
2006-09-07only allow VERT_ATTRIB_MAX instead of _TNL_ATTRIB_MAX for inputs of vertex ↵Roland Scheidegger
programs (fixes a segfault since the result of the shift is undefined otherwise, and it may happen that _TNL_ATTRIB_POINTSIZE will be tried to read, unlike all other attribs this however may be unitialized (might be a bug in itself)).
2006-09-07Fix a leak of the screen's option cache on cleanup (copied from radeon).Eric Anholt
2006-09-06Simplify the immediate and displaylist code. Treat VertexAttrib*ARBKeith Whitwell
as non-aliasing and cope with the >32 attributes that result, taking materials into account.
2006-09-06remove stray tabBrian Paul
2006-09-06for VERTEX_ATTRIB_WEIGHT, use break, not returnBrian Paul
2006-09-05Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced inBrian Paul
vertex program, even though it's not really supported. Results will be undefined, but Warcraft doesn't actually use the attribute.
2006-09-05fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/Brian Paul
2006-09-05Consolidate common case of _mesa_set_program_error() followed by _mesa_error()Brian Paul
in new program_error() function. Add const qualifiers in many places. Reorder some debug code to prevent referencing free'd memory.
2006-09-05Dynamically allocate instruction store for tnl programs according toKeith Whitwell
requirements.
2006-09-04Fixes for calculating point attenuationKeith Whitwell
2006-09-04Don't export NV_vertex_program as it's not supported, it confusesKeith Whitwell
glean, and we no longer need to export it to keep Mesa happy as we did at one time.
2006-09-04Managed to make a commit that can't build... Sorry again...Rune Petersen
2006-09-04get rid of GL_BOOLEAN definition (bug 8113)Brian Paul
2006-09-04fog state atom contains (only) fog params necessary for tcl. Must not be ↵Roland Scheidegger
emitted if vertex progs are enabled as it overlaps vertex param #94.
2006-09-03add missing change to skip low impact RAST fallback...Rune Petersen
Sorry.
2006-09-01fix the presumably broken check for the allow_large_textures and vblank_mode ↵Roland Scheidegger
options (same as bug 8042).
2006-09-01make sure vertex programs are only enabled on the hw when they are really ↵Roland Scheidegger
enabled, not just when a program enables vertex progs (could still be not enabled due to some error). Otherwise the hw potentially would try to execute a not valid (not set up at all) vertex program, likely leading to lockups. Hopefully fixes #8060.
2006-09-01Catch a few more cases of using a message reg as an instruction sourceKeith Whitwell
arg.
2006-09-01fix a couple of cases where a message reg is used as an instruction source.Keith Whitwell
2006-08-31Add API description for GLX_SGI_swap_control.Ian Romanick
2006-08-31Fix problems with vertex program protocolIan Romanick
There were two sets of bugs in the vertex program (ARB and NV) protocol. First, several of the ARB functions were missing the 'doubles_in_order="true"' annotation. Second, after the ARB decided that glVertexAttrib*ARB functions must not alias fixed-function state for GLSL, Nvidia re-assigned GLX protocol opcodes for glVertexAttrib*NV (circa Septeber 2004). For some reason gl_API.xml was never updated to reflect this, and the updated version of the GL_NV_vertex_program spec never made into the registry.
2006-08-31re-apply shader fix.Rune Petersen
appears to have been reverted by mistake.
2006-08-31When using the old technique to set up the front buffer mapping, thereKeith Whitwell
is no need to add front.offset to sPriv->pFB, it seems. Fixes several glean issues and frontbuffer rendering generally.
2006-08-31Give the user posibility to choose speed over correctness.Rune Petersen
It does 2 things: 1) Allows you to disable S3TC, wine-games sometimes need S3TC enabled. 2) Disable fallbacks that usually have low impact.
2006-08-31check if ext->name is null before strcmp()Brian Paul
2006-08-31do not abort with not supported vertex prog output configuration, fallback ↵Roland Scheidegger
instead
2006-08-30Handle API and dispatch table changes that removed a bunch of extension ↵Karl Schultz
entry points.
2006-08-30Check that we don't try to reference more than one target of a texture unit.Brian Paul
For example, referencing both "texture[0], 2D" and "texture[0], CUBE" in one program is an error.
2006-08-30s/0/VERT_RESULT_HPOS/Brian Paul
2006-08-30Add missing parenthesis so that glXSwapIntervalSGI protocol isIan Romanick
correctly generated.