summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* r300/compiler: use limits from the compiler input instead of inline constantsMarek Olšák2010-09-041-5/+4
|
* r300/compiler: improve register allocation with indexable temporaries for VSMarek Olšák2010-09-041-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 peepholeMarek Olšák2010-09-041-1/+9
|
* r300/compiler: disable deadcode elimination for indexed dst operandsMarek Olšák2010-09-041-0/+14
|
* r300/compiler: allocate at least FS inputs if register allocation is disabledMarek Olšák2010-09-043-9/+52
|
* r300g: add a new debug option which disables compiler optimizationsMarek Olšák2010-09-0410-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 translationMarek Olšák2010-09-041-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 shadersMarek Olšák2010-09-047-1/+8
|
* r300/compiler: use peephole and constant folding for vertex shaders tooMarek Olšák2010-09-041-1/+3
|
* r300/compiler: remove unused enum OPCODE_REPL_ALPHAMarek Olšák2010-09-041-5/+0
| | | | We use RC_OPCODE_REPL_ALPHA instead.
* r300/compiler: refactor fragment shader compilationMarek Olšák2010-09-0419-165/+85
| | | | This cleans up the mess in r3xx_compile_fragment_program.
* r300/compiler: add new compiler parameter max_constantsMarek Olšák2010-09-048-10/+18
|
* r300/compiler: refactor vertex shader compilationMarek Olšák2010-09-0418-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_regallocMarek Olšák2010-09-043-3/+4
|
* r300/compiler: remove a redundant parameter in rc_dataflow_deadcodeMarek Olšák2010-09-044-5/+5
| | | | &c->Base == c.
* r300/compiler: use null-terminated array of transformation functionsMarek Olšák2010-09-044-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 errorsMarek Olšák2010-09-041-8/+8
|
* r300/compiler: add new compiler parameter max_alu_instsMarek Olšák2010-09-0412-35/+38
|
* r300/compiler: put emulate_loop_state in radeon_compilerMarek Olšák2010-09-047-24/+20
|
* ir_reader: Run ir_validate on the generated IR.Kenneth Graunke2010-09-041-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 Graunke2010-09-041-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 Graunke2010-09-041-6/+4
|
* glsl: Regenerate autogenerated file builtin_function.cpp.Kenneth Graunke2010-09-041-402/+390
|
* glsl/builtins: Convert assignments to new format (with write mask).Kenneth Graunke2010-09-0415-398/+389
|
* ir_reader: Read the new assignment format (with write mask).Kenneth Graunke2010-09-041-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 Graunke2010-09-041-0/+6
|
* glsl/builtins: Actually print the info log if reading a builtin failed.Kenneth Graunke2010-09-041-0/+1
|
* nvfx: consolidate tiny filesLuca Barbieri2010-09-049-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_imageLuca Barbieri2010-09-041-0/+2
| | | | Fixes piglit fdo25614-genmipmap.
* nvfx: fix vp DP2Luca Barbieri2010-09-041-1/+1
|
* nvfx: implement fp SSG properlyLuca Barbieri2010-09-041-5/+18
|
* nvfx: don't claim we support preds since the driver doesn'tLuca Barbieri2010-09-041-2/+2
|
* nv40: support all 10 texcoordsLuca Barbieri2010-09-043-12/+19
|
* nvfx: add missing context initLuca Barbieri2010-09-041-0/+3
|
* nvfx: tidy up state_emitLuca Barbieri2010-09-041-76/+84
|
* nvfx: support all coord conventions in hardwareLuca Barbieri2010-09-046-5/+41
|
* nvfx: add missing pushbuffer space checkLuca Barbieri2010-09-041-0/+2
|
* nvfx: support all possible vs constsLuca Barbieri2010-09-041-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 upLuca Barbieri2010-09-042-0/+6
| | | | Does any API even use rounding-up?
* nvfx: allow nested blitter usage, fixing bug in clearLuca Barbieri2010-09-043-8/+21
|
* galahad: do map/unmap counting for resourcesBrian Paul2010-09-032-0/+18
|
* libgl-xlib: enable galahad supportBrian Paul2010-09-033-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 listBrian Paul2010-09-031-2/+2
|
* mesa: also build galahad driverBrian Paul2010-09-031-1/+1
|
* exec_list: replace class with structBrian Paul2010-09-031-1/+1
| | | | To match the definition below.
* mesa: fix up a commentBrian Paul2010-09-031-1/+2
|
* st/glx: added some commentsBrian Paul2010-09-031-0/+8
|
* nvfx: implement LIT in fpLuca Barbieri2010-09-032-1/+24
|
* glsl2: Use as_constant some places instead of constant_expression_valueIan Romanick2010-09-032-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 indicesIan Romanick2010-09-032-32/+12
|