Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | shader_ir/decode: Implement AOFFI for TEX and TLD4 | ReinUsesLisp | 2019-03-30 | 1 | -3/+6 |
| | |||||
* | shader_ir: Implement immediate register tracking | ReinUsesLisp | 2019-03-30 | 1 | -0/+3 |
| | |||||
* | shader/decode: Remove extras from MetaTexture | ReinUsesLisp | 2019-02-26 | 1 | -1/+3 |
| | |||||
* | shader/decode: Split memory and texture instructions decoding | ReinUsesLisp | 2019-02-26 | 1 | -0/+1 |
| | |||||
* | shader_ir: Remove F4 prefix to texture operations | ReinUsesLisp | 2019-02-07 | 1 | -6/+6 |
| | | | | | | 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. | ||||
* | shader_ir: Clean texture management code | ReinUsesLisp | 2019-02-07 | 1 | -5/+5 |
| | | | | | | | | | 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. | ||||
* | Merge pull request #2083 from ReinUsesLisp/shader-ir-cbuf-tracking | bunnei | 2019-02-07 | 1 | -45/+46 |
|\ | | | | | shader/track: Add a more permissive global memory tracking | ||||
| * | shader_ir: Rename BasicBlock to NodeBlock | ReinUsesLisp | 2019-02-03 | 1 | -46/+46 |
| | | | | | | | | It's not always used as a basic block. Rename it for consistency. | ||||
| * | shader_ir: Pass decoded nodes as a whole instead of per basic blocks | ReinUsesLisp | 2019-02-03 | 1 | -25/+26 |
| | | | | | | | | | | | | | | | | | | 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. | ||||
* | | gl_shader_disk_cache: Save GLSL and entries into the precompiled file | ReinUsesLisp | 2019-02-07 | 1 | -0/+9 |
|/ | |||||
* | shader_ir: Unify constant buffer offset values | ReinUsesLisp | 2019-01-30 | 1 | -1/+1 |
| | | | | | | | 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. | ||||
* | shader_decode: Implement LDG and basic cbuf tracking | ReinUsesLisp | 2019-01-30 | 1 | -4/+34 |
| | |||||
* | shader/shader_ir: Amend three comment typos | Lioncash | 2019-01-28 | 1 | -3/+3 |
| | | | | | Given we're in the area, these are three trivial typos that can be corrected. | ||||
* | shader/shader_ir: Amend constructor initializer ordering for AbufNode | Lioncash | 2019-01-28 | 1 | -2/+2 |
| | | | | | Orders the class members in the same order that they would actually be initialized in. Gets rid of two compiler warnings. | ||||
* | shader_ir: Pass to decoder functions basic block's code | ReinUsesLisp | 2019-01-15 | 1 | -25/+25 |
| | |||||
* | shader_decode: Improve zero flag implementation | ReinUsesLisp | 2019-01-15 | 1 | -2/+7 |
| | |||||
* | shader_ir: Remove composite primitives and use temporals instead | ReinUsesLisp | 2019-01-15 | 1 | -30/+30 |
| | |||||
* | shader_decode: Use proper primitive names | ReinUsesLisp | 2019-01-15 | 1 | -7/+5 |
| | |||||
* | shader_decode: Use BitfieldExtract instead of shift + and | ReinUsesLisp | 2019-01-15 | 1 | -2/+7 |
| | |||||
* | shader_ir: Remove Ipa primitive | ReinUsesLisp | 2019-01-15 | 1 | -2/+0 |
| | |||||
* | shader_ir: Remove RZ and use Register::ZeroIndex instead | ReinUsesLisp | 2019-01-15 | 1 | -2/+0 |
| | |||||
* | shader_decode: Implement TEXS.F16 | ReinUsesLisp | 2019-01-15 | 1 | -2/+6 |
| | |||||
* | video_core: Implement IR based geometry shaders | ReinUsesLisp | 2019-01-15 | 1 | -0/+3 |
| | |||||
* | shader_decode: Implement VMAD and VSETP | ReinUsesLisp | 2019-01-15 | 1 | -0/+4 |
| | |||||
* | shader_decode: Implement HSET2 | ReinUsesLisp | 2019-01-15 | 1 | -0/+1 |
| | |||||
* | shader_decode: Rework HSETP2 | ReinUsesLisp | 2019-01-15 | 1 | -7/+8 |
| | |||||
* | shader_decode: Implement HFMA2 | ReinUsesLisp | 2019-01-15 | 1 | -0/+1 |
| | |||||
* | shader_decode: Implement POPC | ReinUsesLisp | 2019-01-15 | 1 | -1/+3 |
| | |||||
* | shader_decode: Implement TLDS (untested) | ReinUsesLisp | 2019-01-15 | 1 | -0/+4 |
| | |||||
* | shader_decode: Update TLD4 reflecting #1862 changes | ReinUsesLisp | 2019-01-15 | 1 | -0/+3 |
| | |||||
* | shader_ir: Fixup TEX and TEXS and partially fix TLD4 decompiling | ReinUsesLisp | 2019-01-15 | 1 | -1/+3 |
| | |||||
* | video_core: Address feedback | ReinUsesLisp | 2019-01-15 | 1 | -11/+10 |
| | |||||
* | shader_ir: Fixup file inclusions and clang-format | ReinUsesLisp | 2019-01-15 | 1 | -1/+0 |
| | |||||
* | shader_ir: Move comment node string | Mat M | 2019-01-15 | 1 | -2/+2 |
| | | | Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc> | ||||
* | shader_ir: Address feedback to avoid UB in bit casting | ReinUsesLisp | 2019-01-15 | 1 | -2/+4 |
| | |||||
* | shader_decode: Implement LOP3 | ReinUsesLisp | 2019-01-15 | 1 | -0/+2 |
| | |||||
* | shader_decode: Implement LOP32I | ReinUsesLisp | 2019-01-15 | 1 | -0/+5 |
| | |||||
* | shader_decode: Implement TEX and TXQ | ReinUsesLisp | 2019-01-15 | 1 | -0/+4 |
| | |||||
* | shader_decode: Implement TEXS (F32) | ReinUsesLisp | 2019-01-15 | 1 | -0/+18 |
| | |||||
* | shader_ir: Add condition code helper | ReinUsesLisp | 2019-01-15 | 1 | -0/+3 |
| | |||||
* | shader_ir: Add predicate combiner helper | ReinUsesLisp | 2019-01-15 | 1 | -0/+3 |
| | |||||
* | shader_ir: Add comparison helpers | ReinUsesLisp | 2019-01-15 | 1 | -0/+9 |
| | |||||
* | shader_ir: Add half float helpers | ReinUsesLisp | 2019-01-15 | 1 | -0/+7 |
| | |||||
* | shader_ir: Add integer helpers | ReinUsesLisp | 2019-01-15 | 1 | -0/+5 |
| | |||||
* | shader_ir: Add float helpers | ReinUsesLisp | 2019-01-15 | 1 | -0/+5 |
| | |||||
* | shader_ir: Add setters | ReinUsesLisp | 2019-01-15 | 1 | -0/+8 |
| | |||||
* | shader_ir: Add local memory getters | ReinUsesLisp | 2019-01-15 | 1 | -0/+3 |
| | |||||
* | shader_ir: Add internal flag getters | ReinUsesLisp | 2019-01-15 | 1 | -0/+2 |
| | |||||
* | shader_ir: Add attribute getters | ReinUsesLisp | 2019-01-15 | 1 | -0/+5 |
| | |||||
* | shader_ir: Add constant buffer getters | ReinUsesLisp | 2019-01-15 | 1 | -0/+4 |
| | |||||
* | shader_ir: Add register getter | ReinUsesLisp | 2019-01-15 | 1 | -0/+2 |
| | |||||
* | shader_ir: Add immediate node constructors | ReinUsesLisp | 2019-01-15 | 1 | -1/+18 |
| | |||||
* | shader_ir: Initial implementation | ReinUsesLisp | 2019-01-15 | 1 | -0/+662 |