summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/decode/texture.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-03-31shader_ir/decode: Silent implicit sign conversion warningMat M1-2/+2
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-03-30shader_ir/decode: Implement AOFFI for TEX and TLD4ReinUsesLisp1-24/+88
2019-02-26shader/decode: Remove extras from MetaTextureReinUsesLisp1-14/+23
2019-02-26shader/decode: Split memory and texture instructions decodingReinUsesLisp1-210/+3
2019-02-14shader_decompiler: Improve Accuracy of Attribute Interpolation.Fernando Sahmkow1-1/+1
2019-02-12gl_shader_decompiler: Re-implement TLDS lodReinUsesLisp1-1/+1
2019-02-07shader_ir: Remove F4 prefix to texture operationsReinUsesLisp1-8/+7
This was originally included because texture operations returned a vec4. These operations now return a single float and the F4 prefix doesn't mean anything.
2019-02-07shader_ir: Clean texture management codeReinUsesLisp1-96/+58
Previous code relied on GLSL parameter order (something that's always ill-formed on an IR design). This approach passes spatial coordiantes through operation nodes and array and depth compare values in the the texture metadata. It still contains an "extra" vector containing generic nodes for bias and component index (for example) which is still a bit ill-formed but it should be better than the previous approach.
2019-02-03Fix TXQ not using the component mask.Fernando Sahmkow1-6/+9
2019-02-03shader_ir/memory: Add ST_L 64 and 128 bits storesReinUsesLisp1-3/+11
2019-02-03shader_ir: Rename BasicBlock to NodeBlockReinUsesLisp1-5/+4
It's not always used as a basic block. Rename it for consistency.
2019-02-03shader_ir: Pass decoded nodes as a whole instead of per basic blocksReinUsesLisp1-2/+3
Some games call LDG at the top of a basic block, making the tracking heuristic to fail. This commit lets the heuristic the decoded nodes as a whole instead of per basic blocks. This may lead to some false positives but allows it the heuristic to track cases it previously couldn't.
2019-02-03shader_ir/memory: Add LD_L 128 bits loadsReinUsesLisp1-7/+19
2019-02-03shader_bytecode: Rename BytesN enums to BitsNReinUsesLisp1-4/+4
2019-02-03shader_ir/memory: Add LD_L 64 bits loadsReinUsesLisp1-6/+17
2019-01-30shader_ir: Unify constant buffer offset valuesReinUsesLisp1-3/+3
Constant buffer values on the shader IR were using different offsets if the access direct or indirect. cbuf34 has a non-multiplied offset while cbuf36 does. On shader decoding this commit multiplies it by four on cbuf34 queries.
2019-01-30shader_decode: Implement LDG and basic cbuf trackingReinUsesLisp1-0/+49
2019-01-15shader_ir: Pass to decoder functions basic block's codeReinUsesLisp1-1/+1
2019-01-15shader_ir: Remove composite primitives and use temporals insteadReinUsesLisp1-145/+149
2019-01-15shader_decode: Use proper primitive namesReinUsesLisp1-2/+2
2019-01-15shader_ir: Remove RZ and use Register::ZeroIndex insteadReinUsesLisp1-6/+11
2019-01-15shader_decode: Implement TEXS.F16ReinUsesLisp1-13/+25
2019-01-15shader_decode: Implement TLDS (untested)ReinUsesLisp1-8/+61
2019-01-15shader_decode: Update TLD4 reflecting #1862 changesReinUsesLisp1-52/+49
2019-01-15shader_ir: Fixup TEX and TEXS and partially fix TLD4 decompilingReinUsesLisp1-50/+49
2019-01-15shader_decode: Implement ST_LReinUsesLisp1-0/+17
2019-01-15shader_decode: Implement LD_LReinUsesLisp1-0/+18
2019-01-15shader_decode: Implement LD_CReinUsesLisp1-0/+31
2019-01-15shader_decode: Implement TMMLReinUsesLisp1-3/+45
2019-01-15shader_decode: Implement TEX and TXQReinUsesLisp1-0/+219
2019-01-15shader_decode: Implement TEXS (F32)ReinUsesLisp1-0/+199
2019-01-15shader_decode: Implement ST_AReinUsesLisp1-0/+30
2019-01-15shader_decode: Implement LD_AReinUsesLisp1-1/+39
2019-01-15shader_ir: Initial implementationReinUsesLisp1-0/+24