summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300
AgeCommit message (Collapse)Author
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.
2009-07-13r300: cache translated fragment programsMaciej Cencora
2009-07-13r300: update state parameters only once per rendering operationMaciej Cencora
2009-07-13r300: translate non native insts earlier for easier debuggingMaciej Cencora
2009-07-13r300: print vertex program after adding artificial output instsMaciej Cencora
2009-07-13r300: use mesa provided function for adding MVP codeMaciej Cencora
2009-07-13r300: simplify insert_wpos a littleMaciej Cencora
2009-07-12r300: move fallback warnings inside fallback debuggingDave Airlie
random output is bad
2009-07-12r300: fix clear mask to not use sw if not necessaryDave Airlie
2009-07-08r300: fix regression introduced by ca13937ef97c7779f639dcfc95b3798a11de01bdMaciej Cencora
Stride == 0 means that we value for first vertex should be copied to every other vertices (e.g. constant color). This fixes glean/vertProg1 and sauerbraten with enabled shaders.
2009-07-06radeon: ensure cmdbuf space for state + AOS is availableDave Airlie
The problem is if we find out later we don't have any cmdbuf space but we've already written the arrays to the DMA buffer object, we end up emitting the current cmdbuf which has references to the current DMA object we then send that to the hw and we can't reference the arrays we just emitted to the old DMA buffer. things go bad, crash boom. This can probably be tuned further + swtcl probably needs some fixes
2009-07-06radeon/r200/r300: port to new space checking code in libdrmDave Airlie
This moves a big chunk of the space checking code into libdrm so it can be shared by the DDX.