summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/tgsi
AgeCommit message (Collapse)Author
2010-09-22tgsi: Fix missing test before checkJakob Bornecrantz
As introduced with commit d21301675c249602e19310d5b62fad424f2f2ac2 NOTE: This is a candidate for the 7.9 branch.
2010-09-20tgsi: Remove duplicate case value.Vinson Lee
2010-09-21tgsi: Actually care what check_soa_dependencies saysJakob Bornecrantz
Thanks to José for the more complete list of supported opcodes. NOTE: This is a candidate for the 7.9 branch.
2010-09-21tgsi: Don't ignore indirect registers in tgsi_check_soa_dependenciesJosé Fonseca
NOTE: This is a candidate for the 7.9 branch.
2010-09-20tgsi: add switch/case opcodes to tgsi_opcode_tmp.hLuca Barbieri
2010-09-16tgsi/sse: fix aos_to_soa() loop to handle num_inputs==0Brian Paul
Basically, change the loop from: do {...} while (--num_inputs != 0) into: while (num_inputs != 0) { ... --num_inputs; } Fixes fd.o bug 29987.
2010-09-15tgsi: fix incorrect usage_mask for shadow tex instructionsBrian Paul
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.
2010-09-14gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri
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
2010-08-27tgsi: Include missing header in tgsi_parse.h.Vinson Lee
Include p_compiler.h for boolean and INLINE symbols.
2010-08-27tgsi: Include missing header in tgsi_info.h.Vinson Lee
Include p_compiler.h for uint symbol.
2010-08-27tgsi: Include missing header in tgsi_dump.h.Vinson Lee
Include p_compiler.h for uint symbol.
2010-08-26tgsi: Include missing header in tgsi_sse2.h.Vinson Lee
Include p_compiler.h for boolean symbol. Clean up forward declarations.
2010-08-25tgsi: helper for dumping tokens as hexKeith Whitwell
2010-08-23tgsi: fix false CondStackTop==0 assertionBrian Paul
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-07-30tgsi: remove incorrect assertionBrian Paul
2010-07-29gallium: implement bounds checking for constant buffersBrian Paul
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.
2010-07-22tgsi: Fix error message on invalid swizzle parseJakob Bornecrantz
2010-07-21tgsi: added tgsi_shader_info::indirect_files fieldBrian Paul
Indicates which register files are accessed with indirect addressing.
2010-07-15tgsi: Remove dead assignment in uprcase function.Vinson Lee
2010-07-10tgsi: make sure that we print out the adjacency prims correctlyZack Rusin
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-15gs: make sure we end primitives when finishing executing shadersZack Rusin
2010-06-11tgsi: support 2d indirect addressingZack Rusin
2010-06-09geometry shaders: make gs work with changable primitives and variable number ↵Zack Rusin
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.
2010-06-07tgsi: null-terminate string in parse_identifierKeith Whitwell
Hit this parsing geometry shader properties.
2010-06-07tgsi: reject interpolation and semantics on vs inputsKeith Whitwell
2010-06-03tgsi: we don't support indirect input/output registers in SSE codegen yetBrian Paul
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.
2010-06-03tgsi: whitespace cleanupBrian Paul
2010-06-01tgsi: Drop uses_fogcoord and uses_frontfacing from tgsi_scan.José Fonseca
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[].
2010-06-01tgsi: Remove tgsi-instruction-set.txt.José Fonseca
Deprecated by tgsi.rst, and no point in keeping it around if it's not being updated.
2010-06-01tgsi: Determine which shader input channels are effectively.José Fonseca
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.
2010-05-19tgsi: Implement OPCODE_DIV.Michal Krol
2010-05-14tgsi: add a dummy function to silence warningBrian Paul
2010-05-12tgsi: also count instructions in tgsi_scan_shader()Brian Paul
2010-05-12softpipe: Adverstise (tgsi_exec's) shader limits.José Fonseca
2010-05-11mesa/st+tgsi: Provide a free callback to match with ureg_get_tokens().José Fonseca
This fixes crashes with the memory debugging routines on Windows. NOTE: This is a candidate for the 7.8 stable branch
2010-05-07tgis: fix SOA aliasing for MUL instruction in SSE codegenBrian Paul
Part of a fix for piglit trinity-fp1 test failure.
2010-05-06tgsi: make SSE ADD instruction SOA-safeBrian Paul
To properly execute an instruction such as "ADD tmp, tmp.wzyx, foo;" with SOA we (sometimes) need to put the results into temporaries before writing the results to the destination register. This patch fixes the ADD instruction but this needs to be done for many more instructions. Helps to fix piglit fp-long-alu test (fd.o bug 27989).
2010-05-06tgsi: code refactoringBrian Paul
2010-05-06tgsi: added tgsi_get_processor_name()Brian Paul
2010-05-06tgsi: fix tgsi_exec_machine_bind_shader() to handle NULL tokens, samplersBrian Paul
This lets us unbind a shader from the tgsi_exec_machine. Since shaders aren't ref counted we need this to properly clean up when deleting shaders elsewhere.
2010-05-06gallium/tgsi: remove unused tgsi_exec_labels codeBrian Paul
2010-05-05tgsi: make dumping work on non-debug buildsMarek Olšák
2010-05-03tgsi: Parse and dump predicates.José Fonseca
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.