Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | dri/nv04: Add support for NV_texture_env_combine4. | Francisco Jerez | 2010-09-09 | 2 | -13/+24 |
| | |||||
* | dri/nouveau: Minor cleanup. | Francisco Jerez | 2010-09-09 | 1 | -21/+29 |
| | |||||
* | r600: add TXL instruction and note about TXB | Andre Maasikas | 2010-09-09 | 1 | -5/+12 |
| | |||||
* | r600: remove depth exports move, just set to output x <- z in the export ↵ | Andre Maasikas | 2010-09-09 | 1 | -70/+5 |
| | | | | intruction | ||||
* | r600: protect cleanup instructions from double free | Andre Maasikas | 2010-09-09 | 2 | -2/+20 |
| | | | | | We might get the cleanup when we have not translated the shader yet e.g 2 programstringnotifys in a row | ||||
* | r600: remove mask from output intructions | Andre Maasikas | 2010-09-09 | 6 | -45/+1 |
| | | | | | in case of relative addressing we never get to know which comps were really written. | ||||
* | r600: allow relative addressing of temps, inputs, outputs | Andre Maasikas | 2010-09-09 | 1 | -13/+30 |
| | |||||
* | r600: handle LIT writemask | Andre Maasikas | 2010-09-09 | 1 | -147/+141 |
| | |||||
* | r600: fix rsq from negative input | Andre Maasikas | 2010-09-09 | 1 | -0/+3 |
| | | | | arbfp specifies rsq of abs value | ||||
* | glsl: add several EmitNo* options, and MaxUnrollIterations | Luca Barbieri | 2010-09-08 | 1 | -1/+1 |
| | | | | | | | | | This increases the chance that GLSL programs will actually work. Note that continues and returns are not yet lowered, so linking will just fail if not supported. Signed-off-by: Ian Romanick <[email protected]> | ||||
* | glsl: make compiler options per-target | Luca Barbieri | 2010-09-08 | 3 | -5/+16 |
| | | | | | | | This allows us to specify different options, especially useful for chips without unified shaders. Signed-off-by: Ian Romanick <[email protected]> | ||||
* | dri: Unset current context and dispatch table when unbinding | Kristian Høgsberg | 2010-09-08 | 4 | -0/+13 |
| | | | | | | | | Otherwise, when we switch to an indirect glx context and then back, it looks like we're still current. https://bugs.freedesktop.org/show_bug.cgi?id=29977#c7 Signed-off-by: Kristian Høgsberg <[email protected]> | ||||
* | i965: Enable EXT_framebuffer_blit internally. | Kenneth Graunke | 2010-09-07 | 1 | -0/+1 |
| | | | | | | Otherwise, ES2's BindFramebuffer entrypoint hits this assertion: main/fbobject.c:1323: _mesa_BindFramebufferEXT: Assertion `ctx->Extensions.EXT_framebuffer_blit' failed. | ||||
* | i965: Store the byte address in the VS constant buffer as an integer. | Eric Anholt | 2010-09-07 | 1 | -1/+1 |
| | | | | | | | We carefully multiplied our two ints (since we want to be precise after all) then stored them in a float, which is not specced to really work, in addition to wasting precision. Fixes vp-arl-constant-array-huge-* things since the assertions were added. | ||||
* | i965: Make pixel_xy results UW. | Eric Anholt | 2010-09-07 | 1 | -0/+2 |
| | | | | | | | There is a restriction on the destination of an operation involving a vector immediate being 128-bit aligned and the destination horizontal stride being equivalent to 2 bytes. Fixes bad pixel_x results from gl_FragCoord, where each pair had the same value. | ||||
* | i965: Don't bother with RNDZ for f2i. | Eric Anholt | 2010-09-07 | 1 | -1/+1 |
| | | | | | The default type conversion for MOV should be fine, and RNDZ actually requires two instructions. | ||||
* | i965: Add some validation on BRW_OPCODE_MUL and ADD's arguments. | Eric Anholt | 2010-09-07 | 1 | -2/+57 |
| | | | | | Now that we're playing with other types in brw_fs.cpp, it's easy to trip over issues like these. | ||||
* | i965: Add assertion for another requirement about types. | Eric Anholt | 2010-09-07 | 1 | -1/+13 |
| | | | | This catches a failure in the FS backend. | ||||
* | i965: Align the start of attribute interp coefficients in FS to use PLN. | Eric Anholt | 2010-09-07 | 1 | -0/+8 |
| | |||||
* | i965: Just assert when we flagged a compile error in the FS for now. | Eric Anholt | 2010-09-07 | 1 | -3/+5 |
| | | | | | | Dumping back to potentially 16-wide dispatch doesn't really work out at the moment, and hopefully I'll just be able to resolve all the failures so we never have to do this at all. | ||||
* | i965: Clean up fs_reg setup by using a helper for constructors. | Eric Anholt | 2010-09-07 | 1 | -27/+16 |
| | |||||
* | i965: When using the new FS backend, don't validate the Mesa IR version. | Eric Anholt | 2010-09-07 | 1 | -0/+16 |
| | |||||
* | i965: Add a bit of validation for some ISA restrictions in the docs. | Eric Anholt | 2010-09-07 | 1 | -0/+70 |
| | |||||
* | i965: set the source width/stride when handling reladdr dests in the VS. | Eric Anholt | 2010-09-07 | 1 | -0/+6 |
| | | | | | This is a requirement specified in the docs. No behavior change in glsl-vs-varying-array.shader_test that violated these requirements. | ||||
* | dri: Make it a little clearer that we're not dereferencing a NULL pointer | nobled | 2010-09-07 | 1 | -1/+2 |
| | |||||
* | dri: Use the right type for the API token | nobled | 2010-09-07 | 1 | -1/+3 |
| | | | | | Pass mesa_api to CreateContext, and abort early if the requested API isn't recognized. | ||||
* | nouveau: restore nouveau_class.h for nv04-nv20 | Luca Barbieri | 2010-09-07 | 1 | -1/+4953 |
| | | | | | Sorry, I deleted the Gallium copy without realizing that the DRI one was just a symlink to it. | ||||
* | radeon: Add radeon_buffer_objects.c. | Henri Verbeet | 2010-09-05 | 1 | -0/+1 |
| | |||||
* | r200: Add radeon_buffer_objects.c. | Henri Verbeet | 2010-09-05 | 3 | -0/+3 |
| | |||||
* | radeon: Make do_blit_readpixels() into a PBO work. | Henri Verbeet | 2010-09-05 | 1 | -11/+31 |
| | |||||
* | r300g,r300c: memset the compiler struct to zeros | Marek Olšák | 2010-09-05 | 3 | -0/+3 |
| | | | | This should fix bogus reports "Too many temporaries." and maybe some others. | ||||
* | r300/compiler: Remove stray break statement | Tom Stellard | 2010-09-04 | 1 | -1/+0 |
| | | | | This fixes glsl-fs-loop-nested. | ||||
* | r300/compiler: fix the instruction limit in vertex shaders | Marek Olšák | 2010-09-05 | 1 | -1/+1 |
| | | | | | | Broken with commit d774b0c710bb7d833d17bd12f5151a0176baad96. Reported by Chris Rankin. | ||||
* | r300/compiler: indent printed instructions according to the branch depth | Marek Olšák | 2010-09-04 | 1 | -4/+44 |
| | |||||
* | r300/compiler: use limits from the compiler input instead of inline constants | Marek Olšák | 2010-09-04 | 1 | -5/+4 |
| | |||||
* | r300/compiler: improve register allocation with indexable temporaries for VS | Marek Olšák | 2010-09-04 | 1 | -17/+46 |
| | | | | | Register allocation can now reallocate temporaries right after the last indexed source operand, instead of being disabled for the whole shader. | ||||
* | r300/compiler: fix handling of indexed temporaries in peephole | Marek Olšák | 2010-09-04 | 1 | -1/+9 |
| | |||||
* | r300/compiler: disable deadcode elimination for indexed dst operands | Marek Olšák | 2010-09-04 | 1 | -0/+14 |
| | |||||
* | r300/compiler: allocate at least FS inputs if register allocation is disabled | Marek Olšák | 2010-09-04 | 3 | -9/+52 |
| | |||||
* | r300g: add a new debug option which disables compiler optimizations | Marek Olšák | 2010-09-04 | 6 | -6/+13 |
| | | | | | | | | | | | | 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. | ||||
* | r300/compiler: compute the final number of temporaries during translation | Marek Olšák | 2010-09-04 | 1 | -7/+23 |
| | | | | | And not during the register allocation, which may be skipped for debugging purposes. Also the predicate register is now added to the number of temps. | ||||
* | r300/compiler: make optimizations not use 0.5 swizzles in vertex shaders | Marek Olšák | 2010-09-04 | 5 | -1/+6 |
| | |||||
* | r300/compiler: use peephole and constant folding for vertex shaders too | Marek Olšák | 2010-09-04 | 1 | -1/+3 |
| | |||||
* | r300/compiler: remove unused enum OPCODE_REPL_ALPHA | Marek Olšák | 2010-09-04 | 1 | -5/+0 |
| | | | | We use RC_OPCODE_REPL_ALPHA instead. | ||||
* | r300/compiler: refactor fragment shader compilation | Marek Olšák | 2010-09-04 | 19 | -165/+85 |
| | | | | This cleans up the mess in r3xx_compile_fragment_program. | ||||
* | r300/compiler: add new compiler parameter max_constants | Marek Olšák | 2010-09-04 | 6 | -10/+16 |
| | |||||
* | r300/compiler: refactor vertex shader compilation | Marek Olšák | 2010-09-04 | 18 | -161/+140 |
| | | | | | | First list compiler passes in an array, then run the new function rc_run_compiler. Every backend may need a different set of passes. This cleans up the mess in r3xx_compile_vertex_program. | ||||
* | r300/compiler: remove a redundant parameter in rc_pair_regalloc | Marek Olšák | 2010-09-04 | 3 | -3/+4 |
| | |||||
* | r300/compiler: remove a redundant parameter in rc_dataflow_deadcode | Marek Olšák | 2010-09-04 | 4 | -5/+5 |
| | | | | &c->Base == c. | ||||
* | r300/compiler: use null-terminated array of transformation functions | Marek Olšák | 2010-09-04 | 4 | -15/+20 |
| | | | | | I need to reduce the number of parameters of each compiler pass function. This is part of a larger cleanup. |