summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/tgsi
Commit message (Collapse)AuthorAgeFilesLines
* tgsi: fix rbug compile errorMarek Olšák2010-12-111-1/+2
| | | | | | | ../mesa/src/gallium/auxiliary/tgsi/tgsi_parse.h:139: error: dereferencing pointer ‘tokens.25’ does break strict-aliasing rules Signed-off-by: Marek Olšák <[email protected]>
* gallium: add PIPE_SHADER_CAP_SUBROUTINESMarek Olšák2010-11-221-0/+2
| | | | | | | | | | | This fixes piglit/glsl-vs-main-return and glsl-fs-main-return for the drivers which don't support RET (i915g, r300g, r600g, svga). ir_to_mesa does not currently generate subroutines, but it's a matter of time till it's added. It would then break all the drivers which don't implement them, so this CAP makes sense. Signed-off-by: Marek Olšák <[email protected]>
* tgsi: Add STENCIL to text parser.Chia-I Wu2010-11-211-1/+2
| | | | | | | | | Fix OpenVG "filter" demo Program received signal SIGSEGV, Segmentation fault. 0xb7153dc9 in str_match_no_case (pcur=0xbfffe564, str=0x0) at tgsi/tgsi_text.c:86 86 while (*str != '\0' && *str == uprcase( *cur )) {
* tgsi: fill out CAPs for indirect addressingMarek Olšák2010-11-121-0/+5
|
* tgsi: remove unused functionBrian Paul2010-11-041-11/+0
|
* tgsi/build: Reduce interface clutter.Michal Krol2010-11-042-541/+367
| | | | Make private those functions that are used internally only.
* tgsi/exec: Get rid of obsolete condition codes.Michal Krol2010-11-042-33/+4
|
* tgsi/exec: Cleanup the remaining arithmetic instructions.Michal Krol2010-11-041-378/+413
| | | | As a result remove some nasty macros.
* tgsi: add scanner support for centroid inputsDave Airlie2010-10-152-0/+2
|
* gallium/tgsi: add support for stencil writes.Dave Airlie2010-10-133-4/+8
| | | | | | this adds the capability + a stencil semantic id, + tgsi scan support. Signed-off-by: Dave Airlie <[email protected]>
* tgsi: Export some names for some tgsi enums.José Fonseca2010-10-112-23/+35
| | | | Useful to give human legible names in other cases.
* ureg: support centroid interpolationLuca Barbieri2010-09-272-9/+31
|
* tgsi: Fix missing test before checkJakob Bornecrantz2010-09-221-1/+2
| | | | | | As introduced with commit d21301675c249602e19310d5b62fad424f2f2ac2 NOTE: This is a candidate for the 7.9 branch.
* tgsi: Remove duplicate case value.Vinson Lee2010-09-201-1/+0
|
* tgsi: Actually care what check_soa_dependencies saysJakob Bornecrantz2010-09-211-17/+39
| | | | | | Thanks to José for the more complete list of supported opcodes. NOTE: This is a candidate for the 7.9 branch.
* tgsi: Don't ignore indirect registers in tgsi_check_soa_dependenciesJosé Fonseca2010-09-211-2/+4
| | | | NOTE: This is a candidate for the 7.9 branch.
* tgsi: add switch/case opcodes to tgsi_opcode_tmp.hLuca Barbieri2010-09-201-0/+4
|
* tgsi/sse: fix aos_to_soa() loop to handle num_inputs==0Brian Paul2010-09-161-6/+9
| | | | | | | | | Basically, change the loop from: do {...} while (--num_inputs != 0) into: while (num_inputs != 0) { ... --num_inputs; } Fixes fd.o bug 29987.
* tgsi: fix incorrect usage_mask for shadow tex instructionsBrian Paul2010-09-151-5/+6
| | | | | | The shadow versions of the texture targets use an extra component (Z) to express distance from light source to the fragment. Fixes the shadowtex demo with llvmpipe.
* gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri2010-09-141-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
* tgsi: Include missing header in tgsi_parse.h.Vinson Lee2010-08-271-0/+1
| | | | Include p_compiler.h for boolean and INLINE symbols.
* tgsi: Include missing header in tgsi_info.h.Vinson Lee2010-08-271-0/+1
| | | | Include p_compiler.h for uint symbol.
* tgsi: Include missing header in tgsi_dump.h.Vinson Lee2010-08-271-0/+1
| | | | Include p_compiler.h for uint symbol.
* tgsi: Include missing header in tgsi_sse2.h.Vinson Lee2010-08-261-1/+4
| | | | | Include p_compiler.h for boolean symbol. Clean up forward declarations.
* tgsi: helper for dumping tokens as hexKeith Whitwell2010-08-252-13/+25
|
* tgsi: fix false CondStackTop==0 assertionBrian Paul2010-08-231-0/+5
|
* gallium: Make printing info on debug builds default offJakob Bornecrantz2010-08-152-2/+2
| | | | | | | 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.
* gallium: remove stray semicolonsBrian Paul2010-08-061-1/+1
|
* tgsi: Fix typo, so we follow what is in the commentsJakob Bornecrantz2010-08-051-1/+1
|
* tgsi: Add option to stop the sanity checker from printingJakob Bornecrantz2010-08-052-1/+15
|
* tgsi: remove incorrect assertionBrian Paul2010-07-301-1/+0
|
* gallium: implement bounds checking for constant buffersBrian Paul2010-07-292-7/+56
| | | | | | Plumb the constant buffer sizes down into the tgsi interpreter where we can do bounds checking. Optional debug code warns upon out-of-bounds reading. Plus add a few other assertions in the TGSI interpreter.
* tgsi: Fix error message on invalid swizzle parseJakob Bornecrantz2010-07-221-1/+1
|
* tgsi: added tgsi_shader_info::indirect_files fieldBrian Paul2010-07-212-0/+19
| | | | Indicates which register files are accessed with indirect addressing.
* tgsi: Remove dead assignment in uprcase function.Vinson Lee2010-07-151-1/+1
|
* tgsi: make sure that we print out the adjacency prims correctlyZack Rusin2010-07-101-1/+5
|
* gallium: add a temporary array register fileZack Rusin2010-06-189-131/+324
| | | | | | | | | | | | | | 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]]
* gallium: add a new register file - immediate arrayZack Rusin2010-06-188-59/+227
| | | | | | 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.
* gs: make sure we end primitives when finishing executing shadersZack Rusin2010-06-151-0/+16
|
* tgsi: support 2d indirect addressingZack Rusin2010-06-115-18/+86
|
* geometry shaders: make gs work with changable primitives and variable number ↵Zack Rusin2010-06-091-1/+1
| | | | | | | | of vertices lots and lots of fixes for geometry shaders. in particular now we work when the gs emits a different primitive than the one the pipeline was started with and also we work when gs emits more vertices than would fit in the original buffer.
* tgsi: null-terminate string in parse_identifierKeith Whitwell2010-06-071-0/+1
| | | | Hit this parsing geometry shader properties.
* tgsi: reject interpolation and semantics on vs inputsKeith Whitwell2010-06-071-2/+6
|
* tgsi: we don't support indirect input/output registers in SSE codegen yetBrian Paul2010-06-031-6/+10
| | | | | | | | Extend the check for indirect addressing of temp regs to include input/output regs. Fixes failure with piglit glsl-texcoord-array.shader_test test when using SSE codegen.
* tgsi: whitespace cleanupBrian Paul2010-06-031-14/+2
|
* tgsi: Drop uses_fogcoord and uses_frontfacing from tgsi_scan.José Fonseca2010-06-012-16/+0
| | | | | | | It was not used anywhere; the code was buggy (it didn't take care of indirect registers and could potential cause buffer underflows) and the same effect can now be easily achieved by just by looking at input_semantic_name[] and input_usage_mask[].
* tgsi: Remove tgsi-instruction-set.txt.José Fonseca2010-06-011-1127/+0
| | | | | Deprecated by tgsi.rst, and no point in keeping it around if it's not being updated.
* tgsi: Determine which shader input channels are effectively.José Fonseca2010-06-014-7/+177
| | | | | | TGSI's UsageMask flag is never set. We can move this logic into tgsi_ureg, but there there are still cases where's not used, so this seems a better place for now.
* tgsi: Implement OPCODE_DIV.Michal Krol2010-05-191-1/+1
|
* tgsi: add a dummy function to silence warningBrian Paul2010-05-141-0/+8
|