summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/tgsi
Commit message (Collapse)AuthorAgeFilesLines
* tgsi/ureg: Fix ureg_emit_src().Michal Krol2009-12-031-3/+1
|
* tgsi: fix ureg emit after version token changeKeith Whitwell2009-12-011-1/+1
|
* Merge commit 'origin/tgsi-simplify-ext'Keith Whitwell2009-12-0117-1172/+517
|\ | | | | | | | | Conflicts: src/gallium/drivers/r300/r300_vs.c
| * tgsi: Remove tgsi_version token.Michal Krol2009-11-2711-72/+18
| |
| * tgsi: Fix token builder.Michal Krol2009-11-252-41/+2
| |
| * tgsi: Update raw token dumper after token definition changes.Michal Krol2009-11-251-116/+32
| |
| * tgsi: rename fields of tgsi_full_src_register to reduce verbosityKeith Whitwell2009-11-2412-210/+210
| | | | | | | | | | | | | | SrcRegister -> Register SrcRegisterInd -> Indirect SrcRegisterDim -> Dimension SrcRegisterDimInd -> DimIndirect
| * tgsi: rename fields of tgsi_full_dst_register to reduce verbosityKeith Whitwell2009-11-2411-98/+98
| | | | | | | | | | DstRegister -> Register DstRegisterInd -> Indirect
| * tgsi: rename fields of tgsi_full_declaration to reduce verbosityKeith Whitwell2009-11-2411-20/+20
| | | | | | | | DeclarationRange -> Range
| * tgsi: rename fields of tgsi_full_instruction to avoid excessive verbosityKeith Whitwell2009-11-2411-105/+105
| | | | | | | | | | | | | | | | InstructionPredicate -> Predicate InstructionLabel -> Label InstructionTexture -> Texture FullSrcRegisters -> Src FullDstRegisters -> Dst
| * tgsi: reduce repetition of structure name in its membersKeith Whitwell2009-11-248-38/+38
| | | | | | | | | | Rename Semantic.SemanticName to Semantic.Name. Similar for SemanticIndex, and the members of the tgsi_version struct.
| * tgsi: remove unnecessary full_token init and free functionsKeith Whitwell2009-11-242-27/+0
| |
| * tgsi: remove unused Flags member from full_instructionKeith Whitwell2009-11-242-3/+0
| |
| * gallium: simplify tgsi tokens furtherKeith Whitwell2009-11-2411-574/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop anonymous 'Extended' fields, have every optional token named explicitly in its parent. Eg. there is now an Instruction.Label flag, etc. Drop destination modifiers and other functionality which cannot be generated by tgsi_ureg.c, which is now the primary way of creating shaders. Pull source modifiers into the source register token, drop the second negate flag. The source register token is now full - if we need to expand it, probably best to move all of the modifiers to a new token and have a single flag for it.
* | tgsi/sanity: Up MAX_REGISTERS to 1024.Michal Krol2009-12-011-1/+1
| |
* | tgsi/exec: Fix orientation of DDY.Michal Krol2009-11-261-1/+1
| |
* | tgsi/exec: Force return from a subroutine at ENDSUB.Michal Krol2009-11-261-1/+27
| |
* | tgsi/ureg: Add forgotten goto in ureg_DECL_constant().Michal Krol2009-11-261-0/+1
|/
* tgsi: Document Declaration Semantic token and FACE semantic name.Michal Krol2009-11-241-0/+32
|
* tgsi: Implement predicated instructions in exec.Michal Krol2009-11-242-5/+48
|
* tgsi: Add ureg_DECL_loop().Michal Krol2009-11-242-0/+25
|
* tgsi: Account for gallium shader token representation changes.Michal Krol2009-11-245-132/+106
|
* tgsi: Clamp the source argument in micro_exp2() to avoid Inf.Michal Krol2009-11-231-0/+18
|
* tgsi: Remove code that actually had no effect.Michal Krol2009-11-231-4/+0
|
* tgsi: Fix POSITION and FACE fragment shader inputs.Michal Krol2009-11-232-36/+42
|
* tgsi: Bring BGNFOR/ENDFOR implementation up to spec.Michal Krol2009-11-232-13/+35
|
* tgsi: Fake TXD implementation in exec.Michal Krol2009-11-231-1/+59
|
* tgsi: Add execution debugging facilities to exec.Michal Krol2009-11-231-4/+63
|
* tgsi: Provide ultimate solution for SOA dependencies in exec.Michal Krol2009-11-191-162/+189
| | | | Reorder STOREs in such a way that they appear after the last FETCH.
* tgsi/exec: Exit early on error.Michal Krol2009-11-101-1/+1
|
* tgsi/ureg: Simplify logic in tokens_expand().Michal Krol2009-11-101-9/+6
|
* tgsi/ureg: Allow for multiple extended instruction tokens.Michal Krol2009-11-042-75/+94
| | | | | For example, we would like to have a predicate and texture token in one instruction to do predicated texture sampling.
* tgsi: Up tgsi_exec's control flow nesting to 32.Michal Krol2009-11-031-3/+3
|
* tgsi/ureg: Add negate and swizzle for predicates.Michal Krol2009-11-022-22/+208
|
* tgsi/ureg: Update for gallium interface changes.Michal Krol2009-11-022-22/+69
|
* tgsi: Update for gallium interface changes.Michal Krol2009-11-0210-542/+137
|
* gallium: remove extended negate also, and also the ExtSwz tokenKeith Whitwell2009-10-238-202/+2
| | | | | | Likewise, the extended negate functionality hasn't been used since mesa switched to using tgsi_ureg to build programs, and has been translating the SWZ opcode internally to a single MAD.
* gallium: remove the swizzling parts of ExtSwizzleKeith Whitwell2009-10-2313-262/+38
| | | | | | | | | These haven't been used by the mesa state tracker since the conversion to tgsi_ureg, and it seems that none of the other state trackers are using it either. This helps simplify one of the biggest suprises when starting off with TGSI shaders.
* gallium: remove noise opcodesKeith Whitwell2009-10-233-24/+4
| | | | | | | | | | | Provide a dummy implementation in the GL state tracker (move 0.5 to the destination regs). At some point, a motivated person could add a better implementation of noise. Currently not even the nvidia binary drivers do anything more than this. In any case, the place to do this is in the GL state tracker, not the poor driver.
* Merge branch 'mesa_7_6_branch'Brian Paul2009-09-241-5/+5
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/r600/r700_assembler.c src/mesa/drivers/dri/r600/r700_chip.c src/mesa/drivers/dri/r600/r700_render.c src/mesa/drivers/dri/r600/r700_vertprog.c src/mesa/drivers/dri/r600/r700_vertprog.h src/mesa/drivers/dri/radeon/radeon_span.c
| * tgsi/sse: Pass the lodbias, not zero. More comments.Brian Paul2009-09-241-5/+5
| | | | | | | | This fixes the glean/glsl1 "texture2D(), with bias" test when using SSE.
* | tgsi/sse: remove old commentsBrian Paul2009-09-241-8/+0
| |
* | tgsi/sse: implement SEQ, SGT, SLE, SNEBrian Paul2009-09-241-4/+4
| |
* | tgsi: Scan input interpolators, too.Michal Krol2009-09-172-0/+2
| |
* | tgsi: handle some src/dst aliasing in tgsi_sse2.cKeith Whitwell2009-09-131-8/+23
| | | | | | | | | | | | | | | | | | | | | | | | Src/Dst aliasing (aka SOA dependencies) requires some care to ensure intermediate results do not overwrite yet-to-be read source registers. This change ensures that MOV/SWZ handle this correctly, which is poor but no worse than the current tgsi_exec.c path. Remove the fallback as there is nothing to be gained correctness-wise between the two implementations now. Fixing this properly looks like a bit of work in this code, but might be easily achieved by sending destination writes to temporary storage.
* | tgsi: implement saturationKeith Whitwell2009-09-121-17/+26
| | | | | | | | Fix recent performance regression.
* | tgsi: add missing implementation of constant decl changeKeith Whitwell2009-09-121-8/+61
| |
* | ureg: add a mechanism to get the built tokens rather than a full shaderKeith Whitwell2009-09-122-0/+30
| | | | | | | | | | | | Previously ureg would always call the driver's create-shader function. This allows the caller the opportunity to hold onto the tokens if it needs to reuse them, eg. to create an internal draw shader.
* | ureg: add generic emitters for tex and branch instructionsKeith Whitwell2009-09-122-11/+80
| | | | | | | | Couldn't previously emit these except by calling the opcode-specific helper.
* | tgsi/ureg: give ureg_DECL_constant an explicit index parameterKeith Whitwell2009-09-122-2/+6
| | | | | | | | | | Avoid the need to emit all constant declarations in order. Makes referring to a specific constant in the constant buffer much easier.