aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv_atomic.cpp
AgeCommit message (Collapse)Author
2022-01-29shaders: Add U64->U32x2 Atomic fallback functionsameerj
2022-01-28spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomicsameerj
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used. Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
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-22shader: Add loggingReinUsesLisp
2021-07-22Move SPIR-V emission functions to their own headerReinUsesLisp
2021-07-22spirv: Replace Constant/ConstantComposite with Const helperameerj
2021-07-22spirv: Fix non-atomic 64-bit storeameerj
2021-07-22spirv: Rework storage buffers and shader memoryReinUsesLisp
2021-07-22shader: Implement ATOM/S and REDameerj