Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-09-04 | r300/compiler: compute the final number of temporaries during translation | Marek Olšák | |
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. | |||
2010-09-04 | r300/compiler: make optimizations not use 0.5 swizzles in vertex shaders | Marek Olšák | |
2010-09-04 | r300/compiler: use peephole and constant folding for vertex shaders too | Marek Olšák | |
2010-09-04 | r300/compiler: remove unused enum OPCODE_REPL_ALPHA | Marek Olšák | |
We use RC_OPCODE_REPL_ALPHA instead. | |||
2010-09-04 | r300/compiler: refactor fragment shader compilation | Marek Olšák | |
This cleans up the mess in r3xx_compile_fragment_program. | |||
2010-09-04 | r300/compiler: add new compiler parameter max_constants | Marek Olšák | |
2010-09-04 | r300/compiler: refactor vertex shader compilation | Marek Olšák | |
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. | |||
2010-09-04 | r300/compiler: remove a redundant parameter in rc_pair_regalloc | Marek Olšák | |
2010-09-04 | r300/compiler: remove a redundant parameter in rc_dataflow_deadcode | Marek Olšák | |
&c->Base == c. | |||
2010-09-04 | r300/compiler: use null-terminated array of transformation functions | Marek Olšák | |
I need to reduce the number of parameters of each compiler pass function. This is part of a larger cleanup. | |||
2010-09-04 | r300/compiler: add new compiler parameter max_alu_insts | Marek Olšák | |
2010-09-04 | r300/compiler: put emulate_loop_state in radeon_compiler | Marek Olšák | |
2010-08-25 | r300: Remove unnecessary header. | Vinson Lee | |
2010-08-25 | r300/compiler: emulate relative addressing with negative offsets in VS | Marek Olšák | |
3 more piglits, cool. | |||
2010-08-24 | r300/compiler: Silence uninitialized variable warning. | Vinson Lee | |
The variable loops would be used uninitialized if it ever processed a RC_OPCODE_ENDLOOP case first. This patch initalizes the loops variable to NULL and adds an assert at the RC_OPCODE_ENDLOOP case that loops isn't NULL. Silence the following GCC warning. r3xx_vertprog.c: In function 'translate_vertex_program': r3xx_vertprog.c:469: warning: 'loops' may be used uninitialized in this function | |||
2010-08-24 | r300g: Add missing comma in SConscript. | Vinson Lee | |
This is a follow-on patch to commit 574ba4b5f50bfe661427327cd792a8a200559376. Fixes r300g SCons build. | |||
2010-08-25 | r300/compiler: implement elimination of unused constants | Marek Olšák | |
Wine likes to create a *lot* of constants, exceeding the size of the constant file in hw. | |||
2010-08-25 | r300/compiler: terminate vertex shader compilation immediately after an error | Marek Olšák | |
Also rename "compiler" to "c". | |||
2010-08-25 | r300/compiler: fail to compile if we hit hw limits or an unimplemented feature | Marek Olšák | |
i.e. relative addressing (mainly FS), saturate modifiers, exceeding the maximum number of constants. | |||
2010-08-25 | r300/compiler: handle indexable temporaries correctly in deadcode elimination | Marek Olšák | |
2010-08-25 | r300/compiler: disable register allocation for indexable temporaries in VS | Marek Olšák | |
If there is relative addressing of temporaries, we cannot change register indices, so skip register allocation entirely. To utilize register allocation at least partially, we need separate indexable and non-indexable register files in both TGSI and Mesa IR. | |||
2010-08-16 | r300/compiler: implement DP2 opcode | Marek Olšák | |
2010-08-16 | r300/compiler: implement SSG opcode | Marek Olšák | |
2010-08-16 | r300/compiler: fix allocation of temporaries in radeonTransformTEX | Marek Olšák | |
2010-08-12 | r300/compiler: remove an unused variable | Marek Olšák | |
2010-08-11 | r300/compiler: Implement the CONT opcode. | Tom Stellard | |
2010-08-11 | r300/compiler: Handle loops in the register allocator. | Tom Stellard | |
2010-08-11 | r300g: implement gl_FrontFacing | Marek Olšák | |
2010-08-10 | r300/compiler: Use predicate bit for IF statements in r500 vertex shaders | Tom Stellard | |
2010-08-10 | r300/compiler: Implement hardware assisted loops for vertex shaders. | Tom Stellard | |
Single loops work, but nested loops do not. | |||
2010-08-10 | r300/compiler: Correctly transform nested loops. | Tom Stellard | |
2010-08-09 | radeon: Use MESA_FORMAT_SARGB8 for sRGB formats | Henri Verbeet | |
This can be supported on r600 without using the endian swapper, and is a better fit for (typical) uploads using GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV anyway. | |||
2010-08-07 | r300c: do not advertise half float vertex on RV3xx, RS4xx, RC4xx | Marek Olšák | |
Fixes a hardlock. NOTE: this is a candidate for the 7.8 branch, provided the half float vertex is really implemented there. | |||
2010-08-04 | r300/compiler: Remove unnecessary header. | Vinson Lee | |
2010-08-03 | r300/compiler: Always unroll loops when doing loop emulation. | Tom Stellard | |
2010-08-03 | r300/compiler: r500 hw support for break and continue in loops. | Tom Stellard | |
The BGNLOOP and ENDLOOP instructions are now being used correctly, which makes break and continue possible. The deadcode pass has been modified to handle breaks, and the compiler is more careful about which loops are unrolled. | |||
2010-08-03 | r300/compiler: KILP may not always be inside an IF statement. | Tom Stellard | |
2010-08-03 | r300/compiler: Don't unroll loops with continue or break. | Tom Stellard | |
2010-08-02 | radeon: Add DRI2 flush extension support, so we synchronize properly. | Mario Kleiner | |
When a DRI2 swap buffer is pending we need to make sure we have the flush extension so radeon doesn't resume rendering to or reading from the not yet blitted front buffer. This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28341 https://bugs.freedesktop.org/show_bug.cgi?id=28410 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de> | |||
2010-08-02 | Revert "radeon: Add DRI2 flush extension to so we synchronize properly." | Jerome Glisse | |
This reverts commit 8446f257b3e3ca4a3eb2c79bc357e46343e04e87. | |||
2010-08-02 | radeon: Add DRI2 flush extension to so we synchronize properly. | Mario Kleiner | |
When DRI2 swap buffer is pending (copy buffer not pageflipping) we need to make sure we have the flush extension so radeon doesn't resume rendering on the not yet blitted front buffer. Modified version of Jerome's patch to add flush extension in the correct place. This prepares a possible fix for: https://bugs.freedesktop.org/show_bug.cgi?id=28341 https://bugs.freedesktop.org/show_bug.cgi?id=28410 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de> | |||
2010-07-14 | r300/compiler: fix swizzling in the transformation of Abs modifiers | Marek Olšák | |
2010-07-13 | r300/compiler: implement the Abs source operand modifier for vertex shaders | Marek Olšák | |
2010-07-13 | r300/compiler: emulate SIN/COS/SCS in r3xx-r4xx vertex shaders | Marek Olšák | |
Despite the docs, the corresponding hardware instructions are r5xx-only. | |||
2010-07-11 | r300c: Fix vertex data setup for named buffer objects with unaligned offset | Maciej Cencora | |
Candidate for 7.8 branch Signed-off-by: Maciej Cencora <m.cencora@gmail.com> | |||
2010-07-08 | r300/compiler: Add a register rename pass. | Tom Stellard | |
This pass renames register in order to make it easier for the pair scheduler to group TEX instructions together. This fixes fdo bug #28606 | |||
2010-07-08 | r300/compiler: Fix scheduling of TEX instructions. | Tom Stellard | |
The following instruction sequence will no longer be emitted in separate TEX blocks: 0: TEX temp[0].xyz, temp[1].xy__, 2D[0]; 1: TEX temp[1].xyz, temp[2].xy__, 2D[0]; This fixes fdo bug #25109 | |||
2010-07-06 | r300/compiler: Implement KILP opcode. | Tom Stellard | |
Signed-off-by: Marek Olšák <maraeo@gmail.com> | |||
2010-07-03 | r300/compiler: Fix loop unrolling | Tom Stellard | |
2010-07-03 | r300/compiler: Use hardware flow control instructions for loops on r500. | Tom Stellard | |