summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r300g: do not wait for a busy BO if neither GPU nor CPU is changing itMarek Olšák2011-04-034-12/+75
| | | | | Improves frame rate in apps with at least one user vertex buffer and a hw index buffer.
* r300g: remove unused RADEON_PB_USAGE_CACHEMarek Olšák2011-04-032-6/+0
|
* r300g: tell the GLSL compiler to lower the continue opcodeMarek Olšák2011-04-031-2/+2
| | | | NOTE: This is a candidate for the stable branches.
* r300g: avoid mapping the same buffer twiceMarek Olšák2011-04-031-0/+5
| | | | Shouldn't happen, but you never know.
* r300g: handle DISCARD_WHOLE_RESOURCE for buffersMarek Olšák2011-04-031-10/+25
|
* r300g: remove the redundant reference counter in radeon_boMarek Olšák2011-04-033-36/+21
| | | | We already have pb_buffer::reference::count.
* tests: Use elts in translate_test.José Fonseca2011-04-011-8/+14
|
* scons: Add aliases for unit tests.José Fonseca2011-04-011-4/+4
|
* translate: Respect translate_buffer::max_index.José Fonseca2011-04-013-2/+28
|
* draw: Prevent out-of-bounds vertex buffer access.José Fonseca2011-04-0111-7/+157
| | | | Based on some code and ideas from Keith Whitwell.
* gallium: set PIPE_CAP_MIXED_COLORBUFFER_FORMATS in some driversMarek Olšák2011-04-018-0/+11
|
* gallium: add a CAP for mixed colorbuffer format supportMarek Olšák2011-04-011-0/+1
| | | | | Some GPUs can't do it (I think most of DX9 ones), so they should have the option not to allow it.
* nv50: fix for GPR allocation granularity being 16 bitChristoph Bumiller2011-03-311-3/+9
|
* nv50: copy regalloc fixes from nvc0Christoph Bumiller2011-03-312-80/+216
| | | | | | | Should fix gnome-shell's fade shader. Unification of the shader backend which is supposed to remove the code duplication is still WIP.
* draw: Revert code reorg in previous change.José Fonseca2011-03-311-4/+4
| | | | | | | | | | Because fetch_count = max_index - min_index + 1 overflows for min_index = 0 and max_index = 0xffffffff. Fixes fdo 35815.
* draw: implement vertex color clamping, and disable SSE and PPC pathsLuca Barbieri2011-03-314-9/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (some little changes by Marek Olšák) Squashed commit of the following: commit 737c0c6b7d591ac0fc969a7590e1691eeef0ce5e Author: Luca Barbieri <[email protected]> Date: Fri Aug 27 02:13:57 2010 +0200 draw: disable SSE and PPC paths (use LLVM instead) These paths don't support vertex clamping, and are anyway obsoleted by LLVM. If you want to re-enable them, add vertex clamping and test that it works with the ARB_color_buffer_float piglit tests. commit fed3486a7ca0683b403913604a26ee49a3ef48c7 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:27:38 2010 +0200 draw_llvm: respect vertex color clamp commit ef0efe9f3d1d0f9b40ebab78940491d2154277a9 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:26:43 2010 +0200 draw: respect vertex clamping in interpreter path
* gallium: list use inline function to avoid macro shot comingJerome Glisse2011-03-301-43/+67
| | | | | | | | | | | | | | | | | | | Macro can lead to hard to debug list bugs. For instance consider the following : LIST_ADD(item, list->prev) 3 instruction of the macro became : (list->prev)->next->prev = item which is equivalent to : list->prev = item Thus list prev field changes and next instruction in the macro (list->prev)->next = item became : item->next = item And you endup with list corruption, other case lead to similar list corruption. Inline function are not affected by this short coming Signed-off-by: Jerome Glisse <[email protected]>
* draw: Forgot to remove one istart usage.José Fonseca2011-03-301-1/+1
|
* draw: Fix bug when drawing ushort indices.José Fonseca2011-03-301-6/+8
| | | | | | | | | | When the condition min_index == 0 && sizeof(ib[0]) == sizeof(draw_elts[0]) was true, we were wrongly ignoring istart and processing indices 0. Reorder some statements to make the code easier to understand.
* gallium: Use explicit values in caps enums.Michel Dänzer2011-03-301-63/+63
| | | | Simplifies mapping between numbers and identifiers for these.
* nv50,nvc0: implement colour clamping controlsChristoph Bumiller2011-03-2912-11/+59
|
* r600g: implement texture barrierFredrik Höglund2011-03-295-0/+29
|
* r600g: implement the pipe_screen fence functionsFredrik Höglund2011-03-294-0/+197
| | | | | | v2: Allocate the fences from a single shared buffer object. v3: Allocate the r600_fence structs in blocks of 16. Spin a few times before calling sched_yield in r600_fence_finish().
* r300g: add support for all render targets with one and two channelsMarek Olšák2011-03-291-30/+130
| | | | | | | | | | | | | | | The hardware should be set according to this table: FORMAT -> R300 COLORFORMAT ------------------------- X16 -> UV88 X16Y16 -> ARGB8888 X32 -> ARGB8888 X32Y32 -> ARGB16161616 US_OUT_FMT must contain the real format. I wasn't able to make B3G3R2 and L4A4 work, but those aren't important.
* r300g: finish up signed normalized textures and render targetsMarek Olšák2011-03-292-28/+46
|
* r300g: enable clamping controlsMarek Olšák2011-03-294-6/+14
|
* gallium: remove PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROLMarek Olšák2011-03-291-1/+0
| | | | | | | | | | | | | | The vertex color clamp control is a property of an API, a lot like gl_rasterization_rules. The state should be set according to the API being implemented, for example: OpenGL Compatibility: enabled by default OpenGL Core: disabled by default D3D11: always disabled This patch also changes the way ARB_color_buffer_float is advertised. If no SNORM or FLOAT render target is supported, fragment color clamping is not required.
* gallium: add EXT_texture_snorm supportMarek Olšák2011-03-292-0/+17
|
* gallium: implement clamping controls (ARB_color_buffer_float)Luca Barbieri2011-03-293-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTW this changes the gallium interface. Some rather cosmetic changes by Marek. Squashed commit of the following: commit 513b37d484f0318311e84bb86ed4c93cdff71f13 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:17:54 2010 +0200 mesa/st: respect fragment clamping in st_DrawPixels commit 546a31e42cad459d7a7a10ebf77fc5ffcf89e9b8 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:17:28 2010 +0200 mesa/st: support fragment and vertex color clamping commit c406514a1fbee6891da4cf9ac3eebe4e4407ec13 Author: Luca Barbieri <[email protected]> Date: Tue Aug 24 21:56:37 2010 +0200 mesa/st: expose ARB_color_buffer_float if unclamping is supported commit d0c5ea11b6f75f3da2f4ca989115f150ebc7cf8d Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 17:53:41 2010 +0200 mesa/st: use unclamped colors This assumes that Gallium is to be interpreted as given drivers the responsibility to clamp these colors if necessary. commit aef5c3c6be6edd076e955e37c80905bc447f8a82 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:12:34 2010 +0200 mesa, mesa/st: handle read color clamping properly We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where the operation mandates it. (see the removed XXX comment. -Marek) TODO: did I get the set of operations mandating it right? commit 76bdfcfe3ff4145a1818e6cb6e227b730a5f12d8 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:18:25 2010 +0200 gallium: add color clamping to the interface
* gallivm: Fix build with llvm-2.9.Vinson Lee2011-03-281-2/+2
| | | | | The build fix of commit 40ae214067673edbda79371969d1730b6194d83e does not apply to llvm-2.9 but rather to llvm-3.0svn.
* i915g: Fix build.Vinson Lee2011-03-281-3/+6
| | | | | | Fix build failures introduced with commit 0fbb64a52931ba5871aa2c5eb01b81d391f678d1. Reviewed-by: Jakob Bornecrantz <[email protected]>
* i915g: use drm ioctl to get pci devidDaniel Vetter2011-03-281-18/+8
| | | | Signed-off-by: Daniel Vetter <[email protected]>
* gallivm: Fix build with llvm-2.9Tobias Droste2011-03-281-3/+9
| | | | | | In llvm-2.9 Target->createMCInstPrinter() takes different arguments Signed-off-by: Tobias Droste <[email protected]>
* r600g: Handle texture fetch instructions with relative addressingFabian Bieler2011-03-271-0/+1
| | | | Signed-off-by: Henri Verbeet <[email protected]>
* r600g: Handle texture fetch instructions with neg or abs on source registerFabian Bieler2011-03-271-3/+5
| | | | Signed-off-by: Henri Verbeet <[email protected]>
* r600g: Handle texture fetch instructions with swizzle on source registerFabian Bieler2011-03-271-10/+20
| | | | Signed-off-by: Henri Verbeet <[email protected]>
* gallivm: Fix build with llvm-2.9.Vinson Lee2011-03-251-0/+5
| | | | | In llvm-2.9, the header file llvm/System/Host.h has been moved to llvm/Support/Host.h.
* gallium: Avoid redefinition of likely/unlikely macros on non gcc compilers.José Fonseca2011-03-251-6/+8
|
* r300g: fix alpha-test with no colorbufferMarek Olšák2011-03-241-0/+5
| | | | | | | Piglit: - fbo-alphatest-nocolor NOTE: This is a candidate for the stable branches.
* svga: adjust triangle rasterization offsetBrian Paul2011-03-241-1/+1
| | | | Fixes minor sub-pixel positioning error in some apps.
* st/wgl: Adjust the pbuffer invisible window size.José Fonseca2011-03-241-8/+53
| | | | Thanks to Brian Paul for diagnosing the issue.
* r600g: Check for relative addressing in destination register when trying to ↵Fabian Bieler2011-03-221-1/+8
| | | | | | merge instruction groups Signed-off-by: Henri Verbeet <[email protected]>
* r600g: fix bo names causing -35 EDEADLCKDave Airlie2011-03-223-0/+48
| | | | this is a port of the r300 winsys code to do the same thing.
* svga: Avoid synchronizing when doing piecewise upload of textures.José Fonseca2011-03-211-7/+8
|
* svga: Undo the DMA buffer size limiting.José Fonseca2011-03-211-13/+2
| | | | | | | Move this to the winsys, given it is not a virtual device limitation, but a limitation specific to certain winsyses. Also update debug message.
* nv50,nvc0: implement texture barrierChristoph Bumiller2011-03-192-0/+22
|
* nouveau: Fix serious compiler warningsJohannes Obermayr2011-03-181-0/+1
| | | | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=35025 Signed-off-by: Brian Paul <[email protected]>
* svga: Leave any_user_vertex_buffers flag alone.José Fonseca2011-03-162-3/+0
| | | | | It is pointless to change, now that we don't replace user vertex buffer with uploaded copy, per commit 52e598d200108ab9cfc9c9d828bbebdc576e9703.
* svga: Hardcode SVGA_COMBINE_USERBUFFERS to 1.José Fonseca2011-03-165-38/+12
| | | | | | | | The code no longer supports otherwise -- it relies on buffers being uploaded via u_upload_mgr -- so make this clear. Also, there's no need to flush after draws from user buffers, given all user content should have been copied by then.
* svga: Use transfer information on buffer transfers.José Fonseca2011-03-162-107/+81
| | | | | | | | Should prevent the assert failure svga_buffer_flush_mapped_range: Assertion `sbuf->map.writing' failed. on nested transfers.