summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300
AgeCommit message (Collapse)Author
2009-07-27r300/vertprog: Cleanup source conflict handlingNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Massively reduce code duplicationNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Use generic transforms and throw away unneeded codeNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Move vertex program compilation to compilerNicolai Hähnle
This is just the first step of refactoring. The separation is not yet clean enough with this commit. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Cleanup vertex_program structureNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove faux lazy translation of vertex programsNicolai Hähnle
De facto, vertex programs were translated immediately in all situations, so let's just stop pretending that we do lazy translation. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Reduce include dependenciesNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Introduce rc_program and use it in radeon_pairNicolai Hähnle
The goal is to convert both Mesa and TGSI programs into an intermediate format that happens to be convenient for us. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Add radeon_compiler as a base for compilation-related tasksNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove some unnecessary includesNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/compiler: Compile the compiler seperately into an archiveNicolai Hähnle
This is all part of untangling the compiler from the classic driver, so that it may be used in Gallium without depending on Mesa stuff if possible Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Further reduce dependency between compiler and classic driverNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove some dependencies on additional fragment program copiesNicolai Hähnle
The copy is still needed because some program transforms add state variables or constants. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove GLcontext from r300_fragment_program_compilerNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove GLcontext requirement from radeonLocalTransformNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove unused enumsNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove GLcontext requirement from radeon_nqssadceNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove GLcontext requirement from radeon_program_pairNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/program_pair: Introduce driver-specific texture instruction structureNicolai Hähnle
This is to prepare more experimentation and possible internal changes in the compiler. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/program_pair: Dynamically allocate instructions temporarilyNicolai Hähnle
In preparation of using TGSI, where we cannot easily predict the number of instructions. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Detangle fragment program compiler from driver-specific structureNicolai Hähnle
This is in preparation of sharing the fragment program compiler with Gallium: Compiler code is moved into its own directory and modified so that it no longer depends on driver structures. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-22r300: fix address register handling in NQSSADCEMaciej Cencora
For address register we always use X component
2009-07-21Track Radeon driver symlinks in Git.Michel Dänzer
2009-07-15r300: emit z depth pitch reloc in preparation for tilingDave Airlie
2009-07-15intel/radeon: add common metaops code.Dave Airlie
Move all the metaops to a dri_metaops file and port radeon/intel to use the new common meta ops code.
2009-07-14radeon: Differentiate 16 bpp destination formats.Michel Dänzer
Fixes those formats in fbo_firecube. Only tested with r300, radeon and r200 compile tested only.
2009-07-14radeon: Invert front face winding when rendering to FBO.Michel Dänzer
Fixes fgl_glxgears and progs/demos/fbotexture after pressing 'c'. Tested with r300, radeon and r200 compile tested only.
2009-07-13r300: always assume all components are read by fragment programMaciej Cencora
Components of input attributes that are used by fragment program aren't part of vertex program key, and that may lead to situations when vertex program writes only TEX1.xy and fragment program reads TEX1.xyz, resulting in rendering errors. Reported-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: Fix fogcoord rewritingNicolai Hähnle
We only care about the actual fogcoord itself now, reducing the rewriting done for the vertex program. The rewriting of source operand swizzles in the fragment program takes care that fogcoord.yzw = 001. This should fix fogcoord rewriting entirely, which had been horribly broken in the face of dot-product instructions, and just broken (though not horribly so) in the face of almost every other instruction (the W component would be incorrect for most arithmetic instructions). Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: fix swizzle masking in getUsedComponentsMaciej Cencora
2009-07-13r300: minor fixMaciej Cencora
Split initializations becase the vars are of different type. Reported-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: move variables declarationsMaciej Cencora
2009-07-13r300: document r300_vertex_program_cont structureMaciej Cencora
Reported-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: document r300_fragment_program_cont structMaciej Cencora
2009-07-13r300: fix indentationMaciej Cencora
Reported-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: fix StrideB == 0 case when converting data formatMaciej Cencora
Reported-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-13r300: hw can handle per component negations in vertex shadersMaciej Cencora
Reported-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-07-13r300: fix WPOS for SWTCLMaciej Cencora
2009-07-13r300: removed unnecessary paramsMaciej Cencora
We don't have check which attributes are used by fragment program - it's already done by NQSSADCE.
2009-07-13r300: use NQSSADCE for vertex programsMaciej Cencora
2009-07-13r300: operate on copy of a program when pairing instructionsMaciej Cencora
We need to keep unpaired program for vertex program NQSSADCE.
2009-07-13r300: handle relative addressing in NQSSADCEMaciej Cencora
2009-07-13r300: handle ARB_vertex_program specific instructions in NQSSADCEMaciej Cencora
2009-07-13r300: move depth output rewrite out of NQSSADCEMaciej Cencora
2009-07-13r300: rewrite FOGC and HPOS attribs handlingMaciej Cencora
Rewrite vertex and fragment programs so that we don't have to do any hacks on lower level.
2009-07-13r300: bind vertex program to fragment programMaciej Cencora
2009-07-13r300: recalculate used inputs and outputs after dead code removalMaciej Cencora
2009-07-13r300: move fragment program selection before vertex program selectionMaciej Cencora
Prepare for wpos and fogc handling rewrite.
2009-07-13r300: implement proper IsProgramNative check for vertex programsMaciej Cencora
2009-07-13r300: don't modify original vertex programMaciej Cencora
Keep the original vertex program untouched because it may be needed after some state change for generating new r300 specific vertex program.