Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | r600g: add support for constants in memory buffers. | Dave Airlie | 2010-09-08 | 12 | -51/+143 |
| | | | | | | DX9 constants were in the constant file, and evergreen no longer support cfile. r600/700 can also use constants in memory buffers, so add the code (disabled for now) to enable that as precursor for evergreen. | ||||
* | r600g: abstract the hw states out behind a vtbl. | Dave Airlie | 2010-09-08 | 7 | -975/+1103 |
| | | | | | this is step one towards evergreen support, it lets us plug in whole new hw level states. | ||||
* | llvmpipe: Add lp_rast_debug.c to Makefile. | Chia-I Wu | 2010-09-07 | 1 | -0/+1 |
| | |||||
* | llvmpipe: Refactor lp_scene_add_resource_reference | José Fonseca | 2010-09-07 | 1 | -14/+15 |
| | | | | Less goto spaghetti. | ||||
* | llvmpipe: Fix negated logic in lp_scene_add_resource_reference(). | José Fonseca | 2010-09-07 | 1 | -1/+1 |
| | | | | Fixes performance regression. | ||||
* | llvmpipe: move more coef setup into lp_setup_coef.c | Keith Whitwell | 2010-09-07 | 4 | -40/+61 |
| | |||||
* | llvmpipe: declare fence handle struct | Keith Whitwell | 2010-09-07 | 1 | -0/+1 |
| | |||||
* | llvmpipe: rasterization debugging helpers | Keith Whitwell | 2010-09-07 | 7 | -0/+428 |
| | |||||
* | llvmpipe: use opcodes instead of function pointers in bins | Keith Whitwell | 2010-09-07 | 15 | -441/+513 |
| | | | | Also, move some state from rasterizer struct to the scene. | ||||
* | llvmpipe: rearrange queries | Keith Whitwell | 2010-09-07 | 4 | -116/+53 |
| | |||||
* | llvmpipe: enforce fixed memory limit on scenes | Keith Whitwell | 2010-09-07 | 11 | -341/+459 |
| | |||||
* | llvmpipe: clean up deferred zstencil clears | Keith Whitwell | 2010-09-07 | 6 | -79/+41 |
| | |||||
* | llvmpipe: rework fences and queries | Keith Whitwell | 2010-09-07 | 7 | -92/+124 |
| | |||||
* | llvmpipe: move whole-tile emit into a function | Keith Whitwell | 2010-09-07 | 2 | -8/+42 |
| | |||||
* | llvmpipe: put fs variant dumping in a function | Keith Whitwell | 2010-09-07 | 2 | -4/+15 |
| | |||||
* | nvfx: fix return in vp main | Luca Barbieri | 2010-09-06 | 1 | -17/+39 |
| | |||||
* | r600g: add error print for no literals for r700s as well | Dave Airlie | 2010-09-06 | 1 | -0/+3 |
| | |||||
* | r600g: fixup r700 assembler for clamp/relative addressing | Dave Airlie | 2010-09-06 | 1 | -13/+18 |
| | |||||
* | r600g: add script to generate header file with offsets into state objects. | Dave Airlie | 2010-09-06 | 2 | -412/+525 |
| | | | | | | | | This was inherently fragile as any changes to r600_states.h would also need manual updating of all of the bits in radeon.h. Just add a simple python script to do the conversion, its not hooked up to make at all. This also will make adding evergreen a bit easier. | ||||
* | r600g: fix up surface references | Dave Airlie | 2010-09-06 | 1 | -4/+2 |
| | | | | | We end up referencing the new surf and derefing the old surface which is a copy of the pointer to the new surf. So just bump the ref count directly. | ||||
* | r600g: search for sampler views in context on removal. | Dave Airlie | 2010-09-06 | 1 | -0/+17 |
| | | | | Need to remove from context as well. | ||||
* | r600g: add missing printf operand | Dave Airlie | 2010-09-06 | 1 | -1/+1 |
| | |||||
* | nvfx: support nv30 simulation on nv40 | Luca Barbieri | 2010-09-05 | 7 | -32/+50 |
| | |||||
* | nouveau: delete nouveau_class.h, move nv50 regs to nv50_reg.h | Luca Barbieri | 2010-09-05 | 4 | -9050/+1775 |
| | | | | | | | 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. | ||||
* | nvfx: move nv04_2d to rules-ng-ng | Luca Barbieri | 2010-09-05 | 3 | -17/+1518 |
| | |||||
* | nvfx: switch to rules-ng-ng register headers | Luca Barbieri | 2010-09-05 | 18 | -334/+2587 |
| | | | | | | | | | | 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. | ||||
* | nvfx: remove remaining BEGIN_RING/eng3d uses | Luca Barbieri | 2010-09-05 | 2 | -15/+18 |
| | |||||
* | nvfx: pause occlusion queries during blitter usage | Luca Barbieri | 2010-09-05 | 4 | -10/+36 |
| | | | | | Thanks for Dave Airlie and Jerome Glisse for their code which made me realize I need this too. | ||||
* | nvfx: properly return fogcoord.w == 1 | Luca Barbieri | 2010-09-05 | 1 | -1/+15 |
| | | | | | Hardware sets it to 0, so we add an ADD to put an 1 there if the application really wants the alpha channel. | ||||
* | nvfx: support saturate in vp | Luca Barbieri | 2010-09-05 | 2 | -66/+93 |
| | | | | | | Completely untested, since Mesa apparently never uses this currently. In particular, it might not work with scalar slot op. | ||||
* | nvfx: add rewritten swtnl support | Luca Barbieri | 2010-09-05 | 8 | -263/+238 |
| | | | | | | | | 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. | ||||
* | nvfx: use a piglit-ignored format for unknown cap message | Luca Barbieri | 2010-09-05 | 1 | -1/+1 |
| | |||||
* | llvmpipe: Remove some broken MinGW hacks in the sin/cos reference code. | José Fonseca | 2010-09-05 | 1 | -49/+0 |
| | |||||
* | llvmpipe: Fix perspective divide interpolation. | José Fonseca | 2010-09-05 | 2 | -9/+76 |
| | | | | | | | | | | 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. | ||||
* | llvmpipe: Relax the colormask constraint on opaque. | José Fonseca | 2010-09-05 | 2 | -13/+29 |
| | | | | | | 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. | ||||
* | gallivm: Pass condition masks as an unsigned bitmask. | José Fonseca | 2010-09-05 | 1 | -3/+2 |
| | | | | Much more convenient than boolean arrays. | ||||
* | r300g,r300c: memset the compiler struct to zeros | Marek Olšák | 2010-09-05 | 1 | -0/+1 |
| | | | | This should fix bogus reports "Too many temporaries." and maybe some others. | ||||
* | nvfx: support unlimited constants and immediates in fp | Luca Barbieri | 2010-09-05 | 2 | -49/+37 |
| | |||||
* | nvfx: support using blitter to copy depth/stencil resources, fix Heaven | Luca Barbieri | 2010-09-05 | 1 | -1/+8 |
| | | | | | | | | | | 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). | ||||
* | nvfx: support rendering to more formats | Luca Barbieri | 2010-09-04 | 4 | -2/+30 |
| | |||||
* | nvfx: move 2D format selection logic to 2D code | Luca Barbieri | 2010-09-04 | 3 | -67/+75 |
| | |||||
* | nvfx: fix swizzling of high bpp surfaces | Luca Barbieri | 2010-09-04 | 2 | -39/+63 |
| | |||||
* | nvfx: fix some subrectangle copies | Luca Barbieri | 2010-09-04 | 1 | -4/+6 |
| | | | | | | 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". | ||||
* | nvfx: fix inlinining in nv04_2d.c | Luca Barbieri | 2010-09-04 | 1 | -1/+1 |
| | |||||
* | nvfx: fix the temporary copying logic and add asserts | Luca Barbieri | 2010-09-04 | 3 | -7/+24 |
| | |||||
* | nvfx: prevent swizzled rendering into formats where it's not supported | Luca Barbieri | 2010-09-04 | 1 | -2/+4 |
| | |||||
* | Revert "r300g: refuse to create a texture with size 0" | Marek Olšák | 2010-09-04 | 1 | -12/+0 |
| | | | | | | | | | | This reverts commit 5cdedaaf295acae13ac10feeb3143d83bc53d314. https://bugs.freedesktop.org/show_bug.cgi?id=30002 Conflicts: src/gallium/drivers/r300/r300_texture.c | ||||
* | r300g: remove unnecessary assignments | Marek Olšák | 2010-09-04 | 1 | -6/+0 |
| | |||||
* | r300g: skip draw calls with no vertex elements, fixing hardlocks | Marek Olšák | 2010-09-04 | 1 | -0/+3 |
| | |||||
* | r300g: add a new debug option which disables compiler optimizations | Marek Olšák | 2010-09-04 | 4 | -18/+22 |
| | | | | | | | | | | | | 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. |