summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-03-23r300: report correct state atom sizeHEADmasterMaciej Cencora1-2/+2
Spotted by Pauli Nieminen
2010-03-23r300: fix off by oneMaciej Cencora1-1/+1
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-23r300: fix vertex programs with big number of params (>255) under KMSMaciej Cencora2-7/+39
UMS will probably require some kernel work
2010-03-23r300: fix wpos/fog handlingMaciej Cencora1-6/+16
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-23r300: clean fog_attr/wpos_attr if code accessing these attributes has been ↵Maciej Cencora1-0/+13
removed FP during compilation
2010-03-23nvfx: add NOUVEAU_VTXIDX_IN_VRAM variable to put vertex/index buffers in VRAMLuca Barbieri3-1/+33
On some systems, putting vertex and index buffers in VRAM instead of GART memory eliminates massive graphics corruption which is otherwise present, due to unclear causes. This patch adds an environment variable that does that, along with helpful messages. It turns it on by default on G7x, as it is what I am seeing corruption on and some other reports also seemed to pinpoint these cards.
2010-03-23nvfx: delay allocation of buffers in GART/VRAM to validation timeLuca Barbieri2-5/+3
Currently we allocate buffers in GART or VRAM at creation time. However, when using swtnl, this results in reads from uncached memory, which drastically impair performance. So, for now, cause nouveau_screen.c to not pass any placement flags to buffer creation, so that the buffers are moved later. Previously libdrm itself did this, but was changed to not to do it. This may introduce an extra copy in normal usage, but this currently does not seem to introduce significant performance degradation. This will be revisited when pipebuffer is integrated. Note that for AGP systems, properly solving this may be complex since currently there is no fast way of reading from GART/VRAM. We will probably need to try mapping AGP as writethrough and, in addition, make buffer creation more aware of future buffer usage.
2010-03-23st/mesa: make st_manager.c set have[Stencil|Depth]Buffer only if bits > 0Luca Barbieri1-3/+3
Fixes a segfault when clearing a non-existent stencil buffer.
2010-03-23dri: use mv -f instead of mv to ensure no prompting occursLuca Barbieri2-2/+2
Using just mv may cause prompts on some systems/configurations.
2010-03-23Merge branch '7.8'Brian Paul4-189/+230
Conflicts: Makefile src/gallium/state_trackers/glx/xlib/xm_api.c src/mesa/drivers/dri/intel/intel_blit.c src/mesa/drivers/dri/intel/intel_pixel_copy.c src/mesa/main/version.h
2010-03-23softpipe: comments, re-formatting, etcBrian Paul1-14/+24
2010-03-23softpipe: add special cases for all Z compare modes for 16-bit Z bufferBrian Paul2-173/+195
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-23st/glx: better format selection in xmesa_choose_z_stencil_format()Brian Paul1-17/+24
This is a back-port of commit ef2664da6c4db1b52ef351641e3ee949b87f9c7b from master.
2010-03-23nvfx: don't crash on empty fragment programLuca Barbieri1-1/+2
2010-03-23nvfx: fix coding style in nvfx_transfer.cLuca Barbieri1-8/+8
2010-03-23nvfx: stop incessantly spewing debug messages on the terminalLuca Barbieri2-3/+8
Currently we are continuously spewing messages about these variables since we call debug_get_bool_option everytime we want to check their value. This is annoying, slows things down due to terminal rerendering and obscures useful messages. This patch only calls debug_get_bool_option once and caches the result in a static variable.
2010-03-23nvfx: fix/workaround nv3x hwtnl issuesLuca Barbieri1-5/+6
This patch re-emits the viewport state on framebuffer or rasterizer change. This seems to be necessary on nv3x, but the reason is not fully understood. It is quite likely that this isn't really the correct fix, but seems to work, and makes nv3x much better.
2010-03-23dri: test whether the built drivers have unresolved symbolsLuca Barbieri3-4/+20
This is a different approach to solving this problem that the patch I previously posted, and unlike that, should not cause any problems. Right now undefined symbols in DRI drivers will still allow the build to succeed. As a result, people modifying drivers they cannot test risk creating unloadable drivers with no easy way of automatically avoiding it. For instance, the modifications to nv50 for context transfers caused such an issue recently. Unfortunately, just adding -Wl,--no-undefined doesn't work, because the DRI drivers depend on glapi symbols, but do not depend on libGL.so.1 Adding -lGL is not the correct solution since DRI drivers are not loaded just by libGL, but also by X and possibly by other clients. So, this patch simply tries to build an executable linked to the DRI driver and to libGL. If the DRI driver contains any undefined symbols not satisfied by its dependencies or by libGL, this will fail. This solution does not alter the built drivers, and does not significantly slow down the build process. All classic DRI drivers as well as all the Gallium drivers with configure options compiled successfully with this change. Thanks to Xavier Chantry <chantry.xavier@gmail.com> and Michel Daenzer <michel@daenzer.net> for helping with this. Signed-off-by: Luca Barbieri <luca@luca-barbieri.com> Acked-by: Brian Paul <brian.e.paul@gmail.com>
2010-03-23radeong: fix build issue with libdrm < 2.4.19Marek Olšák2-0/+6
2010-03-23r300g: fix glean occlusion query testDave Airlie1-0/+2
2010-03-23Add missing EGL files to the tarballs.Chia-I Wu1-0/+9
Add the Makefile of Gallium EGL drivers and demos using EGL to the tarballs.
2010-03-22glx: Suppress BadDrawable from DRI2CopyRegionKristian Høgsberg1-1/+14
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-22glx: Suppress BadDrawable from DRI2CopyRegionKristian Høgsberg1-1/+14
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-22gallium/docs: Cleanup and clarify point ras info.Corbin Simpson1-32/+44
...This state's interdependent? Really? Needs moar cleanup.
2010-03-22radeong: Always initialize this variable.Corbin Simpson1-2/+2
May or may not be responsible for slight increases in ipers FPS.
2010-03-22r300g: Cleanup a few old warnings.Corbin Simpson1-24/+9
Those paths aren't important anymore, and a debugging warning won't stop a hardlock anyway.
2010-03-22mesa: set version string to 7.8-rc2Ian Romanick2-2/+2
2010-03-22GLX/OML: honor OML semantics even if target, divisor and remainder are 0Jesse Barnes1-0/+3
This change passes a remainder of 1 to the server with the DRI2SwapBuffers request, causing it to honor the OML semantics for the swap rather than falling through to glXSwapBuffers behavior. The remainder actually ends up ignored since the divisor is 0, but we need to differentiate the OML and standard behavior somehow. Reported-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-03-22i965: Add disasm for SNB MATH opcode.Eric Anholt1-1/+6
2010-03-22i965: Enable normal clipping on SNB.Eric Anholt1-1/+1
Rejecting all doesn't seem to be helping get the pipeline lit up.
2010-03-22i965: Force single program flow in SNB GS, to match gen4 GS.Eric Anholt1-1/+2
2010-03-22i965: Correct copy and wasted field shifts for SNB GS URB.Eric Anholt1-2/+2
2010-03-22i965: Enable VS on SNB.Eric Anholt1-1/+2
It appears that the thing that was killing VS threads was the gratuitous NOP that replaced the gratuitous jump from OPCODE_END to the nearby OPCODE_END implementation. With that gone, we can move on to the rest of the pipeline.
2010-03-22i965: Remove gratuitous jump or nop from OPCODE_END to vertex emit.Eric Anholt1-40/+3
Just emit the URB write at END time. Subroutine code that sits after OPCODE_END won't be executed since we've ended the thread at the point that the URB write is done.
2010-03-22i965: Ignore execution mask for the mov(m0, g0) of VS URB write header on SNB.Eric Anholt1-0/+3
Otherwise, we may not get the FFTID set up which would break freeing of resources.
2010-03-22i965: Allow FS constants to be used as immediates instead of push/pull.Eric Anholt3-7/+58
The hope is to later take advantage of the reduced constant usage to free up regs. This only covers the GLSL path at the moment, because the brw_wm_emit path doesn't get the information as to whether a float value is a constant or a uniform.
2010-03-22i965: Add INTEL_DEBUG=glsl_force to force brw_wm_glsl.c.Eric Anholt3-0/+5
I keep finding the desire to force this path to debug it instead of cooking up goofy-looking testcases to do so.
2010-03-22i965: Optimize OPCODE_CMP by using BRW_SEL to choose results.Eric Anholt1-5/+1
Tested with piglit glsl-fs-sqrt-branch, fp-cmp.vpfp.
2010-03-22st/glx: fix depth/stencil format selection codeBrian Paul1-7/+12
This fixes a pretty big performance regression caused by commit 3475e88442c16fb2b50b903fe246b3ebe49da226. When the user does not request a stencil buffer it's important that we don't use a depth/stencil format (or at least make it our last choice). If the user calls glClear(GL_DEPTH_BUFFER_BIT) when we have a combined depth/stencil buffer, that causes us to hit the clear_with_quad() path which can be much, much slower than calling pipe_context::clear(). Also, try to use a shallower depth format before a deeper one.
2010-03-22st/mesa: rename st_framebuffer() to st_ws_framebuffer()Brian Paul1-9/+12
Be clear that this function is not just a cast wrapper.
2010-03-22intel: Call intel_prepare_render() before looking up regions.Kristian Høgsberg3-6/+9
Fixes #27213.
2010-03-22intel: Call intel_prepare_render() before looking up regions.Kristian Høgsberg3-6/+9
Fixes #27213.
2010-03-22st/mesa: Remove unnecessary headers.Vinson Lee2-3/+0
2010-03-22glslcompiler: fix build againBrian Paul1-7/+2
Simply use the libglapi.a archive instead of individual .o files. Fixes the non-debug build.
2010-03-22cso: Remove unnecessary header.Vinson Lee1-1/+0
2010-03-22Fix potential compilation issue in visual studio project fileKarl Schultz1-2/+2
Add quotes around filespec in post-build event to allow paths with embedded spaces.
2010-03-22dri/nouveau: Rectangle texture fixes.Francisco Jerez2-28/+46
2010-03-22dri/nouveau: Some render to texture fixes.Francisco Jerez1-5/+1
2010-03-22dri/nouveau: Fix swrast fallbacks when the read and draw buffers aren't the ↵Francisco Jerez1-10/+20
same.
2010-03-22dri/nouveau: Expose EXT_framebuffer_blit.Francisco Jerez2-0/+2