Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-09-05 | llvmpipe: 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-05 | util: 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-05 | llvmpipe: 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-05 | util: Utility function to determine the channels that can be written in a ↵ | José Fonseca | |
color format. | |||
2010-09-05 | gallivm: Pass condition masks as an unsigned bitmask. | José Fonseca | |
Much more convenient than boolean arrays. | |||
2010-09-05 | gallivm: Cope with tgsi instruction reallocation failure. | José Fonseca | |
2010-09-05 | r300g,r300c: memset the compiler struct to zeros | Marek Olšák | |
This should fix bogus reports "Too many temporaries." and maybe some others. | |||
2010-09-05 | nvfx: support unlimited constants and immediates in fp | Luca Barbieri | |
2010-09-05 | nvfx: support using blitter to copy depth/stencil resources, fix Heaven | Luca 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-04 | nvfx: support rendering to more formats | Luca Barbieri | |
2010-09-04 | nvfx: move 2D format selection logic to 2D code | Luca Barbieri | |
2010-09-04 | nvfx: fix swizzling of high bpp surfaces | Luca Barbieri | |
2010-09-04 | nvfx: fix some subrectangle copies | Luca 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-04 | nvfx: fix inlinining in nv04_2d.c | Luca Barbieri | |
2010-09-04 | nvfx: fix the temporary copying logic and add asserts | Luca Barbieri | |
2010-09-04 | nvfx: prevent swizzled rendering into formats where it's not supported | Luca Barbieri | |
2010-09-04 | Revert "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-04 | r300g: remove unnecessary assignments | Marek Olšák | |
2010-09-04 | r300g: skip draw calls with no vertex elements, fixing hardlocks | Marek Olšák | |
2010-09-04 | r300g: add a new debug option which disables compiler optimizations | Marek 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-04 | r300/compiler: make optimizations not use 0.5 swizzles in vertex shaders | Marek Olšák | |
2010-09-04 | r300/compiler: add new compiler parameter max_constants | Marek Olšák | |
2010-09-04 | r300g: only check for an empty shader if there are no compile errors | Marek Olšák | |
2010-09-04 | r300/compiler: add new compiler parameter max_alu_insts | Marek Olšák | |
2010-09-04 | nvfx: consolidate tiny files | Luca Barbieri | |
We probably want to reorganize the remaining files too, but that's for later, maybe. | |||
2010-09-04 | nvfx: fix vp DP2 | Luca Barbieri | |
2010-09-04 | nvfx: implement fp SSG properly | Luca Barbieri | |
2010-09-04 | nvfx: don't claim we support preds since the driver doesn't | Luca Barbieri | |
2010-09-04 | nv40: support all 10 texcoords | Luca Barbieri | |
2010-09-04 | nvfx: add missing context init | Luca Barbieri | |
2010-09-04 | nvfx: tidy up state_emit | Luca Barbieri | |
2010-09-04 | nvfx: support all coord conventions in hardware | Luca Barbieri | |
2010-09-04 | nvfx: add missing pushbuffer space check | Luca Barbieri | |
2010-09-04 | nvfx: support all possible vs consts | Luca 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-04 | nvfx: set magic bit to round NPOT mipmap sizes down and not up | Luca Barbieri | |
Does any API even use rounding-up? | |||
2010-09-04 | nvfx: allow nested blitter usage, fixing bug in clear | Luca Barbieri | |
2010-09-03 | galahad: do map/unmap counting for resources | Brian Paul | |
2010-09-03 | libgl-xlib: enable galahad support | Brian Paul | |
If the GALLIUM_GALAHAD env var is 1 we'll wrap the regular driver with the galahad validation driver. | |||
2010-09-03 | st/glx: added some comments | Brian Paul | |
2010-09-03 | nvfx: implement LIT in fp | Luca Barbieri | |
2010-09-03 | nvfx: fix division by zero in vp-ignore-input | Luca Barbieri | |
2010-09-03 | nvfx: report correct max lodbias | Luca Barbieri | |
Fixes piglit lodbias | |||
2010-09-03 | nvfx: remove message | Luca Barbieri | |
2010-09-03 | nvfx: support indirect addressing in vps | Luca Barbieri | |
Negative or huge offsets not yet supported. | |||
2010-09-03 | nvfx: fix support for more than 8 texture units (fixes etqw crash) | Luca Barbieri | |
2010-09-03 | r600g: fix segfault in state after rework | Dave Airlie | |
probably can improve this a bit. | |||
2010-09-03 | r600g: 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-03 | r600g: reduce size of r600 context structure to !insane | Dave Airlie | |
Its now about 7.8k, and might actually fit in a cache. | |||
2010-09-03 | r600g: 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-03 | r600g: deref old driver states for set entry points. | Dave Airlie | |