Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 | 10 | -24/+35 |
| | | | | | | | | | | | | 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 | 7 | -1/+8 |
| | |||||
* | 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 | 8 | -10/+18 |
| | |||||
* | 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. | ||||
* | r300g: only check for an empty shader if there are no compile errors | Marek Olšák | 2010-09-04 | 1 | -8/+8 |
| | |||||
* | r300/compiler: add new compiler parameter max_alu_insts | Marek Olšák | 2010-09-04 | 12 | -35/+38 |
| | |||||
* | r300/compiler: put emulate_loop_state in radeon_compiler | Marek Olšák | 2010-09-04 | 7 | -24/+20 |
| | |||||
* | ir_reader: Run ir_validate on the generated IR. | Kenneth Graunke | 2010-09-04 | 1 | -0/+2 |
| | | | | It's just too easy to get something wrong in hand-written IR. | ||||
* | ir_reader: Emit global variables at the top of the instruction list. | Kenneth Graunke | 2010-09-04 | 1 | -2/+11 |
| | | | | | | | | Since functions are emitted when scanning for prototypes, functions always come first, even if the original IR listed the variable declarations first. Fixes an ir_validate error (to be turned on in the next commit). | ||||
* | ir_reader: Drop support for reading the old assignment format. | Kenneth Graunke | 2010-09-04 | 1 | -6/+4 |
| | |||||
* | glsl: Regenerate autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-09-04 | 1 | -402/+390 |
| | |||||
* | glsl/builtins: Convert assignments to new format (with write mask). | Kenneth Graunke | 2010-09-04 | 15 | -398/+389 |
| | |||||
* | ir_reader: Read the new assignment format (with write mask). | Kenneth Graunke | 2010-09-04 | 1 | -6/+46 |
| | | | | | This preserves the ability to read the old format, for momentary compatibility with all the existing IR implementations of built-ins. | ||||
* | ir_reader: Track the current function and report it in error messages. | Kenneth Graunke | 2010-09-04 | 1 | -0/+6 |
| | |||||
* | glsl/builtins: Actually print the info log if reading a builtin failed. | Kenneth Graunke | 2010-09-04 | 1 | -0/+1 |
| | |||||
* | nvfx: consolidate tiny files | Luca Barbieri | 2010-09-04 | 9 | -134/+94 |
| | | | | | We probably want to reorganize the remaining files too, but that's for later, maybe. | ||||
* | mesa/st: add missing _mesa_set_fetch_functions in st_get_tex_image | Luca Barbieri | 2010-09-04 | 1 | -0/+2 |
| | | | | Fixes piglit fdo25614-genmipmap. | ||||
* | nvfx: fix vp DP2 | Luca Barbieri | 2010-09-04 | 1 | -1/+1 |
| | |||||
* | nvfx: implement fp SSG properly | Luca Barbieri | 2010-09-04 | 1 | -5/+18 |
| | |||||
* | nvfx: don't claim we support preds since the driver doesn't | Luca Barbieri | 2010-09-04 | 1 | -2/+2 |
| | |||||
* | nv40: support all 10 texcoords | Luca Barbieri | 2010-09-04 | 3 | -12/+19 |
| | |||||
* | nvfx: add missing context init | Luca Barbieri | 2010-09-04 | 1 | -0/+3 |
| | |||||
* | nvfx: tidy up state_emit | Luca Barbieri | 2010-09-04 | 1 | -76/+84 |
| | |||||
* | nvfx: support all coord conventions in hardware | Luca Barbieri | 2010-09-04 | 6 | -5/+41 |
| | |||||
* | nvfx: add missing pushbuffer space check | Luca Barbieri | 2010-09-04 | 1 | -0/+2 |
| | |||||
* | nvfx: support all possible vs consts | Luca Barbieri | 2010-09-04 | 1 | -10/+5 |
| | | | | | | | | 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. | ||||
* | nvfx: set magic bit to round NPOT mipmap sizes down and not up | Luca Barbieri | 2010-09-04 | 2 | -0/+6 |
| | | | | Does any API even use rounding-up? | ||||
* | nvfx: allow nested blitter usage, fixing bug in clear | Luca Barbieri | 2010-09-04 | 3 | -8/+21 |
| | |||||
* | galahad: do map/unmap counting for resources | Brian Paul | 2010-09-03 | 2 | -0/+18 |
| | |||||
* | libgl-xlib: enable galahad support | Brian Paul | 2010-09-03 | 3 | -1/+18 |
| | | | | | If the GALLIUM_GALAHAD env var is 1 we'll wrap the regular driver with the galahad validation driver. | ||||
* | scons: added galahad to driver list | Brian Paul | 2010-09-03 | 1 | -2/+2 |
| | |||||
* | mesa: also build galahad driver | Brian Paul | 2010-09-03 | 1 | -1/+1 |
| | |||||
* | exec_list: replace class with struct | Brian Paul | 2010-09-03 | 1 | -1/+1 |
| | | | | To match the definition below. | ||||
* | mesa: fix up a comment | Brian Paul | 2010-09-03 | 1 | -1/+2 |
| | |||||
* | st/glx: added some comments | Brian Paul | 2010-09-03 | 1 | -0/+8 |
| | |||||
* | nvfx: implement LIT in fp | Luca Barbieri | 2010-09-03 | 2 | -1/+24 |
| | |||||
* | glsl2: Use as_constant some places instead of constant_expression_value | Ian Romanick | 2010-09-03 | 2 | -3/+3 |
| | | | | | | | | | | | The places where constant_expression_value are still used in loop analysis are places where a new expression tree is created and constant folding won't have happened. This is used, for example, when we try to determine the maximal loop iteration count. Based on review comments by Eric. "...rely on constant folding to have done its job, instead of going all through the subtree again when it wasn't a constant." | ||||
* | glsl2: Allow copy / constant propagation into array indices | Ian Romanick | 2010-09-03 | 2 | -32/+12 |
| |