summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r600g: fix dirty state handlingJerome Glisse2010-10-063-7/+7
| | | | | | Avoid having object ending up in dead list of dirty object. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: avoid segfault due to unintialized list pointerJerome Glisse2010-10-062-7/+9
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* llvmpipe: Fix sprite coord perspective interpolation of Q.José Fonseca2010-10-061-9/+3
| | | | | Q coordinate's coefficients also need to be multiplied by w, otherwise it will have 1/w, causing problems with TXP.
* llvmpipe: Fix perspective interpolation for point sprites.José Fonseca2010-10-061-17/+54
| | | | | | | | | | | Once a fragment is generated with LP_INTERP_PERSPECTIVE set for an input, it will do a divide by w for that input. Therefore it's not OK to treat LP_INTERP_PERSPECTIVE as LP_INTERP_LINEAR or vice-versa, even if the attribute is known to not vary. A better strategy would be to take the primitive in consideration when generating the fragment shader key, and therefore avoid the per-fragment perspective divide.
* llvmpipe: Dump a few missing shader key flags.José Fonseca2010-10-061-0/+7
|
* llvmpipe: make debug_fs_variant respect variant->nr_samplersKeith Whitwell2010-10-061-25/+23
|
* retrace: Handle clear_render_target and clear_depth_stencil.José Fonseca2010-10-061-0/+9
|
* r600g: add evergreen stencil support.Dave Airlie2010-10-062-2/+24
| | | | this sets the stencil up for evergreen properly.
* r600g: userspace fence to avoid kernel call for testing bo busy statusJerome Glisse2010-10-056-47/+103
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: simplify block relocationJerome Glisse2010-10-053-12/+9
| | | | | | | Since flush rework there could be only one relocation per register in a block. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: use dirty list to track dirty blocksBas Nieuwenhuizen2010-10-054-8/+33
| | | | Got a speed up by tracking the dirty blocks in a seperate list instead of looping through all blocks. This version should work with block that get their dirty state disabled again and I added a dirty check during the flush as some blocks were already dirty.
* nv50: fix always true conditional in shader optimizationNicolas Kaiser2010-10-051-1/+1
|
* r600g: improve bo flushingJerome Glisse2010-10-054-822/+825
| | | | | | | | | Flush read cache before writting register. Track flushing inside of a same cs and avoid reflushing same bo if not necessary. Allmost properly force flush if bo rendered too and then use as a texture in same cs (missing pipeline flush dunno if it's needed or not). Signed-off-by: Jerome Glisse <[email protected]>
* r600g: store reloc information in bo structureJerome Glisse2010-10-052-23/+16
| | | | | | | Allow fast lookup of relocation information & id which was a CPU time consumming operation. Signed-off-by: Jerome Glisse <[email protected]>
* pb: fix numDelayed accountingDave Airlie2010-10-051-0/+1
| | | | we weren't decreasing when removing from the list.
* r600g: avoid unneeded bo waitDave Airlie2010-10-051-1/+5
| | | | | | if we know the bo has gone not busy, no need to add another bo wait thanks to Andre (taiu) on irc for pointing this out.
* r600g: drop use_mem_constant.Dave Airlie2010-10-059-14/+3
| | | | since we plan on using dx10 constant buffers everywhere.
* r600g: drop mman allocatorDave Airlie2010-10-053-8/+1
| | | | we don't use this since constant buffers are now being used on all gpus.
* r600g: add bo busy backoff.Dave Airlie2010-10-052-0/+15
| | | | | | When we go to do a lot of bos in one draw like constant bufs we need to avoid bouncing off the busy ioctl, this mitigates by backing off on busy bos for a short amount of times.
* pb: don't keep checking buffers after first busyDave Airlie2010-10-051-13/+19
| | | | | If we assume busy buffers are added to the list in order its unlikely we'd fine one after the first busy one that isn't busy.
* r600g: add bo fenced list.Dave Airlie2010-10-053-0/+43
| | | | | this just keeps a list of bos submitted together, and uses them to decide bo busy state for the whole group.
* r300g: fix microtiling for 16-bits-per-channel formatsMarek Olšák2010-10-051-3/+3
| | | | | | These texture formats (like R16G16B16A16_UNORM) were untested until now because st/mesa doesn't use them. I am testing this with a hacked st/mesa here.
* r600g: Fix SCons build.Vinson Lee2010-10-041-1/+1
|
* r600g: remove dead label & fix indentationJerome Glisse2010-10-041-11/+9
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: rename radeon_ws_bo to r600_boJerome Glisse2010-10-042-1/+1
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: use r600_bo for relocation argument, simplify codeJerome Glisse2010-10-044-19/+29
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: allow r600_bo to be a sub allocation of a big boJerome Glisse2010-10-046-28/+37
| | | | | | | Add bo offset everywhere needed if r600_bo is ever a sub bo of a bigger bo. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: rename radeon_ws_bo to r600_boJerome Glisse2010-10-0412-86/+86
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* nvfx: Pair os_malloc_aligned() with os_free_aligned().Krzysztof Smiechowicz2010-10-041-1/+1
| | | | From AROS.
* r600g: TODO domain managementDave Airlie2010-10-041-2/+2
| | | | | no wonder it was slow, the code is deliberately forcing stuff into GTT, we used to have domain management but it seems to have disappeared.
* r600g: fix wwarning in bo_map functionDave Airlie2010-10-041-0/+1
|
* r600g: the code to check whether a new vertex shader is needed was wrongDave Airlie2010-10-041-1/+3
| | | | | | | this code was memcmp'ing two structs, but refcounting one of them afterwards, so any subsequent memcmp was never going to work. again this stops unnecessary uploads of vertex program,
* r600g: break out of search for reloc bo after finding it.Dave Airlie2010-10-041-0/+1
| | | | this function was taking quite a lot of pointless CPU.
* r300g: add support for L8A8 colorbuffersMarek Olšák2010-10-021-0/+3
| | | | | Blending with DST_ALPHA is undefined. SRC_ALPHA works, though. I bet some other formats have similar limitations too.
* r300g: add support for R8G8 colorbuffersMarek Olšák2010-10-021-1/+11
| | | | | | | | The hw swizzles have been obtained by a brute force approach, and only C0 and C2 are stored in UV88, the other channels are ignored. R16G16 is going to be a lot trickier.
* r600g: Remove unnecessary headers.Vinson Lee2010-10-012-3/+0
|
* r600g: Remove unused variable.Vinson Lee2010-10-011-1/+1
| | | | | | Fixes this GCC warning. r600_shader.c: In function 'tgsi_split_literal_constant': r600_shader.c:818: warning: unused variable 'index'
* i965g: use Elements macro instead of manual sizeofsNicolas Kaiser2010-10-011-13/+7
| | | | | Signed-off-by: Nicolas Kaiser <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* r600g: indentation fixesJerome Glisse2010-10-015-58/+57
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: setup basic loop consts on r600 + evergreen.Dave Airlie2010-10-016-0/+61
| | | | this sets up a single loop constant like r600c does.
* r600g: only set the Z export if shader exports it.Dave Airlie2010-10-012-8/+10
|
* r600g: flush SH cache on constant change on evergreenDave Airlie2010-10-011-2/+2
|
* r600g: fix evergreen draw-buffersDave Airlie2010-10-012-2/+2
| | | | just a typo in the register headers.
* r600g: add cb flushing for extra buffers + depth buffer on r600/evergreenDave Airlie2010-10-013-6/+49
|
* r600g: sync vertex/texture cache on resources on evergreenDave Airlie2010-10-011-2/+2
| | | | | this gets rid of lots of the instability on evergreen, which isn't surprising since it really broken not to flush caches.
* r600g: fixup vertex format picking.Dave Airlie2010-10-016-144/+407
| | | | there are some vertex formats defined in r600c not in the docs.
* r600g: add assembler support for other vtx fetch fields.Dave Airlie2010-10-013-1/+11
| | | | | this shouldn't change behaviour, just push the choice of what to do out to the shader.
* r600g: realign evergreen code with r600 code.Dave Airlie2010-10-011-3/+4
| | | | fixes segfault in depth-tex-modes-glsl and OA startup.
* r600g: add reloc for evergreen color attribDave Airlie2010-10-012-13/+13
| | | | we'll need this for color tiling on evergreen.
* r600g: drop depth quirk on evergreenDave Airlie2010-10-011-15/+0
| | | | none of the EG cards need the quirk.