summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300
AgeCommit message (Collapse)Author
2010-07-06r300/compiler: Implement KILP opcode.Tom Stellard
Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-07-03r300/compiler: Fix loop unrollingTom Stellard
2010-07-03r300/compiler: Use hardware flow control instructions for loops on r500.Tom Stellard
2010-07-03r300/compiler: Don't continue copy propagation inside loops.Tom Stellard
2010-07-03r300/compiler: Print debug info for flow control instructions.Tom Stellard
2010-07-03r300/compiler: Enable hardware IF statements for r500 cards.Tom Stellard
2010-07-03r300/compiler: In the peephole optimizer, ELSE should mark the end of aTom Stellard
block.
2010-07-03r300/compiler: Correctly calculate the max number of iterations for loops.Tom Stellard
2010-07-03r300/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-23Merge branch 'shader-file-reorg'Brian Paul
1. Move all GL entrypoint functions and files into src/mesa/main/ This includes the ARB vp/vp, NV vp/fp, ATI fragshader and GLSL bits that were in src/mesa/shader/ 2. Move src/mesa/shader/slang/ to src/mesa/slang/ to reduce the tree depth 3. Rename src/mesa/shader/ to src/mesa/program/ since all the remaining files are concerned with GPU programs. 4. Misc code refactoring. In particular, I got rid of most of the GLSL-related ctx->Driver hook functions. None of the drivers used them. Conflicts: src/mesa/drivers/dri/i965/brw_context.c
2010-06-23r300/compiler: allow 1024 instructions in r5xx vertex shadersMarek Olšák
2010-06-23r300/compiler: allow 32 temporaries in vertex shadersMarek Olšák
2010-06-23r300/compiler: emulate loops in vertex shadersMarek Olšák
It is not perfect, but it is the best we got.
2010-06-12r300/compiler: fix scons buildJoakim Sindholt
2010-06-11r300/compiler: Handle more complex conditionals in loops.Tom Stellard
2010-06-11r300/compiler: Fix warning.Tom Stellard
2010-06-11r300/compiler: Handle SGT and SLE at the beginning of loops.Tom Stellard
2010-06-11r300/compiler: Verify assumptions about opcode types.Tom Stellard
2010-06-11r300/compiler: Unroll loops that decrement the counter.Tom Stellard
e.g. for(i=10; i>0; i--)
2010-06-11r300/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-11r300/compiler: Implement simple loop emulationTom 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-10mesa: rename src/mesa/shader/ to src/mesa/program/Brian Paul
2010-06-05r300compiler: fix scons buildJoakim Sindholt
2010-06-05r300/compiler: implement SIN+COS+SCS for vertex shadersMarek Olšák
2010-06-05r300/compiler: implement SNE unwound for r3xx VS, natively for r5xx VSMarek Olšák
2010-06-05r300/compiler: implement SEQ unwound for r3xx VS, natively for r5xx VSMarek Olšák
Fixes piglit/glsl-vs-vec4-indexing-4.
2010-06-05r300/compiler: implement SFL for vertex shadersMarek Olšák
And sort the "case" statements alphabetically.
2010-06-03r300/compiler: print opcode names instead of numbersMarek Olšák
2010-05-29r300: fix blits for textures of width/height greater than 2048 on r5xxMarek Olšák
Yes I am fixing r300c ... who knew?
2010-05-26r300/compiler: implement SGT+SLE opcodesMarek Olšák
Reported-by: Gianluca Anzolin <gianluca@sottospazio.it>
2010-05-26r300/compiler: fix dumping r5xx vertex shadersMarek Olšák
2010-05-26r300/compiler: move hardware caps to the radeon_compiler base structMarek Olšák
Needed for vertex shaders too.
2010-05-26r300/compiler: shorten swizzle expressionsMarek Olšák
2010-05-19r300/compiler: Implement constant foldingNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2010-05-19r300/compiler: Emit 0.5 swizzle when necessary.Tom Stellard
Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-05-16r300/compiler: fix peephole optimizerTom Stellard
Tested-by: Marek Olšák <maraeo@gmail.com>
2010-05-16r300/compiler: Implement simple peephole optimizerNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2010-05-15r300/compiler: silence a warningMarek Olšák
2010-05-08r300g: respect compare mode regardless of sampler typeMarek Olšák
2010-05-08r300/compiler: fake equal/notequal for shadow samplersMarek 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-08r300/compiler: use perspective division only for TXP in shadow samplersMarek Olšák
2010-05-08r300/compiler: make shadow sampler codegen more readable, add commentsMarek Olšák
2010-05-08r300/compiler: shorten RC_*SWIZZLE* expressionsMarek Olšák
2010-05-08r300/compiler: generalize depth texture mode to support arbitrary swizzlesMarek Olšák
2010-05-08r300/compiler: fix LIT instruction case 0^0 = 1Marek Olšák
2010-05-02Merge branch 'gles2-2'Kristian Høgsberg
Conflicts: src/mesa/drivers/dri/common/dri_util.h
2010-04-28dri: Add DRI entrypoints to create a context for a given APIKristian Høgsberg
2010-04-22Merge branch '7.8'Brian Paul
Conflicts: src/mesa/state_tracker/st_format.c
2010-04-22r300: fix vertex unit setupAlex Deucher
RV3xx is 2, RV560,RV570 is 8 Noticed by Tormod Volden.
2010-04-19r300/compiler: lower CEILMarek Olšák