Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-07-03 | r300/compiler: Don't continue copy propagation inside loops. | Tom Stellard | |
2010-07-03 | r300/compiler: Print debug info for flow control instructions. | Tom Stellard | |
2010-07-03 | r300/compiler: Enable hardware IF statements for r500 cards. | Tom Stellard | |
2010-07-03 | r300/compiler: In the peephole optimizer, ELSE should mark the end of a | Tom Stellard | |
block. | |||
2010-07-03 | r300/compiler: Correctly calculate the max number of iterations for loops. | Tom Stellard | |
2010-07-03 | r300/compiler: Handle loops in deadcode analysis. | Tom Stellard | |
This also allows us to split the loop emulation into two phases. A tranformation phase which either unrolls loops or prepares them to be emulated, and the emulation phase which unrolls remaining loops until the instruction limit is reached. The second phase is completed after the deadcode analysis in order to get a more accurate count of the number of instructions in the body of loops. | |||
2010-06-23 | r300/compiler: allow 1024 instructions in r5xx vertex shaders | Marek Olšák | |
2010-06-23 | r300/compiler: allow 32 temporaries in vertex shaders | Marek Olšák | |
2010-06-23 | r300/compiler: emulate loops in vertex shaders | Marek Olšák | |
It is not perfect, but it is the best we got. | |||
2010-06-12 | r300/compiler: fix scons build | Joakim Sindholt | |
2010-06-11 | r300/compiler: Handle more complex conditionals in loops. | Tom Stellard | |
2010-06-11 | r300/compiler: Fix warning. | Tom Stellard | |
2010-06-11 | r300/compiler: Handle SGT and SLE at the beginning of loops. | Tom Stellard | |
2010-06-11 | r300/compiler: Verify assumptions about opcode types. | Tom Stellard | |
2010-06-11 | r300/compiler: Unroll loops that decrement the counter. | Tom Stellard | |
e.g. for(i=10; i>0; i--) | |||
2010-06-11 | r300/compiler: Unroll loops that have a constant number of iterations. | Tom Stellard | |
This only works with for loops that increment the counter. e.g. for(i=0; i<10; i++) | |||
2010-06-11 | r300/compiler: Implement simple loop emulation | Tom Stellard | |
The loop emulation unrolls loops as may times as possbile while still keeping the shader program below the maximum instruction limit. At this point, there are no checks for constant conditionals. This is only enabled for fragment shaders. | |||
2010-06-05 | r300compiler: fix scons build | Joakim Sindholt | |
2010-06-05 | r300/compiler: implement SIN+COS+SCS for vertex shaders | Marek Olšák | |
2010-06-05 | r300/compiler: implement SNE unwound for r3xx VS, natively for r5xx VS | Marek Olšák | |
2010-06-05 | r300/compiler: implement SEQ unwound for r3xx VS, natively for r5xx VS | Marek Olšák | |
Fixes piglit/glsl-vs-vec4-indexing-4. | |||
2010-06-05 | r300/compiler: implement SFL for vertex shaders | Marek Olšák | |
And sort the "case" statements alphabetically. | |||
2010-06-03 | r300/compiler: print opcode names instead of numbers | Marek Olšák | |
2010-05-26 | r300/compiler: implement SGT+SLE opcodes | Marek Olšák | |
Reported-by: Gianluca Anzolin <gianluca@sottospazio.it> | |||
2010-05-26 | r300/compiler: fix dumping r5xx vertex shaders | Marek Olšák | |
2010-05-26 | r300/compiler: move hardware caps to the radeon_compiler base struct | Marek Olšák | |
Needed for vertex shaders too. | |||
2010-05-26 | r300/compiler: shorten swizzle expressions | Marek Olšák | |
2010-05-19 | r300/compiler: Implement constant folding | Nicolai Hähnle | |
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> | |||
2010-05-19 | r300/compiler: Emit 0.5 swizzle when necessary. | Tom Stellard | |
Signed-off-by: Marek Olšák <maraeo@gmail.com> | |||
2010-05-16 | r300/compiler: fix peephole optimizer | Tom Stellard | |
Tested-by: Marek Olšák <maraeo@gmail.com> | |||
2010-05-16 | r300/compiler: Implement simple peephole optimizer | Nicolai Hähnle | |
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> | |||
2010-05-15 | r300/compiler: silence a warning | Marek Olšák | |
2010-05-08 | r300g: respect compare mode regardless of sampler type | Marek Olšák | |
2010-05-08 | r300/compiler: fake equal/notequal for shadow samplers | Marek Olšák | |
This is actually better than a real implementation, which would be useless due to inaccuracy (I know because I've tried to implement it). | |||
2010-05-08 | r300/compiler: use perspective division only for TXP in shadow samplers | Marek Olšák | |
2010-05-08 | r300/compiler: make shadow sampler codegen more readable, add comments | Marek Olšák | |
2010-05-08 | r300/compiler: shorten RC_*SWIZZLE* expressions | Marek Olšák | |
2010-05-08 | r300/compiler: generalize depth texture mode to support arbitrary swizzles | Marek Olšák | |
2010-05-08 | r300/compiler: fix LIT instruction case 0^0 = 1 | Marek Olšák | |
2010-04-19 | r300/compiler: lower CEIL | Marek Olšák | |
2010-04-19 | r300/compiler: enable branch emulation for vertex shaders | Marek Olšák | |
2010-04-19 | r300/compiler: optimize CMP for vertex shaders a bit | Marek Olšák | |
2010-04-19 | r300/compiler: Use memory_pool_array_reserve in deadcode elimination | Nicolai Hähnle | |
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> | |||
2010-04-19 | r300/compiler: Use memory_pool_array_reserve in r500-fragprog_emit | Nicolai Hähnle | |
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> | |||
2010-04-19 | r300/compiler: enable branch emulation for R500 fragment programs | Marek Olšák | |
2010-04-19 | r300/compiler: Implement branch emulation for R300 fragment programs | Nicolai Hähnle | |
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> | |||
2010-04-17 | r300/compiler: Remove unnecessary header. | Vinson Lee | |
2010-04-16 | r300/compiler: Add radeon_program_tex.c to SCons build. | Vinson Lee | |
This was missed in commit f8a14186809356871ae74159c774e9e3959a22e5. | |||
2010-04-17 | r300/compiler: add emulation of all mirrored-clamp wrap modes for NPOT textures | Marek Olšák | |
2010-04-17 | r300/compiler: replace mirrored-repeat emulation with a faster version | Marek Olšák | |
Also, the Negate bitfield was 1 instead of RC_MASK_XYZ in the previous version, causing incorrect rendering. |