summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* softpipe: fastpath for interpolated z16 less depthtestingKeith Whitwell2009-07-271-4/+139
| | | | | | | Because this is interpolated (ie. early) depth, we can build in an assumption about the quads emitted by triangle setup, ie that they are actually linear spans. Interpolate z over those spans in z16 format to save on math & conversion.
* softpipe: cope with nr_cbufs == 0Keith Whitwell2009-07-271-3/+13
| | | | Disable blend code when no color buffer
* softpipe: move all depth/stencil/alpha pixel processing into one stageKeith Whitwell2009-07-2713-957/+580
|
* softpipe: fix error in scissor state dependenciesKeith Whitwell2009-07-251-2/+10
|
* softpipe: cleanup framebuffer state routine slightlyKeith Whitwell2009-07-251-40/+10
|
* softpipe: move all color-combine code into sp_quad_blend.cKeith Whitwell2009-07-2410-972/+727
| | | | | Consolidate the read-modify-write color combining code from the blend, colormask and output stages.
* softpipe: fix typoKeith Whitwell2009-07-241-1/+1
|
* softpipe: example fastpaths in blendingKeith Whitwell2009-07-241-11/+121
|
* softpipe: actually pass >1 quad from triangle routineKeith Whitwell2009-07-248-139/+135
| | | | First attempt
* softpipe: expand quad pipeline to process >1 quad at a timeKeith Whitwell2009-07-2414-633/+745
| | | | | | This is part one -- we still only pass a single quad down, but the code can now cope with more. The quads must all be from the same tile.
* softpipe: rip out old mulithread supportKeith Whitwell2009-07-244-305/+57
|
* softpipe: avoid flushing depth buffer cache on swapbuffersKeith Whitwell2009-07-232-9/+16
| | | | | | | | | There's no need to push out depth buffer contents on swapbuffers. Note that this change doesn't throw away depth buffer changes, it simply holds them in the cache over calls to swapbuffers. The hope is that swapbuffers will be followed by a clear() which means in that case we won't have to write the changes out.
* softpipe: also shortcircuit non-texture tile lookupsKeith Whitwell2009-07-232-18/+31
|
* softpipe: shortcircuit repeated lookups of the same tileKeith Whitwell2009-07-224-97/+168
| | | | | | | | | The sp_tile_cache is often called repeatedly to look up the same tile. Add a cache (to the cache) of the single tile most recently retreived and make a quick inline check to see if this matches the subsequent request. Add a tile_address bitfield struct to make this check easier.
* softpipe: remove unused vars in sp_setup.cKeith Whitwell2009-07-221-5/+0
|
* softpipe: use bitwise logic to setup quad masks in sp_setupKeith Whitwell2009-07-221-25/+40
|
* softpipe: simplify flush_spansKeith Whitwell2009-07-221-53/+19
| | | | No loss of performance, but simpler code.
* softpipe: make some small steps to flush texture cache less frequentlyKeith Whitwell2009-07-226-35/+70
| | | | No performance gain yet, but the code is a bit cleaner.
* gallium/xlib: use XSHM for swapbuffersKeith Whitwell2009-07-221-45/+53
| | | | Makes some difference, but suprisingly little. Barely worth the effort.
* util: _debug_printf should print even when DEBUG is not definedKeith Whitwell2009-07-221-2/+0
| | | | | | | | | | The leading underscore is meaningful... This function is used by _warning and _error functions as well as the more common debug_printf(). debug_printf (without underscore) gets turned off when DEBUG is disabled, but warning/error messages still use this function to get their message out.
* softpipe: remove backwards dependency from tilecache to softpipeKeith Whitwell2009-07-2214-65/+62
| | | | | | | | The tile cache is a utility, it shouldn't know anything about the entity which is making use of it (ie softpipe). Remove softpipe parameter to all the tilecache function calls, and also remove the need to keep a softpipe pointer in the sampler structs.
* gallium: remove multiple aliases for TGSI opcodesKeith Whitwell2009-07-227-210/+194
| | | | | | | | | | | | | | | | | This is a source of ongoing confusion. TGSI has multiple names for opcodes where the same semantics originate in multiple shader APIs. For instance, TGSI includes both Mesa/GLSL and DX/SM30 names for opcodes with the same semantics, but aliases those names to the same underlying opcode number. This makes it very difficult to visually inspect two sets of opcodes (eg in state tracker & driver) and check if they implement the same functionality. This patch arbitarily rips out the versions of the opcodes not currently favoured by the mesa state tracker and leaves us with a single name for each distinct operation.
* gallium: simplify tgsi_full_immediate structKeith Whitwell2009-07-2226-77/+84
| | | | | | | | | | | | | Remove the need to have a pointer in this struct by just including the immediate data inline. Having a pointer in the struct introduces complications like needing to alloc/free the data pointed to, uncertainty about who owns the data, etc. There doesn't seem to be a need for it, and it is unlikely to make much difference plus or minus to performance. Added some asserts as we now will trip up on immediates with more than four elements. There were actually already quite a few such asserts, but the >4 case could be used in the future to specify indexable immediate ranges, such as lookup tables.
* r600: fix dst reg indexing for realRichard Li2009-07-211-5/+5
| | | | This fixes segfaults in apps like teapot and tunnel
* Revert "r600: fix dst reg indexing"Alex Deucher2009-07-211-9/+2
| | | | | | This reverts commit cc893d9a98255d3c26df7123ba5cc02e478c9328. Richard has the proper fix.
* r600: add stencil supportAlex Deucher2009-07-211-15/+146
|
* r600: use state functions to set default stateAlex Deucher2009-07-211-33/+59
|
* r600: fill in point functionsAlex Deucher2009-07-211-8/+45
|
* r600: set provoking vertex to last vertex for OGLAlex Deucher2009-07-211-0/+3
|
* r600: fill in r700UpdateViewportOffsetAlex Deucher2009-07-211-3/+14
|
* r600: first pass at polyoffset supportAlex Deucher2009-07-211-13/+106
| | | | not working yet
* radeon: fix colorbuffer pitch emission regarding tiling in KMS/CS caseJerome Glisse2009-07-211-2/+2
| | | | | We need to emit a relocation for pitch register so that kernel can check and properly setup tiling on the color buffer.
* R600: fix up some build problemsAlex Deucher2009-07-212-89/+1
|
* r600: add alpha test supportAlex Deucher2009-07-213-5/+54
|
* Track Radeon driver symlinks in Git.Michel Dänzer2009-07-2198-167/+96
|
* Add missing X11_INCLUDES to egl/drivers/demo and egl/main.Peter Hutterer2009-07-212-2/+2
| | | | | | | | | Compiling mesa on a system with no X headers installed in the default include paths fails due to missing X11 includes. The header includes are picked up by configure but not applied. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
* i965: Don't clip everything if FRONT_AND_BACK culling while culling disabled.Eric Anholt2009-07-201-1/+2
| | | | | | Fixes everything-black with meta_clear_tris on quake4-mpdemo and doom3-demo. Bug #18844, 22077.
* r600: fix typo in blend codeAlex Deucher2009-07-201-1/+1
|
* r600: fix dst reg indexingKevin DeKorte2009-07-201-2/+9
| | | | This fixes segfaults in apps like teapot and tunnel
* r600: add blending supportAlex Deucher2009-07-201-13/+197
|
* r600: add user clip plane supportAlex Deucher2009-07-203-2/+56
|
* r600: add logicop supportAlex Deucher2009-07-201-2/+41
|
* tgsi: get texturing working in vertex shader sse2 pathKeith Whitwell2009-07-201-0/+4
| | | | Missing file from previous commit.
* Merge branch 'mesa_7_5_branch'Michel Dänzer2009-07-201-2/+2
|\
| * radeon: With DRI1, if we have HW stencil, only expose fbconfigs with stencil.Michel Dänzer2009-07-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise simple apps like glxgears pick up a DirectColor visual since the X server mixes the depth 32 visual in with the other GLX visuals, and this seems to result in a (mostly) black screen due to a bad ColorMap for a lot of people. The bad ColorMap may be a bug in the apps, the X server or X driver, and regardless of that I think the X server should ideally make the depth 32 GLX visual separate from the rest again, but in the meantime this makes us cope. (depth_bits is either 16 or 24, never 0)
* | tgsi: get texturing working in vertex shader sse2 pathKeith Whitwell2009-07-201-6/+6
| |
* | tgsi: fix regression in indexed const lookupsKeith Whitwell2009-07-201-2/+4
| | | | | | | | | | | | | | | | | | | | | | This function was calling get_input_base() and get_output_base() to get the names of a couple of register to use as temps. Those functions no longer return registers, so adjust it to get the registers elsewhere. This change doesn't address the issue that it's a fairly poor way to grab a register name by calling a function with an apparently unrelated meaning.
* | r600: Fix compilationKevin DeKorte2009-07-201-3/+3
| |
* | R6xx/r7xx: Fix line stipple and width issueCooper Yuan2009-07-201-0/+34
| |
* | Add common_ppc.c to MESA_GALLIUM_SOURCES.Michel Dänzer2009-07-201-0/+1
| |