summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/frontend/ir
AgeCommit message (Collapse)Author
2021-07-29Merge pull request #6722 from ReinUsesLisp/xmad-optsbunnei
shader: Fold integer FMA from Nvidia's pattern
2021-07-26shader_recompiler: Remove unnecessary [[nodiscard]] instancesLioncash
[[nodiscard]] doesn't do anything on functions with a void return type and causes superfluous warnings.
2021-07-26shader: Add TryInstRecursive utility to valuesReinUsesLisp
2021-07-22shader_recompiler, video_core: Resolve clang errorslat9nq
Silences the following warnings-turned-errors: -Wsign-conversion -Wunused-private-field -Wbraced-scalar-init -Wunused-variable And some other errors
2021-07-22shader: Ignore global memory ops on devices lacking int64 supportameerj
2021-07-22shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's.
2021-07-22shader: Remove IAbs64ReinUsesLisp
2021-07-22shader: Move loop safety tests to code emissionReinUsesLisp
2021-07-22shader: Add loggingReinUsesLisp
2021-07-22shader: Add shader loop safety check settingslat9nq
Also add a setting for enable Nsight Aftermath.
2021-07-22Revert "glasm: Skip phi moves on undefined instructions"ReinUsesLisp
Causes regressions on Bowser's Fury.
2021-07-22glasm: Skip phi moves on undefined instructionsReinUsesLisp
2021-07-22video_core,shader: Clang-format fixesReinUsesLisp
2021-07-22shader: Read branch conditions from an instructionReinUsesLisp
Fixes the identity removal pass.
2021-07-22glasm: Implement TEX and TEXS instructionsReinUsesLisp
Remove lod clamp from texture instructions with lod, as this is not needed (nor supported).
2021-07-22shader_recompiler: GCC fixeslat9nq
Fixes members of unnamed union not being accessible, and one function without a declaration.
2021-07-22shader: Use a non-trivial dummy to construct ASL node unionReinUsesLisp
2021-07-22glasm: Initial implementation of phi nodes on GLASMReinUsesLisp
2021-07-22glasm: Rework control flow introducing a syntax listReinUsesLisp
This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow.
2021-07-22shader: Add floating-point rounding to I2FReinUsesLisp
2021-07-22glasm: Implement basic GLASM instructionsReinUsesLisp
2021-07-22glasm: Add GLASM backend infrastructureReinUsesLisp
2021-07-22shader: Implement Int32 SUATOM/SUREDameerj
2021-07-22shader: Initial OpenGL implementationReinUsesLisp
2021-07-22shader: Implement VertexA stageFernandoS27
2021-07-22shader: Add missing UndoUse case for GetSparseFromOpReinUsesLisp
2021-07-22shader: Simplify code in opcodes.h to fix IntellisenseReinUsesLisp
Avoid using std::array to fix Intellisense not properly compiling this code and disabling itself on all files that include it. While we are at it, change the code to use u8 instead of size_t for the number of instructions in an opcode.
2021-07-22shader: Implement indexed texturesReinUsesLisp
2021-07-22shader: Fix gcc warningsReinUsesLisp
2021-07-22shader: Inline common Value gettersReinUsesLisp
2021-07-22shader: Intrusively store in a block if it's sealed or notReinUsesLisp
2021-07-22shader: Use memset to reset instruction argumentsReinUsesLisp
2021-07-22shader: Inline common Value functions into the headerReinUsesLisp
2021-07-22shader: Move microinstruction header to the value headerReinUsesLisp
2021-07-22shader: Intrusively store register values in block for SSA passReinUsesLisp
2021-07-22shader: Inline common Opcode and Inst functionsReinUsesLisp
2021-07-22shader: Inline common IR::Block methodsReinUsesLisp
2021-07-22shader: Use a small_vector for phi blocksReinUsesLisp
2021-07-22shader: Calculate number of arguments in an opcode at compile timeReinUsesLisp
2021-07-22shader: Add coarse derivativesFernandoS27
2021-07-22shader: Implement fine derivates constant propagationFernandoS27
2021-07-22shader: Implement SR_Y_DIRECTIONFernandoS27
2021-07-22shader: Fix Phi node typesReinUsesLisp
2021-07-22shader: Fix memory barriersReinUsesLisp
2021-07-22shader: Implement SampleMaskReinUsesLisp
2021-07-22shader: Implement PIXLD.MY_INDEXReinUsesLisp
2021-07-22shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp
2021-07-22shader: Implement transform feedbacks and define file formatReinUsesLisp
2021-07-22shader: Implement geometry shadersReinUsesLisp
2021-07-22shader: Implement OUTReinUsesLisp