aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv.cpp
AgeCommit message (Collapse)Author
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
2021-07-22shader: Fix dependency on identity removal passReinUsesLisp
2021-07-22shader: Store type of phi nodes in flagsReinUsesLisp
This is needed because pseudo-instructions where invalidated.
2021-07-22spirv: Remove dependencies on Environment when generating SPIR-VReinUsesLisp
2021-07-22shader: Implement TXQ and fix FragDepthReinUsesLisp
2021-07-22shader: Implement SHFLameerj