aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/shader/decode
AgeCommit message (Collapse)Author
2019-04-15Do some corrections in conversion shader instructions.Fernando Sahmkow
Corrects encodings for I2F, F2F, I2I and F2I Implements Immediate variants of all four conversion types. Add assertions to unimplemented stuffs.
2019-04-14shader_ir: Implement STG, keep track of global memory usage and flushReinUsesLisp
2019-04-08Correct XMAD mode, psl and high_b on different encodings.Fernando Sahmkow
2019-04-08Adapt Bindless to work with AOFFIFernando Sahmkow
2019-04-08Move ConstBufferAccessor to Maxwell3d, correct mistakes and clang format.Fernando Sahmkow
2019-04-08Fix TMMLFernando Sahmkow
2019-04-08Refactor GetTextureCode and GetTexCode to use an optional instead of ↵Fernando Sahmkow
optional parameters
2019-04-08Implement TXQ_BFernando Sahmkow
2019-04-08Implement TMML_BFernando Sahmkow
2019-04-08Corrections to TEX_BFernando Sahmkow
2019-04-08Unify both sampler types.Fernando Sahmkow
2019-04-08Implement Bindless Samplers and TEX_B in the IR.Fernando Sahmkow
2019-04-03shader_ir/memory: Reduce severity of LD_L cache management and log itReinUsesLisp
2019-04-03shader_ir/memory: Reduce severity of ST_L cache management and log itReinUsesLisp
2019-03-31shader_ir/decode: Silent implicit sign conversion warningMat M
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-03-30shader_ir/decode: Implement AOFFI for TEX and TLD4ReinUsesLisp
2019-02-26shader/decode: Remove extras from MetaTextureReinUsesLisp
2019-02-26shader/decode: Split memory and texture instructions decodingReinUsesLisp
2019-02-24Merge pull request #2118 from FernandoS27/ipa-improvebunnei
shader_decompiler: Improve Accuracy of Attribute Interpolation.
2019-02-14shader_decompiler: Improve Accuracy of Attribute Interpolation.Fernando Sahmkow
2019-02-12gl_shader_decompiler: Re-implement TLDS lodReinUsesLisp
2019-02-12Merge pull request #2108 from FernandoS27/fix-ccbunnei
Fix incorrect value for CC bit in IADD
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-11Fix incorrect value for CC bit in IADDFernando 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