| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-06-24 | decode/texture: Address feedback | ReinUsesLisp | |
| 2019-06-20 | texture_cache: Style and Corrections | Fernando Sahmkow | |
| 2019-06-20 | shader_ir: Fix image copy rebase issues | Fernando Sahmkow | |
| 2019-06-20 | shader: Implement bindless images | ReinUsesLisp | |
| 2019-06-20 | shader: Decode SUST and implement backing image functionality | ReinUsesLisp | |
| 2019-06-20 | shader: Implement texture buffers | ReinUsesLisp | |
| 2019-06-07 | shader: Split SSY and PBK stack | ReinUsesLisp | |
| Hardware testing revealed that SSY and PBK push to a different stack, allowing code like this: SSY label1; PBK label2; SYNC; label1: PBK; label2: EXIT; | |||
| 2019-06-06 | shader/node: Minor changes | ReinUsesLisp | |
| Reflect std::shared_ptr nature of Node on initializers and remove constant members in nodes. Add some commentaries. | |||
| 2019-06-06 | shader: Move Node declarations out of the shader IR header | ReinUsesLisp | |
| Analysis passes do not have a good reason to depend on shader_ir.h to work on top of nodes. This splits node-related declarations to their own file and leaves the IR in shader_ir.h | |||
| 2019-06-05 | shader: Use shared_ptr to store nodes and move initialization to file | ReinUsesLisp | |
| Instead of having a vector of unique_ptr stored in a vector and returning star pointers to this, use shared_ptr. While changing initialization code, move it to a separate file when possible. This is a first step to allow code analysis and node generation beyond the ShaderIR class. | |||
| 2019-05-29 | Merge pull request #2446 from ReinUsesLisp/tid | bunnei | |
| shader: Implement S2R Tid{XYZ} and CtaId{XYZ} | |||
| 2019-05-24 | Merge pull request #2485 from ReinUsesLisp/generic-memory | bunnei | |
| shader/memory: Implement generic memory stores and loads (ST and LD) | |||
| 2019-05-23 | shader/shader_ir: Make Comment() take a std::string by value | Lioncash | |
| This allows for forming comment nodes without making unnecessary copies of the std::string instance. e.g. previously: Comment(fmt::format("Base address is c[0x{:x}][0x{:x}]", cbuf->GetIndex(), cbuf_offset)); Would result in a copy of the string being created, as CommentNode() takes a std::string by value (a const ref passed to a value parameter results in a copy). Now, only one instance of the string is ever moved around. (fmt::format returns a std::string, and since it's returned from a function by value, this is a prvalue (which can be treated like an rvalue), so it's moved into Comment's string parameter), we then move it into the CommentNode constructor, which then moves the string into its member variable). | |||
| 2019-05-23 | shader/decode/*: Add missing newline to files lacking them | Lioncash | |
| Keeps the shader code file endings consistent. | |||
| 2019-05-23 | shader/decode/*: Eliminate indirect inclusions | Lioncash | |
| Amends cases where we were using things that were indirectly being satisfied through other headers. This way, if those headers change and eliminate dependencies on other headers in the future, we don't have cascading compilation errors. | |||
| 2019-05-22 | shader/decode/memory: Remove left in debug pragma | Lioncash | |
| 2019-05-20 | shader/memory: Implement ST (generic memory) | ReinUsesLisp | |
| 2019-05-20 | shader/memory: Implement LD (generic memory) | ReinUsesLisp | |
| 2019-05-20 | shader: Implement S2R Tid{XYZ} and CtaId{XYZ} | ReinUsesLisp | |
| 2019-05-19 | Merge pull request #2441 from ReinUsesLisp/al2p | bunnei | |
| shader: Implement AL2P and ALD.PHYS | |||
| 2019-05-19 | shader/shader_ir: Remove unnecessary inline specifiers | Lioncash | |
| constexpr internally links by default, so the inline specifier is unnecessary. | |||
| 2019-05-19 | shader/shader_ir: Simplify constructors for OperationNode | Lioncash | |
| Many of these constructors don't even need to be templated. The only ones that need to be templated are the ones that actually make use of the parameter pack. Even then, since std::vector accepts an initializer list, we can supply the parameter pack directly to it instead of creating our own copy of the list, then copying it again into the std::vector. | |||
| 2019-05-19 | shader/shader_ir: Remove unnecessary template parameter packs from ↵ | Lioncash | |
| Operation() overloads where applicable These overloads don't actually make use of the parameter pack, so they can be turned into regular non-template function overloads. | |||
| 2019-05-19 | shader/shader_ir: Mark tracking functions as const member functions | Lioncash | |
| These don't actually modify instance state, so they can be marked as const member functions | |||
| 2019-05-19 | shader/shader_ir: Place implementations of constructor and destructor in cpp ↵ | Lioncash | |
| file Given the class contains quite a lot of non-trivial types, place the constructor and destructor within the cpp file to avoid inlining construction and destruction code everywhere the class is used. | |||
| 2019-05-09 | video_core/shader/decode/texture: Remove unused variable from GetTld4Code() | Lioncash | |
| 2019-05-04 | shader/decode/texture: Remove unused variable | Lioncash | |
| This isn't used anywhere, so we can get rid of it. | |||
| 2019-05-02 | shader_ir/other: Implement IPA.IDX | ReinUsesLisp | |
| 2019-05-02 | shader_ir/memory: Assert on non-32 bits ALD.PHYS | ReinUsesLisp | |
| 2019-05-02 | shader: Add physical attributes commentaries | ReinUsesLisp | |
| 2019-05-02 | gl_shader_decompiler: Implement GLSL physical attributes | ReinUsesLisp | |
| 2019-05-02 | shader_ir/memory: Implement physical input attributes | ReinUsesLisp | |
| 2019-05-02 | shader: Remove unused AbufNode Ipa mode | ReinUsesLisp | |
| 2019-05-02 | shader_ir/memory: Emit AL2P IR | ReinUsesLisp | |
| 2019-04-28 | Merge pull request #2435 from ReinUsesLisp/misc-vc | bunnei | |
| shader_ir: Miscellaneous fixes | |||
| 2019-04-28 | Merge pull request #2322 from ReinUsesLisp/wswitch | bunnei | |
| video_core: Silent -Wswitch warnings | |||
| 2019-04-28 | Merge pull request #2423 from FernandoS27/half-correct | bunnei | |
| Corrections on Half Float operations: HADD2 HMUL2 and HFMA2 | |||
| 2019-04-26 | shader_ir: Move Sampler index entry in operand< to sort declarations | ReinUsesLisp | |
| 2019-04-26 | shader_ir: Add missing entry to Sampler operand< comparison | ReinUsesLisp | |
| 2019-04-26 | shader_ir/texture: Fix sampler const buffer key shift | ReinUsesLisp | |
| 2019-04-20 | Corrections Half Float operations on const buffers and implement saturation. | Fernando Sahmkow | |
| 2019-04-20 | Merge pull request #2407 from FernandoS27/f2f | bunnei | |
| Do some corrections in conversion shader instructions. | |||
| 2019-04-19 | Merge pull request #2409 from ReinUsesLisp/half-floats | bunnei | |
| shader_ir/decode: Miscellaneous fixes to half-float decompilation | |||
| 2019-04-18 | video_core: Silent -Wswitch warnings | ReinUsesLisp | |
| 2019-04-17 | Merge pull request #2348 from FernandoS27/guest-bindless | bunnei | |
| Implement Bindless Textures on Shader Decompiler and GL backend | |||
| 2019-04-16 | Merge pull request #2315 from ReinUsesLisp/severity-decompiler | bunnei | |
| shader_ir/decode: Reduce the severity of common assertions | |||
| 2019-04-15 | shader_ir/decode: Fix half float pre-operations and remove MetaHalfArithmetic | ReinUsesLisp | |
| Operations done before the main half float operation (like HAdd) were managing a packed value instead of the unpacked one. Adding an unpacked operation allows us to drop the per-operand MetaHalfArithmetic entry, simplifying the code overall. | |||
| 2019-04-15 | shader_ir/decode: Implement half float saturation | ReinUsesLisp | |
| 2019-04-15 | shader_ir/decode: Reduce severity of unimplemented half-float FTZ | ReinUsesLisp | |
| 2019-04-15 | renderer_opengl: Implement half float NaN comparisons | ReinUsesLisp | |
