Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-11-16 | Shader: Don't rescale FragCoord if used by Shuffle | Fernando Sahmkow | |
2021-11-16 | spirv: Implement rescaling patching | ReinUsesLisp | |
2021-10-31 | ShaderCache: Order Phi Arguments from farthest away to nearest. | Fernando Sahmkow | |
2021-08-30 | structured_control_flow: Skip reordering nested demote branches. | ameerj | |
Nested demote branches add complexity with combining the condition if it has not been initialized yet. Skip them for the time being. | |||
2021-08-30 | structured_control_flow: Conditionally invoke demote reorder pass | ameerj | |
This is only needed on select drivers when a fragment shader discards/demotes. | |||
2021-08-28 | structured_control_flow: Add DemoteCombinationPass | ameerj | |
Some drivers misread data when demotes are interleaved in the program. This moves demote branches to be checked at the end of the program. Fixes "wireframe" issue in Pokemon SwSh on some drivers | |||
2021-07-26 | control_flow: Fix duplicate switch case in OpcodeToken | Lioncash | |
This previously duplicated the case of the PBK case above it. | |||
2021-07-22 | shader: Support out of bound local memory reads and immediate writes | ReinUsesLisp | |
Support ignoring immediate out of bound writes. Writing dynamically out of bounds is not yet supported (e.g. R0+0x4). Reading out of bounds yields zero. This is supported checking for the size from the IR; if the input is immediate, the optimization passes will drop it. | |||
2021-07-22 | shader: Implement ISETP.X | ameerj | |
2021-07-22 | shader: Avoid usage of C++20 ranges to build in clang | ReinUsesLisp | |
2021-07-22 | shader_recompiler, video_core: Resolve clang errors | lat9nq | |
Silences the following warnings-turned-errors: -Wsign-conversion -Wunused-private-field -Wbraced-scalar-init -Wunused-variable And some other errors | |||
2021-07-22 | shader: Manually convert from array<u32> to bitset instead of using bit_cast | ReinUsesLisp | |
2021-07-22 | shader: GCC fmt 8.0.0 fixes | lat9nq | |
2021-07-22 | shader: Account for 33-bit IADD3 scenario | ameerj | |
2021-07-22 | shader: Only apply shift on register mode for IADD3 | ReinUsesLisp | |
2021-07-22 | shader: Use std::bit_cast instead of Common::BitCast for passthrough | ReinUsesLisp | |
2021-07-22 | shader: Rework varyings and implement passthrough geometry shaders | ReinUsesLisp | |
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's. | |||
2021-07-22 | shader: Only verify shader when graphics debugging is enabled | ReinUsesLisp | |
2021-07-22 | shader: Emulate 64-bit integers when not supported | ReinUsesLisp | |
Useful for mobile and Intel Xe devices. | |||
2021-07-22 | shader_recompiler: Fix IADD3 input partitioning | ameerj | |
2021-07-22 | shader: Move loop safety tests to code emission | ReinUsesLisp | |
2021-07-22 | shader: Calibrate loop safety threshold | ReinUsesLisp | |
2021-07-22 | shader: Simplify MergeDualVertexPrograms | ReinUsesLisp | |
2021-07-22 | shader: Properly manage attributes not written from previous stages | ReinUsesLisp | |
2021-07-22 | shader: Add support for native 16-bit floats | ReinUsesLisp | |
2021-07-22 | shader: Rename maxwell/program.h to translate_program.h | ReinUsesLisp | |
2021-07-22 | shader: Fix loop safety to SSA pass | ReinUsesLisp | |
2021-07-22 | shader: Add logging | ReinUsesLisp | |
2021-07-22 | shader: Add shader loop safety check settings | lat9nq | |
Also add a setting for enable Nsight Aftermath. | |||
2021-07-22 | shader: Comment why the array component is not read in TMML | ReinUsesLisp | |
2021-07-22 | tmml: Remove index component from coords vec | ameerj | |
The lod query functions exposed by the rendering API's do not make use of the texturearray layer indexing. | |||
2021-07-22 | shader: Fix VertexA Shaders. | FernandoS27 | |
2021-07-22 | shader: Add 2D and 3D variants to SUATOM and SURED | ReinUsesLisp | |
Used by Claybook. | |||
2021-07-22 | shader: Avoid CPU side undefined behavior on I2F | ReinUsesLisp | |
2021-07-22 | shader: Add support for "negative" and unaligned offsets | ReinUsesLisp | |
"Negative" offsets don't exist. They are shown as such due to a bug in nvdisasm. Unaligned offsets have been proved to read the aligned offset. For example, when reading an U32, if the offset is 6, the offset read will be 4. | |||
2021-07-22 | shader: Implement ISCADD32I | ReinUsesLisp | |
2021-07-22 | shader: Always initialize up reference in structure control flow | ReinUsesLisp | |
Fixes ubsan issue. | |||
2021-07-22 | shader: Fix ImageWrite indexing | ReinUsesLisp | |
2021-07-22 | shader: Fix TMML queries | ReinUsesLisp | |
2021-07-22 | shader: Handle host exceptions | ReinUsesLisp | |
2021-07-22 | shader: Read branch conditions from an instruction | ReinUsesLisp | |
Fixes the identity removal pass. | |||
2021-07-22 | glasm: Implement TEX and TEXS instructions | ReinUsesLisp | |
Remove lod clamp from texture instructions with lod, as this is not needed (nor supported). | |||
2021-07-22 | shader_recompiler: GCC fixes | lat9nq | |
Fixes members of unnamed union not being accessible, and one function without a declaration. | |||
2021-07-22 | glasm: Initial implementation of phi nodes on GLASM | ReinUsesLisp | |
2021-07-22 | glasm: Rework control flow introducing a syntax list | ReinUsesLisp | |
This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow. | |||
2021-07-22 | shader: Add floating-point rounding to I2F | ReinUsesLisp | |
2021-07-22 | shader: ISET.X implementation | ameerj | |
2021-07-22 | shader: Optimize NVN Fallthrough | FernandoS27 | |
2021-07-22 | shader: Stub SR_AFFINITY | FernandoS27 | |
2021-07-22 | shader: Implement Int32 SUATOM/SURED | ameerj | |