summaryrefslogtreecommitdiff
path: root/src/mesa/shader/prog_print.c
AgeCommit message (Collapse)Author
2008-11-24mesa: rename program parameter flags to match other Mesa conventionsBrian Paul
2008-11-24mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolationBrian Paul
Plus, update the print/debug code.
2008-11-15Merge commit 'origin/master' into gallium-0.2Keith Whitwell
Conflicts: src/mesa/shader/prog_print.c
2008-11-13mesa: make writemask_string() non-staticBrian Paul
2008-11-13mesa: tweak program register printing for RelAddr caseBrian Paul
2008-11-11Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/shader/prog_execute.c src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
2008-11-11mesa: allow relative indexing into all register files and indirect dst ↵Brian Paul
register indexing
2008-09-18mesa: prefix a bunch of #include lines with "main/".Brian Paul
This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
2008-09-04mesa: fix minor mem leakBrian Paul
2008-07-29mesa: glsl: various writemask/swizzle improvements and clean-upsBrian Paul
2008-07-24mesa: Prefix main includes with dir to avoid conflicts.José Fonseca
Some of the headers in src/mesa/main have pretty common names which easily conflict with third-party code, e.g. config.h
2008-07-18mesa: glsl: various writemask/swizzle improvements and clean-upsBrian Paul
2008-07-15mesa: Silence compiler warnings on Windows.Michal Krol
2008-07-02mesa: added _mesa_print_swizzle() debugging helperBrian Paul
2008-06-12almost forgot - RelAddr is a boolean so use it hereZack Rusin
2008-06-12glsl: implement variable array indexesZack Rusin
2008-06-12almost forgot - RelAddr is a boolean so use it hereZack Rusin
2008-06-12glsl: implement variable array indexesZack Rusin
2008-05-18print vertex.attrib[n] (from master)Brian Paul
2008-05-18clean-ups / additions from gallium-0.1 branchBrian Paul
2008-03-17mesa: Add vertex.attrib 0-15 to arb_input_attrib_string.Markus Amsler
2008-01-16use NEGATE_X/Y/Z/W tokensBrian
2007-10-30special-case KIL/KIL_NVBrian
2007-10-30check for NULL ptr in _mesa_print_parameter_list()Brian
2007-10-26Re-implement GLSL texture sampler variables.Brian
GLSL sampler variables indicate which texture unit to use for TEX instructions. Previously, this was baked into the fragment/vertex program and couldn't be readily changed once set. Now, SamplerUnits[] array indicates which texture unit is to be used for each sampler variable. These values are set with glUniform1i(). This is extra state that must be passed to the fragment/vertex program executor at runtime.
2007-03-28Get rid of BRK0, BRK1, CONT0, CONT1 instructions.Brian
2007-03-28expose _mesa_condcode_string(), fix some printingBrian
2007-03-27fix some printing issues related to subroutinesBrian
2007-03-26s/SUB/BGNSUB/Brian
2007-03-26special case RETBrian
2007-03-23consolidate some codeBrian
2007-03-23Add the ability to generate programs that doesn't use condition codes.Brian
ctx->Shader.EmitCondCodes determines if we use condition codes. If not, IF statement uses first operand's X component as the condition. Added OPCODE_BRK0, OPCODE_BRK1, OPCODE_CONT0, OPCODE_CONT1 to handle the common cases of conditional break/continue.
2007-03-22print conditional writemask, if enabledBrian
2007-02-23re-expose _mesa_print_alu_instruction()Brian
2007-02-22expose _mesa_swizzle_string()Brian
2007-02-22fix negative indentation problemBrian
2007-02-17s/PROG_PRINT_ARB/PROG_PRINT_DEBUG/Brian
2007-02-17Lots of changes to prog_print.c code.Brian
Mainly, allow printing programs in either ARB, NV or "debug" formats.
2007-02-07s/%f/%g/Brian
2007-02-06Implement CONT, improve BRK.Brian
IR_LOOP's BranchNode ptr is the head of a linked list of CONT and BRK nodes. After emitting loop, walk over the linked list, filling in the CONT/BRK instruction's BranchTarget field (location of the ENDLOOP instruction, or one past).
2007-02-05BRK instruction's BranchTarget field now used for efficiently breaking out ↵Brian
of loops. BRK's BranchTarget field actually points to the top of the loop, not the bottom, since we don't know the later's location yet. In the interpreter, basically do an indirect jump to update the PC.
2007-02-05Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.Brian
This allows us to back-patch the IF/ELSE instruction's BranchTarget field to point to the location of the ELSE/ENDIF instructions. No longer have to search for ELSE/ENDIF in the interpreter. Also makes it trivial to translate IF/ELSE instructions into conditional/unconditional BRA instructions.
2007-02-05minor formatting changesBrian
2007-02-05indentation for program instructions (if/else, loops)Brian
2007-01-31Overhaul handling of writemasks/swizzling. This fixes two problem cases:Brian
vec2 v; v.x = v.y = 1.0; // chained assignment vec4 v; v.zx = vec2(a,b); // swizzled writemask
2007-01-20Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.Brian
2007-01-05added PROGRAM_SAMPLERBrian
2007-01-04minor formatting fixBrian
2006-12-20added _mesa_print_parameter_list()Brian
2006-12-18Check for inst->CondUpdate, print .C suffix.Brian