summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2010-09-05nouveau: delete nouveau_class.h, move nv50 regs to nv50_reg.hLuca Barbieri
nv50 should switch to rules-ng-ng too at some point. The classic Mesa Nouveau driver also includes a copy of nouveau_class.h, and should convert to rules-ng-ng too and remove it.
2010-09-05nvfx: move nv04_2d to rules-ng-ngLuca Barbieri
2010-09-05nvfx: switch to rules-ng-ng register headersLuca Barbieri
This is the new register generation toolkit in use by nouveau. As far as I know, this is the best register description toolkit in existence, and you should use it too for your hardware :) Thanks to Marcin Kościelnicki for inventing it and performing invaluable reverse engineering work of nVidia chips.
2010-09-05nvfx: remove remaining BEGIN_RING/eng3d usesLuca Barbieri
2010-09-05nvfx: pause occlusion queries during blitter usageLuca Barbieri
Thanks for Dave Airlie and Jerome Glisse for their code which made me realize I need this too.
2010-09-05nvfx: properly return fogcoord.w == 1Luca Barbieri
Hardware sets it to 0, so we add an ADD to put an 1 there if the application really wants the alpha channel.
2010-09-05nvfx: support saturate in vpLuca Barbieri
Completely untested, since Mesa apparently never uses this currently. In particular, it might not work with scalar slot op.
2010-09-05nvfx: add rewritten swtnl supportLuca Barbieri
The old swtnl code was broken by the new shader linkage support for GLSL. This is a rewrite of swtnl support, which should instead work properly, be faster and more closer to the much more tested hardware pipeline.
2010-09-05nvfx: use a piglit-ignored format for unknown cap messageLuca Barbieri
2010-09-05llvmpipe: Remove some broken MinGW hacks in the sin/cos reference code.José Fonseca
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-05util: Helper function to determined whether two formats can be memcpy'ed.José Fonseca
These are the non-trivial conversions that this function recognizes, which was produced by u_format_compatible_test.c: b8g8r8a8_unorm -> b8g8r8x8_unorm a8r8g8b8_unorm -> x8r8g8b8_unorm b5g5r5a1_unorm -> b5g5r5x1_unorm b4g4r4a4_unorm -> b4g4r4x4_unorm l8_unorm -> r8_unorm i8_unorm -> l8_unorm i8_unorm -> a8_unorm i8_unorm -> r8_unorm l16_unorm -> r16_unorm z24_unorm_s8_uscaled -> z24x8_unorm s8_uscaled_z24_unorm -> x8z24_unorm r8g8b8a8_unorm -> r8g8b8x8_unorm a8b8g8r8_srgb -> x8b8g8r8_srgb b8g8r8a8_srgb -> b8g8r8x8_srgb a8r8g8b8_srgb -> x8r8g8b8_srgb a8b8g8r8_unorm -> x8b8g8r8_unorm r10g10b10a2_uscaled -> r10g10b10x2_uscaled r10sg10sb10sa2u_norm -> r10g10b10x2_snorm State trackers and pipe drivers should be updated to take advantage of this knowledge, e.g., in surface_copy.
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-05util: Utility function to determine the channels that can be written in a ↵José Fonseca
color format.
2010-09-05gallivm: Pass condition masks as an unsigned bitmask.José Fonseca
Much more convenient than boolean arrays.
2010-09-05gallivm: Cope with tgsi instruction reallocation failure.José Fonseca
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-03libgl-xlib: enable galahad supportBrian Paul
If the GALLIUM_GALAHAD env var is 1 we'll wrap the regular driver with the galahad validation driver.
2010-09-03st/glx: added some commentsBrian Paul
2010-09-03nvfx: implement LIT in fpLuca Barbieri