aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/shader/decode
AgeCommit message (Collapse)Author
2019-02-12Merge pull request #2109 from FernandoS27/fix-f2ibunnei
Corrected F2I None mode to RoundEven.
2019-02-11Corrected F2I None mode to RoundEven.Fernando Sahmkow
2019-02-07shader_ir: Remove F4 prefix to texture operationsReinUsesLisp
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 codeReinUsesLisp
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-06Merge pull request #2083 from ReinUsesLisp/shader-ir-cbuf-trackingbunnei
shader/track: Add a more permissive global memory tracking
2019-02-05Merge pull request #2081 from ReinUsesLisp/lmem-64bunnei
shader_ir/memory: Add LD_L 64 bits loads
2019-02-04Merge pull request #2082 from FernandoS27/txq-stlbunnei
Fix TXQ not using the component mask.
2019-02-03Fix TXQ not using the component mask.Fernando Sahmkow
2019-02-03shader_ir/memory: Add ST_L 64 and 128 bits storesReinUsesLisp
2019-02-03shader_ir: Rename BasicBlock to NodeBlockReinUsesLisp
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 blocksReinUsesLisp
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 loadsReinUsesLisp
2019-02-03shader_bytecode: Rename BytesN enums to BitsNReinUsesLisp
2019-02-03shader_ir/memory: Add LD_L 64 bits loadsReinUsesLisp
2019-01-30shader_ir: Unify constant buffer offset valuesReinUsesLisp
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 trackingReinUsesLisp
2019-01-15shader_ir: Fixup clang buildReinUsesLisp
2019-01-15shader_decode: Fixup XMADReinUsesLisp
2019-01-15shader_ir: Pass to decoder functions basic block's codeReinUsesLisp
2019-01-15shader_decode: Improve zero flag implementationReinUsesLisp
2019-01-15shader_ir: Remove composite primitives and use temporals insteadReinUsesLisp
2019-01-15shader_decode: Use proper primitive namesReinUsesLisp
2019-01-15shader_decode: Use BitfieldExtract instead of shift + andReinUsesLisp
2019-01-15shader_ir: Remove Ipa primitiveReinUsesLisp
2019-01-15shader_ir: Remove RZ and use Register::ZeroIndex insteadReinUsesLisp
2019-01-15shader_decode: Implement TEXS.F16ReinUsesLisp
2019-01-15shader_decode: Fixup R2PReinUsesLisp
2019-01-15shader_decode: Fixup WriteLogicOperation zero comparisonReinUsesLisp
2019-01-15shader_decode: Fixup PSETReinUsesLisp
2019-01-15shader_decode: Fixup clang-formatReinUsesLisp
2019-01-15video_core: Implement IR based geometry shadersReinUsesLisp
2019-01-15shader_decode: Implement VMAD and VSETPReinUsesLisp
2019-01-15shader_decode: Implement HSET2ReinUsesLisp
2019-01-15shader_decode: Rework HSETP2ReinUsesLisp
2019-01-15shader_decode: Implement R2PReinUsesLisp
2019-01-15shader_decode: Implement CSETPReinUsesLisp
2019-01-15shader_decode: Implement PSETReinUsesLisp
2019-01-15shader_decode: Implement HFMA2ReinUsesLisp
2019-01-15shader_decode: Implement POPCReinUsesLisp
2019-01-15shader_decode: Implement TLDS (untested)ReinUsesLisp
2019-01-15shader_decode: Update TLD4 reflecting #1862 changesReinUsesLisp
2019-01-15shader_ir: Fixup TEX and TEXS and partially fix TLD4 decompilingReinUsesLisp
2019-01-15shader_decode: Fixup FSETReinUsesLisp
2019-01-15shader_decode: Implement IADD32IReinUsesLisp
2019-01-15video_core: Return safe values after an assert hitsReinUsesLisp
2019-01-15shader_decode: Implement FFMAReinUsesLisp
2019-01-15shader_ir: Fixup file inclusions and clang-formatReinUsesLisp
2019-01-15shader_decode: Fixup clang-formatReinUsesLisp
2019-01-15shader_decode: Implement LEAReinUsesLisp
2019-01-15shader_decode: Implement IADD3ReinUsesLisp