summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2010-08-11util: copy the u_staging commit message to the codeMarek Olšák
2010-08-11auxiliary: support for transfers using staging resourcesLuca Barbieri
Direct3D 10/11 has no concept of transfers. Applications instead create resources with a STAGING or DYNAMIC usage, copy between them and the real resource and use Map to map the STAGING/DYNAMIC resource. This util module allows to implement Gallium drivers as a Direct3D driver would be implemented: transfers allocate a resource with PIPE_USAGE_STAGING, and copy the data between it and the real resource with resource_copy_region.
2010-08-11gallium: add ALWAYS_INLINELuca Barbieri
Used when we want to be sure the compiler inlines a large function into an inner loop.
2010-08-11u_surfaces: add util_surfaces_peekLuca Barbieri
Used to find out if a surface exists without creating one.
2010-08-11u_surfaces: use cso_hash instead of util_hash_tableLuca Barbieri
Using cso_hash directly is the right thing since util_hash_table adds useless overhead and is harder to use for this application.
2010-08-11u_surfaces: fix surface leak due to off by oneLuca Barbieri
2010-08-11auxiliary: make primitive splitter assert on unimplemented adjacency primsLuca Barbieri
They are unimplemented, even though the framework makes it possible to implement them well, and nv50 needs them.
2010-08-11auxiliary: fix u_split_prim naming conventionLuca Barbieri
Current practice is to start identifiers with "util_" instead of "u_".
2010-08-11auxiliary: move Ben Skeggs' primitive splitter to common codeLuca Barbieri
This is a simple framework that handles splitting primitives in an abstract way. The user has to specify the primitive start, start index and count. Then, it can ask the primitive splitter to "draw" a chunk of the primitive, staying under a given vertex/index budget. The primitive splitter will then call user-supplied functions to emit a range of vertices/indices, as well as switch the edgeflag on or off. This is particularly useful for hardware that either has limits on the vertex count field, or where vertices are pushed on a FIFO or temporary buffer of limited size. Note that unlike other splitters, it does not manipulate data in any way, and merely asks a callback to do so, in vertex intervals.
2010-08-11r300g: initialize VAP_VTX_STATE_CNTLMarek Olšák
This got lost during the rasterizer rewrite.
2010-08-11r300g: implement gl_FrontFacingMarek Olšák
2010-08-10svga: Remove unnecessary headers.Vinson Lee
2010-08-10r300g: Remove unnecessary header.Vinson Lee
2010-08-10r300/compiler: Implement hardware assisted loops for vertex shaders.Tom Stellard
Single loops work, but nested loops do not.
2010-08-10r600g: avoid reemiting literal, avoid scheduling empty csJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-10util: Add util_format_srgb().José Fonseca
To convert RGB -> SRGB format.
2010-08-10gallivm: fix non-SSE4.1 case in lp_build_pack2()Brian Paul
Since there's no SSE instruction for this case, fall through to the generic shuffle code. Fixes bug fd.o 29468.
2010-08-10gallivm: Fix bitwise operations for floats, division for integersnobled
http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-10gallivm: Even more type checkingnobled
http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-10llvmpipe: Always use floating-point operators for floating-point typesnobled
See: http://bugs.freedesktop.org/29404 http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-09gallivm: More type checks.José Fonseca
2010-08-09gallivm: Don't call LLVMBuildFNeg on llvm-2.6.José Fonseca
It didn't exist yet.
2010-08-09gallivm: Always use floating-point operators for floating-point typesnobled
This fixes the assert added in LLVM 2.8: assert(getType()->isIntOrIntVectorTy() && "Tried to create an integer operation on a non-integer type!") But it also fixes some subtle bugs, since we should've been doing this since LLVM 2.6 anyway. Includes a modified patch from steckdenis@yahoo.fr for the FNeg instructions in emit_fetch(); thanks for pointing those out. http://bugs.freedesktop.org/29404 http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-09util: Move _mm_shuffle_epi8() to u_sse.h.José Fonseca
It's bound to be useful elsewhere.
2010-08-09r600g: fix r600 context structure, avoid segfault when no scissorJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-09r300g: do not print shader compiler errors by defaultMarek Olšák
2010-08-09r600g: fix some warningsMarek Olšák
2010-08-09r600g: fill out some missing caps and sort themMarek Olšák
The shader caps need additional corrections. (based on a patch from netkas at Phoronix)
2010-08-09r300g: fix hiz/zmask offset emissions.Dave Airlie
ofs is in dwords, so need to shift it for registers. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-08-09nouveau: fix maps with PIPE_TRANSFER_UNSYNCHRONIZED | PIPE_TRANSFER_DONTBLOCKLuca Barbieri
In this case, we were incorrectly prioritizing PIPE_TRANSFER_DONTBLOCK over PIPE_TRANSFER_UNSYNCHRONIZED. This can lead to failure in the Mesa VBO draw paths that end up specifying both, but don't expect map to fail (in particular, the problem manifested as a leak of buffer objects in teapot with other changes).
2010-08-08r300g: remove a flushMarek Olšák
Ooops, it wasn't supposed to be there.
2010-08-08gallivm: Fix more integer operations.José Fonseca
2010-08-08gallivm: Use the correct context for integersnobled
See: http://bugs.freedesktop.org/29407
2010-08-08r300g: flush zmasks of zbuffers we are going to use as samplersMarek Olšák
It sometimes works, sometimes not. I guess we have the zmask offsets wrong.
2010-08-08r300g: do not allocate a zmask block for 3D textures and cubemapsMarek Olšák
2010-08-08r300g: generalize the way we ask for hyperzMarek Olšák
This makes it compatible with the modified DRM interface in drm-radeon-testing. Also, now you need to set RADEON_HYPERZ=1 to be able to use hyperz. It's not bug-free yet.
2010-08-08gallivm: Add type checks for the basic operations.José Fonseca
2010-08-08draw: Remove unused variable.José Fonseca
2010-08-08draw: Use the correct type for integersnobled
Two integers were being operated on as a vector of floats in draw_llvm_generate(). This bug got uncovered by fixing this bug: http://bugs.freedesktop.org/29407
2010-08-08r300g: take hiz/zmask offsets into a/c when clearing.Dave Airlie
Need to add a test for multi-hiz/zmask db in a single context. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-08-07r300g: fix cbzb clears when hyperz is offMarek Olšák
2010-08-06nouveau: fix potential NULL-ptr dereference in nouveau_stateobj.hMaarten Maathuis
- This can only be triggered when DEBUG_NOUVEAU_STATEOBJ is active. - Also remove a redundant pointer assignment. Reported-by: Roy Spliet <r.spliet@student.tudelft.nl> Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
2010-08-06r600g: add PA_CL_CLIP_CNTL definitionJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-06r600g: fix rendering, only enable target we write tooJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-06r600g: really fix multi target supportJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-06gallium: remove stray semicolonsBrian Paul
2010-08-06r600g: finish multi target rendering supportJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-06targets/egl: Fix build by including missing headers.Vinson Lee
2010-08-07draw: Add an assertion to varray's version of trim().Chia-I Wu
Assert that "first" is always smaller than "count" and add reasoning. It would be better to simply fix trim(), but it is used in tight loops right now.
2010-08-07draw: Fix draw_pt_split_prim for primitives with adjacency.Chia-I Wu
Some primitives with adjacency have their "incr" wrong.