summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/glasm
AgeCommit message (Collapse)Author
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-03-20shader_recompiler: Reduce unused includesameerj
2022-01-29shaders: Add U64->U32x2 Atomic fallback functionsameerj
2022-01-03Merge pull request #7629 from ameerj/nv-driver-fixesFernando S
shaders: Add fixes for NVIDIA drivers 495+
2021-12-29shader: Add integer attribute get optimization passameerj
Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0.
2021-12-24emit_glasm_context_get_set: Fix GetAttribute return value type.ameerj
GetAttribute expects an F32 result type at the IR level, this fixes the return value of attributes which were not returning an F32
2021-12-05glasm: Move implemented instructions from not_implemented.cppameerj
2021-12-05shader_recompiler: Adjust emit_context includesameerj
2021-12-05shader_recompiler: Rename backend emit_context filesameerj
2021-11-16shader: Properly scale image reads and add GL SPIR-V supportReinUsesLisp
Thanks for everything!
2021-11-16glsl/glasm: Pass and use scaling parameters in shadersReinUsesLisp
2021-11-16gl_graphics_pipeline: Add downscale factor to shader uniformsameerj
2021-11-16shader: Add IsTextureScaled opcodeReinUsesLisp
2021-11-16shader: Add integer division opcodesReinUsesLisp
2021-11-16shader: Add resolution down factor opcodeReinUsesLisp
2021-11-02Shader Cahe: Fix Phi Nodes on GLASM.Fernando Sahmkow
2021-07-26emit_glasm: Fix LINESS_ADJACENCY typo in InputPrimitive()Lioncash
This should be LINES_ADJACENCY
2021-07-22shader: Avoid usage of C++20 ranges to build in clangReinUsesLisp
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: GCC fmt 8.0.0 fixeslat9nq
2021-07-22opengl: Implement LOP.CCameerj
Used by MH:Rise
2021-07-22glasm: Add passthrough geometry shader supportReinUsesLisp
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-22glasm: Implement SetAttribute ViewportMaskameerj
2021-07-22shader: Split profile and runtime info headersReinUsesLisp
2021-07-22shader: Add loggingReinUsesLisp
2021-07-22shader: Add shader loop safety check settingslat9nq
Also add a setting for enable Nsight Aftermath.
2021-07-22glasm: Use ARB_derivative_control conditionallyReinUsesLisp
2021-07-22emit_glasm_context_get_set: Remove unused variablelat9nq
2021-07-22shader,glasm: Implement legacy texcoord loadsReinUsesLisp
2021-07-22glasm: Implement legacy varyingsReinUsesLisp
2021-07-22shader: Add support for "negative" and unaligned offsetsReinUsesLisp
"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-22opengl: Declare fragment outputs even if they are not usedReinUsesLisp
Fixes Ori and the Blind Forest's menu on GLASM. For some reason (probably high level optimizations) it is not sanitized on SPIR-V for OpenGL. Vulkan is unaffected by this change.
2021-07-22glasm: Fix immediate texture coordinateReinUsesLisp
2021-07-22glasm: Reduce reg allocation leaks from an exception to a logReinUsesLisp
2021-07-22glasm: Use integer lod for TXQReinUsesLisp
2021-07-22glasm: Fix global memory fallbacksReinUsesLisp
2021-07-22Revert "glasm: Skip phi moves on undefined instructions"ReinUsesLisp
Causes regressions on Bowser's Fury.
2021-07-22glasm: Remove unintentional '\n' on Undef32ReinUsesLisp
2021-07-22glasm: Use storage buffers instead of global memory when possibleReinUsesLisp
2021-07-22glasm: Implement Y directionReinUsesLisp
2021-07-22glasm: Skip phi moves on undefined instructionsReinUsesLisp
2021-07-22glasm: Implement undef instructionsReinUsesLisp
2021-07-22glasm: Fix global memory callbacksReinUsesLisp
2021-07-22glasm: Release phi node registers after they are no longer neededReinUsesLisp
2021-07-22glasm: Fix INeg32 on negative immediatesReinUsesLisp
2021-07-22glasm: Remove unnecessary value typesReinUsesLisp
2021-07-22glasm: Throw when there are register leaksReinUsesLisp