yuzu/src/video_core/shader
ReinUsesLisp d95d4ac843 shader/memory: Implement ATOM.ADD
ATOM operates atomically on global memory. For now only add ATOM.ADD
since that's what was found in commercial games.

This asserts for ATOM.ADD.S32 (handling the others as unimplemented),
although ATOM.ADD.U32 shouldn't be any different.

This change forces us to change the default type on SPIR-V storage
buffers from float to uint. We could also alias the buffers, but it's
simpler for now to just use uint. While we are at it, abstract the code
to avoid repetition.
2020-01-26 01:54:24 -03:00
..
decode shader/memory: Implement ATOM.ADD 2020-01-26 01:54:24 -03:00
ast.cpp Shader_IR: Implement Fast BRX and allow multi-branches in the CFG. 2019-10-25 09:01:31 -04:00
ast.h video_core/shader/ast: Make ShowCurrentState() and SanityCheck() const member functions 2019-10-17 20:59:48 -04:00
compiler_settings.cpp Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes. 2019-10-04 18:52:50 -04:00
compiler_settings.h Shader_IR: allow else derivation to be optional. 2019-10-04 18:52:52 -04:00
const_buffer_locker.cpp video_core/const_buffer_locker: Make use of std::tie in HasEqualKeys() 2019-11-27 05:53:43 -05:00
const_buffer_locker.h video_core/const_buffer_locker: Remove unused includes 2019-11-27 05:51:13 -05:00
control_flow.cpp control_flow: Silence -Wreorder warning for CFGRebuildState 2020-01-14 13:28:48 -05:00
control_flow.h Shader_IR: Address Feedback. 2019-10-26 15:38:30 -04:00
decode.cpp video_core: Silence implicit conversion warnings 2019-11-08 22:48:50 +00:00
expr.cpp video_core/expr: Supply operator!= along with operator== 2019-10-05 09:14:26 -04:00
expr.h Shader_IR: Address Feedback. 2019-10-26 15:38:30 -04:00
node.h shader/memory: Implement ATOM.ADD 2020-01-26 01:54:24 -03:00
node_helper.cpp shader_ir: std::move Node instance where applicable 2019-07-16 19:49:23 -04:00
node_helper.h shader: Move Node declarations out of the shader IR header 2019-06-06 20:02:37 -03:00
shader_ir.cpp Shader_IR: Address Feedback 2020-01-04 14:40:57 -04:00
shader_ir.h shader_ir/memory: Implement u16 and u8 for STG and LDG 2020-01-09 02:12:29 -03:00
track.cpp shader_ir/memory: Implement patch stores 2019-12-09 23:25:21 -03:00