summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/tgsi/tgsi_sanity.c
AgeCommit message (Collapse)Author
2010-08-15gallium: Make printing info on debug builds default offJakob Bornecrantz
This commit silences the printing off most of the debug information when running debug builds. The big culprits are: the tgsi sanity checker that gets run on all shaders on debug; all the options; and finaly the cpu caps printer.
2010-08-06gallium: remove stray semicolonsBrian Paul
2010-08-05tgsi: Fix typo, so we follow what is in the commentsJakob Bornecrantz
2010-08-05tgsi: Add option to stop the sanity checker from printingJakob Bornecrantz
2010-06-18gallium: add a temporary array register fileZack Rusin
like normal temporaries, but allows to define a number of distinct arrays, all of which make it explicit that they contain /indexable/ registers. as a side-effect we're adding support for multi-dimensional destination registers. The whole thing looks like this: DCL TEMPX[0][0..128] # 0 array with 128 registers ADD TEMPX[0][0], IN[0], IMM[0] ADD TEMPX[0][1], IN[0], IMM[0] ABS OUT[0], TEMPX[0][TEMP[0]]
2010-06-18gallium: add a new register file - immediate arrayZack Rusin
allows one to specify a safe (bound checked) array filled with immediates. it works just like a const array and declares much like our current immediates.
2010-06-11tgsi: support 2d indirect addressingZack Rusin
2010-05-03gallium: Remove loop register file.José Fonseca
It was only used for D3D's REP/END/BGNFOR/ENDFOR. D3D's aL register is just like another address register now.
2010-04-27tgsi: Drop BGNFOR, ENDFOR, REP, and ENDREP opcodes.José Fonseca
2010-02-22tgsi: Report an error when a destination has an empty writemask.José Fonseca
2010-01-28tgsi: Handle 2-D declarations.Michal Krol
2010-01-18tgsi: Fix behaviour of dimension index.Michal Krol
The dimension index always addresses the second-dimension axis.
2010-01-18tgsi: Allow TEMPORARY registers as indirect address into source operands.Michal Krol
2010-01-15tgsi: Fix sanity checks for indirect registers.Michal Krol
2010-01-07tgsi: add assertion to verify legal register fileBrian Paul
This assertion fails with piglit glsl-vs-mov-after-deref test because we're double freeing the memory. It seems there's some confusion between what's placed in the hash table and what isn't.
2010-01-07tgsi: fix incorrectly placed braces, add more braces to be clearBrian Paul
2010-01-07tgsi: move register checking code before check_register_usage()Brian Paul
check_register_usage() frees the scan_register *reg data so we were reading from freed memory. This fixes a valgrind error found with piglit's glsl-vs-mov-after-deref test.
2010-01-05tgsi: Use FREE() to release MALLOC-ed() memories in sanity.Michal Krol
2010-01-05tgsi: Fix bogus loop condition in sanity.Michal Krol
2010-01-05tgsi: Support signed/unsigned integer immediate types.Michal Krol
2009-12-25util: put vertices_per_primitive function in its proper locationZack Rusin
2009-12-25tgsi: add missing support for two dimensional arrays in various placesZack Rusin
in particular asm text parsing and sanity checking were missing code to handle multi-dimensional arrays/geometry shaders
2009-12-14tgsi: add properties and system value registerZack Rusin
adds support for properties to all parts of the tgsi framework, plus introduces a new register which will be used for system generated values.
2009-12-01Merge commit 'origin/tgsi-simplify-ext'Keith Whitwell
Conflicts: src/gallium/drivers/r300/r300_vs.c
2009-12-01tgsi/sanity: Up MAX_REGISTERS to 1024.Michal Krol
2009-11-24tgsi: rename fields of tgsi_full_src_register to reduce verbosityKeith Whitwell
SrcRegister -> Register SrcRegisterInd -> Indirect SrcRegisterDim -> Dimension SrcRegisterDimInd -> DimIndirect
2009-11-24tgsi: rename fields of tgsi_full_dst_register to reduce verbosityKeith Whitwell
DstRegister -> Register DstRegisterInd -> Indirect
2009-11-24tgsi: rename fields of tgsi_full_declaration to reduce verbosityKeith Whitwell
DeclarationRange -> Range
2009-11-24tgsi: rename fields of tgsi_full_instruction to avoid excessive verbosityKeith Whitwell
InstructionPredicate -> Predicate InstructionLabel -> Label InstructionTexture -> Texture FullSrcRegisters -> Src FullDstRegisters -> Dst
2009-11-02tgsi: Update for gallium interface changes.Michal Krol
2009-09-12tgsi: add const qualifierKeith Whitwell
2009-09-03aux/tgsi: pull back ureg work from 0.1 branchKeith Whitwell
Manual merge of ureg changes on the branch. Too much unrelated stuff for a proper merge.
2009-07-31Rename TGSI LOOP instruction to better match theri usage.Michal Krol
The LOOP/ENDLOOP pair is renamed to BGNFOR/ENDFOR as its behaviour is similar to a C language for-loop. The BGNLOOP2/ENDLOOP2 pair is renamed to BGNLOOP/ENDLOOP as now there is no name collision.
2009-07-30tgsi: Add proper constraints to sanity.Michal Krol
2009-07-30tgsi: Declare a LOOP register.Michal Krol
The only valid usage for LOOP/ENDLOOP instructions is LOOP[0] as a destination register. The only valid usage for the remaining instructions is LOOP[0].x as an indirect register.
2009-02-28tgsi: More descriptive sanity diagnostic messages.Michal Krol
2009-02-18util: Move p_debug.h into util module.José Fonseca
The debug functions depend on several util function for os abstractions, and these depend on debug functions, so a seperate module is not possible.
2008-11-05gallium: don't range check tgsi register index for indirect accessesBrian
Fixes progs/vp/arl.txt test.
2008-09-17gallium: fix tgsi sanity checker with respect to END.Brian Paul
Subroutine code may be found after the END instruction so it's not always the last instruction. At least check for presence of exactly one END instruction though.
2008-09-16tgsi: Make tgsi_sanity.c compile with makeJakob Bornecrantz
2008-09-10tgsi: Fix newline pos.José Fonseca
2008-08-13tgsi: Validate instruction opcode and operand counts.Michal Krol
2008-07-28Merge tgsi/exec and tgsi/util directories.José Fonseca