summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* gallium: Remove pipe_screen::update_buffer.Chia-I Wu2010-04-132-12/+0
| | | | | It has no user after the removal of st_public. Plus, it has never been implemented by a pipe driver or winsys.
* gallium: disable tests when using embedded buildAlan Hourihane2010-04-131-2/+3
|
* scons: Fix exception when llvm-config is not present.José Fonseca2010-04-131-1/+6
|
* util: Fix util_dynarray_trim().Michal Krol2010-04-131-9/+10
|
* nvfx: use dynamically sized rotating BO pool for fragment programsLuca Barbieri2010-04-132-110/+137
| | | | | | | | | | | | | | | Currently we used a single buffer for each fragment programs, leading to rendering synchronization. This patch uses a doubly linked list of BOs, which is dynamically resized if all the BOs are busy. Note that inline image transfers could be an alternative option: this will be explored later. This removes one of the big performance limitations of the current driver. We also stop using pipe_resource internally in favor of using nouveau_bo directly.
* draw llvm: Initialize variable.Vinson Lee2010-04-131-1/+1
|
* r300g: Silence uninitialized variable warning.Vinson Lee2010-04-131-0/+1
|
* st/mesa: Remove state_tracker/st_framebuffer.c from SConscript.Vinson Lee2010-04-131-1/+0
| | | | | This was missed in commit da8412ec19ad00627ae9139dc02f46f344bbb6ac. Fixes SCons build.
* st/mesa: Drop st_public support.Chia-I Wu2010-04-1316-1018/+22
| | | | There is no user of st_public now.
* st/vega: Drop st_public support.Chia-I Wu2010-04-134-610/+0
| | | | There is no user of st_public now.
* st/vega: Do not rely on st_resize_framebuffer.Chia-I Wu2010-04-131-24/+239
| | | | | | Add vg_context_update_draw_buffer (and helpers) that duplicates the logic of st_resize_framebuffer. Use the new function instead of st_resize_framebuffer in vg_manager.c.
* nvfx: fix for 64-bit systemsLuca Barbieri2010-04-131-1/+1
| | | | Thanks to Patrice Mandin for debugging this.
* gallium/auxiliary: make util_dynarray_trim do nothing if size == capacityLuca Barbieri2010-04-131-1/+3
|
* gallium/auxiliary: add util_dynarray_resizeLuca Barbieri2010-04-131-2/+8
|
* gallium/auxiliary: fix util_dynarray_trim to 0 to free the dataLuca Barbieri2010-04-131-2/+8
| | | | | This works better and preserves the data != 0 if and only if capacity != 0 invariant.
* util: implement Jose Fonseca's suggestions for u_buffer.h -> u_dynarray.hLuca Barbieri2010-04-132-57/+96
| | | | Also describe invariants explicitly and use char* for arithmetic.
* r300/compiler: Hax around instructions limits in mirroring code.Corbin Simpson2010-04-121-0/+10
| | | | Stuff's starting to show up in arbnpot.
* ffvertex: don't touch tex coords if coord replace is enabled.Dave Airlie2010-04-132-1/+12
| | | | | | | | | | | | | | The fixed function vertex program shouldn't need to deal or touch tex coords if stuffing is enabled. Though I'm not 100% this won't break assumption made elsewhere it seems like the correct thing to do, and makes r300g point sprites a lot easier to implement. draw: fix point-sprite when vertex program is used. This commit regressed draw, so fix it as well to help bisection. Signed-off-by: Dave Airlie <[email protected]>
* r300g: add generating texture coordinates for point spritesMarek Olšák2010-04-135-21/+85
| | | | | | | | | | | | [airlied - Convert sprite coord index to a per-coord enable bit set the rasteriser block up correctly for point sprites. The inputs to the RS hw block change for sprite coords, so fix them up properly - this fixes piglit point-sprite test. ] Signed-off-by: Dave Airlie <[email protected]>
* progs/gallium: Move into src/gallium/testsJosé Fonseca2010-04-1389-2/+3
| | | | | | | Two reasons: - progs will eventually have its own repository - it is just to easy to forget updating the code for interface changes when it is outside of src
* gallium/auxiliary: add dynamically sized buffer/array/vectorLuca Barbieri2010-04-121-0/+57
|
* nvfx: add LRP in vertprogLuca Barbieri2010-04-121-0/+5
| | | | glsl generates these.
* nvfx: add SIN and COS in vertprogLuca Barbieri2010-04-121-0/+6
|
* nvfx: add missing vertprog setcond instructionsLuca Barbieri2010-04-121-0/+18
| | | | Trivially adds SEQ, SGT, SLE, SNE, SFL, STR and SSG which were missing.
* nvfx: allocate a bigger block for queriesLuca Barbieri2010-04-122-4/+11
| | | | | This patch allocates a bigger chunk of memory to store queries in, increasing the (hidden) outstanding query limit.
* nvfx: support an unlimited number of occlusion queriesLuca Barbieri2010-04-123-8/+22
| | | | | | | | | | | | | | Currently on nv30/nv40 an assert will be triggered once 32 queries are outstanding. This violates the OpenGL/Gallium interface, which requires support for an unlimited number of fences. This patch fixes the problem by putting queries in a linked list and waiting on the oldest one if allocation fails. nVidia seems to use a similar strategy, but with 1024 instead of 32 fences. The next patch will improve this.
* r300g: Move declaration before code.Vinson Lee2010-04-121-2/+4
| | | | Fixes SCons build.
* nvfx: fix TXL opcode valueLuca Barbieri2010-04-121-1/+1
| | | | Was broken during unification
* nvfx: Add support for two sided colorLuca Barbieri2010-04-122-2/+4
| | | | | | | This patch adds support for two-sided vertex color to nv30/nv40. When set, the COLOR0/1 fs inputs on back faces will be wired to vs outputs BCOLOR0/1. This makes OpenGL two sided lighting work, which can be tested with progs/demos/projtex.
* nvfx: fix compile errorLuca Barbieri2010-04-121-1/+1
|
* nvfx: don't use hw index buffers on nv3x and nv44Luca Barbieri2010-04-122-2/+3
| | | | | | | They only apparently work on nv40 grclass cards, and this was the previous behavior of the driver. This really needs to be investigated more.
* nvfx: expose PIPE_FORMAT_B8G8R8X8_UNORM supportLuca Barbieri2010-04-121-0/+2
| | | | | | | | This is implemented in nvfx_state_fb and fragtex but was missing in nvfx_screen. This allows to avoid glCopyTexSubImage CPU fallbacks and makes Doom 3 much faster as a result.
* nvfx: add support for ARB_half_float_vertexLuca Barbieri2010-04-122-0/+11
|
* st/mesa: half float vertex support (unexposed)Luca Barbieri2010-04-121-1/+10
| | | | | | | | | | | | | | | | | | This was proposed by Marek Olšák and no one objected, so just pushing it. The extension is currently not exposed, because the mechanism to discover if the driver actually supports this is missing. We probably should change is_format_supported to handle this too. This will allow to test Gallium drivers anyway in the meantime. Based on work by Dave Airlie. Changes by me: 1. Fix assertion in st 2. Change to use unpadded Gallium formats
* nvfx: allocate buffers in GART if !NOUVEAU_SWTNLLuca Barbieri2010-04-121-2/+1
| | | | Should improve performance and fix serious regressions on AGP cards.
* nvfx: move check for NOUVEAU_SWTNLLuca Barbieri2010-04-123-11/+5
|
* nvfx: remove #include "nouveau_stateobj.h"Luca Barbieri2010-04-121-1/+0
| | | | No longer used, finally!
* nvfx: rework validation logic to use code and avoid stateobjsLuca Barbieri2010-04-1218-285/+127
| | | | | This makes the code faster due to the lack of indirect calls and also makes it much easier to understand what is actually going on.
* nvfx: add NVFX_NEW_{FRAG,VERT}CONSTLuca Barbieri2010-04-124-4/+6
|
* nvfx: so->RING_3D: vertprogLuca Barbieri2010-04-122-27/+19
| | | | | We could use an sb here instead, but there is no obvious performance advantage, and perhaps there could be a disadvantage.
* nvfx: so->RING_3D: srLuca Barbieri2010-04-121-9/+6
|
* nvfx: so->sb: blendLuca Barbieri2010-04-123-27/+25
|
* nvfx: so->sb: zsaLuca Barbieri2010-04-123-40/+36
|
* nvfx: so->sb: rasterizerLuca Barbieri2010-04-123-52/+48
|
* nvfx: so->RING_3D: screenLuca Barbieri2010-04-121-93/+89
|
* nvfx: so->RING_3D: viewportLuca Barbieri2010-04-121-29/+25
|
* nvfx: so->RING_3D: stippleLuca Barbieri2010-04-122-15/+11
|
* nvfx: so->RING_3D: scissorLuca Barbieri2010-04-122-13/+10
|
* nvfx: so->RING_3D: blendLuca Barbieri2010-04-121-7/+4
|
* nvfx: so->RING_3D: fbLuca Barbieri2010-04-123-77/+117
|