aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv.cpp
AgeCommit message (Collapse)Author
2024-02-19shader_recompiler: throw on missing geometry streams in geometry shadersLiam
2023-11-19renderer_vulkan: ignore viewport stores on non-supporting driversLiam
2023-06-22Remove memory allocations in some hot pathsKelebek1
2022-11-27Vulkan: update initializationLiam
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
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-01-28emit_spirv: Add Xfb execution mode when transform feedback is usedameerj
Fixes Transform Feedback on Vulkan AMD drivers.
2021-12-28Empty spacesMatías Locatti
2021-12-28Changes to avoid warnings in SSE4.2 optimized SPIR-VMatías Locatti
2021-12-05emit_spirv: Reduce emit_spirv.h include overheadameerj
emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on.
2021-07-22emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaReinUsesLisp
Fix regression on Fire Emblem: Three Houses when using native fp16.
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: Move loop safety tests to code emissionReinUsesLisp
2021-07-22spirv: Reduce log severity of mismatching denorm rulesReinUsesLisp
2021-07-22shader: Add loggingReinUsesLisp
2021-07-22shader: Split profile and runtime information in separate structsReinUsesLisp
2021-07-22shader: Read branch conditions from an instructionReinUsesLisp
Fixes the identity removal pass.
2021-07-22shader_recompiler: GCC fixeslat9nq
Fixes members of unnamed union not being accessible, and one function without a declaration.
2021-07-22emit_spirv: Jump to loop body with local variableReinUsesLisp
Silence unused variable warning
2021-07-22emit_spirv: Add missing block in caseReinUsesLisp
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-22glasm: Implement shuffle and vote instructions on GLASMReinUsesLisp
2021-07-22Move SPIR-V emission functions to their own headerReinUsesLisp
2021-07-22shader: Implement Int32 SUATOM/SUREDameerj
2021-07-22spirv: Do not enable ShaderLayerReinUsesLisp
This is enabled by an extension instead of the capability.
2021-07-22spirv: Enable DemoteToHelperInvocationEXT only when supportedReinUsesLisp
2021-07-22spirv: Use OriginLowerLeft when requestedReinUsesLisp
2021-07-22spirv: Support OpenGL uniform buffers and change bindingsReinUsesLisp
2021-07-22shader: Move microinstruction header to the value headerReinUsesLisp
2021-07-22shader: Address feedbackFernandoS27
2021-07-22shader: Implement fine derivates constant propagationFernandoS27
2021-07-22shader: Implement PIXLD.MY_INDEXReinUsesLisp
2021-07-22spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp
2021-07-22shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp
2021-07-22spirv: Implement Layer storesReinUsesLisp
2021-07-22shader: Implement transform feedbacks and define file formatReinUsesLisp
2021-07-22shader: Implement early Z testsReinUsesLisp
2021-07-22spirv: Rework storage buffers and shader memoryReinUsesLisp
2021-07-22shader: Implement geometry shadersReinUsesLisp
2021-07-22spirv: Define StorageImageWriteWithoutFormat capability when usedReinUsesLisp
2021-07-22shader: Implement ATOM/S and REDameerj
2021-07-22spirv: Move phi node patching to a separate functionReinUsesLisp
2021-07-22spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp
2021-07-22spirv: Fix forward declarations on phi nodesReinUsesLisp
2021-07-22shader: Implement SULD and SUSTReinUsesLisp
2021-07-22shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq
Mostly fixing unused *, implicit conversion, braced scalar init, fpermissive, and some others. Some Clang errors likely remain in video_core, and std::ranges is still a pertinent issue in shader_recompiler shader_recompiler: cmake: Force bracket depth to 1024 on Clang Increases the maximum fold expression depth thread_worker: Include condition_variable Don't use list initializers in control flow Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
2021-07-22shader: Implement texture buffersReinUsesLisp
2021-07-22shader: Address FeedbackFernandoS27
2021-07-22shader: Implement ViewportIndexFernandoS27
2021-07-22shader: Fix branches to visited virtual blocksReinUsesLisp