summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
AgeCommit message (Collapse)Author
2010-09-05llvmpipe: Fix perspective divide interpolation.José Fonseca
Intuition != mathematics, so this time I actually worked out the right formula for first order approximation of perspective interpolation. Ironically, per quad divide actually makes things slower when compared with per pixel divide -- probably because the divide hardware unit is rarely used, whereas the multiply unit is typically already saturated and the first order approximation imply more multiplications.
2010-09-05llvmpipe: Relax the colormask constraint on opaque.José Fonseca
Also, include the color buffer in the key. Not having it there causes a tight knots in the logic to determine when it is OK or not to discard previous color buffer contents.
2010-09-05gallivm: Pass condition masks as an unsigned bitmask.José Fonseca
Much more convenient than boolean arrays.
2010-09-05r300g,r300c: memset the compiler struct to zerosMarek Olšák
This should fix bogus reports "Too many temporaries." and maybe some others.
2010-09-05nvfx: support unlimited constants and immediates in fpLuca Barbieri
2010-09-05nvfx: support using blitter to copy depth/stencil resources, fix HeavenLuca Barbieri
We might want to copy them as color ones though. Also works around crash in Unigine Heaven due to failing to allocate a 64 MB temporary in GART for a CPU copy. Unigine Heaven now works on nv40, albeit with very heavy glitches (with the floating branch with render_hdr 0).
2010-09-04nvfx: support rendering to more formatsLuca Barbieri
2010-09-04nvfx: move 2D format selection logic to 2D codeLuca Barbieri
2010-09-04nvfx: fix swizzling of high bpp surfacesLuca Barbieri
2010-09-04nvfx: fix some subrectangle copiesLuca Barbieri
Actually, we may want to get rid of the x/y coordinates for linear surfaces, and realign the origin from scratch if necessary, instead of doing this "on-demand realignment".
2010-09-04nvfx: fix inlinining in nv04_2d.cLuca Barbieri
2010-09-04nvfx: fix the temporary copying logic and add assertsLuca Barbieri
2010-09-04nvfx: prevent swizzled rendering into formats where it's not supportedLuca Barbieri
2010-09-04Revert "r300g: refuse to create a texture with size 0"Marek Olšák
This reverts commit 5cdedaaf295acae13ac10feeb3143d83bc53d314. https://bugs.freedesktop.org/show_bug.cgi?id=30002 Conflicts: src/gallium/drivers/r300/r300_texture.c
2010-09-04r300g: remove unnecessary assignmentsMarek Olšák
2010-09-04r300g: skip draw calls with no vertex elements, fixing hardlocksMarek Olšák
2010-09-04r300g: add a new debug option which disables compiler optimizationsMarek Olšák
Those are: - dead-code elimination - constant folding - peephole (mainly copy propagation) - register allocation There are some bugs which I need to track down. Also fix up the descriptions of all the debug options.
2010-09-04r300/compiler: make optimizations not use 0.5 swizzles in vertex shadersMarek Olšák
2010-09-04r300/compiler: add new compiler parameter max_constantsMarek Olšák
2010-09-04r300g: only check for an empty shader if there are no compile errorsMarek Olšák
2010-09-04r300/compiler: add new compiler parameter max_alu_instsMarek Olšák
2010-09-04nvfx: consolidate tiny filesLuca Barbieri
We probably want to reorganize the remaining files too, but that's for later, maybe.
2010-09-04nvfx: fix vp DP2Luca Barbieri
2010-09-04nvfx: implement fp SSG properlyLuca Barbieri
2010-09-04nvfx: don't claim we support preds since the driver doesn'tLuca Barbieri
2010-09-04nv40: support all 10 texcoordsLuca Barbieri
2010-09-04nvfx: add missing context initLuca Barbieri
2010-09-04nvfx: tidy up state_emitLuca Barbieri
2010-09-04nvfx: support all coord conventions in hardwareLuca Barbieri
2010-09-04nvfx: add missing pushbuffer space checkLuca Barbieri
2010-09-04nvfx: support all possible vs constsLuca Barbieri
We were incorrectly setting a register that limited the range of constants accessible via indirect addressing. Setting it correctly, we can address all the constants the GPU supports.
2010-09-04nvfx: set magic bit to round NPOT mipmap sizes down and not upLuca Barbieri
Does any API even use rounding-up?
2010-09-04nvfx: allow nested blitter usage, fixing bug in clearLuca Barbieri
2010-09-03galahad: do map/unmap counting for resourcesBrian Paul
2010-09-03nvfx: implement LIT in fpLuca Barbieri
2010-09-03nvfx: fix division by zero in vp-ignore-inputLuca Barbieri
2010-09-03nvfx: report correct max lodbiasLuca Barbieri
Fixes piglit lodbias
2010-09-03nvfx: remove messageLuca Barbieri
2010-09-03nvfx: support indirect addressing in vpsLuca Barbieri
Negative or huge offsets not yet supported.
2010-09-03nvfx: fix support for more than 8 texture units (fixes etqw crash)Luca Barbieri
2010-09-03r600g: fix segfault in state after reworkDave Airlie
probably can improve this a bit.
2010-09-03r600g: refactor sample states into a reusable struct.Dave Airlie
I will not cut-n-paste. I will not cut-n-paste. I will not cut-n-paste.
2010-09-03r600g: reduce size of r600 context structure to !insaneDave Airlie
Its now about 7.8k, and might actually fit in a cache.
2010-09-03r600g: add texture border state.Dave Airlie
Okay I finally wrapped my head around what r600_context_state is meant to be, maybe I should just rename all the structs so that have distinct names. I've no idea however why 16 is a good magic number for R600_MAX_RSTATE.
2010-09-03r600g: deref old driver states for set entry points.Dave Airlie
2010-09-03r600g: drop r600_bind_state.Dave Airlie
This was another ugly function that really wasn't needed. The 3 calls to it from the gallium api were shorter than it, and all the calls from the set_ functions were pointless.
2010-09-03r600g: kill r600_context_state functionDave Airlie
having some sort of locality of code really matters, just create and setup state at time. Not sure if this is just further polishing of a bad thing, but at least it makes it more readable.
2010-09-03r600g: move lots of state inline helpers to separate header.Dave Airlie
this gets them out of sight of the main codeflow.
2010-09-03r600g: drop magic numbers in depth state.Dave Airlie
this also fixes occulsion queries.
2010-09-02r600g: force unbind of previously bind sampler/sampler_viewJerome Glisse
Previously bind sampler/sampler_view can be converted and endup overwritting the current state we want to schedule. Example : bind texA texB to sampler_view[0] & sampler_view[1], render, bind texB to sampler_view[0] render. Now state associated to texB are set to configure sampler_view slot 0, but as we don't unbind sampler_view[1] still point to texB state so we end up with sampler_view[1] overwritting sampler_view[0], which gives wrong rendering if next rendering bind texA to sampler_view[0], it will endup as texB is bound to sampler_view[0]. If you are not confuse at that point give me a call i will be buying you beer. Signed-off-by: Jerome Glisse <jglisse@redhat.com>