summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNguyen Dac Nam <nam.kazt.91@gmail.com>2020-03-13 23:04:20 +0700
committernamkazy <nam.kazt.91@gmail.com>2020-03-30 17:44:44 +0700
commitc119473c4083ec53c5de70e2536cd7eb5925ffbb (patch)
tree07a57d31c91d19c016328f2076b0a95148fbddc4 /src
parent2c9879d2ebb9790676363a6ea165b3aa9287f39f (diff)
shader_decode: add Atomic op for common usage
Diffstat (limited to 'src')
-rw-r--r--src/video_core/shader/node.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/video_core/shader/node.h b/src/video_core/shader/node.h
index a1828546e..8f1d9bc95 100644
--- a/src/video_core/shader/node.h
+++ b/src/video_core/shader/node.h
@@ -162,7 +162,21 @@ enum class OperationCode {
AtomicImageXor, /// (MetaImage, int[N] coords) -> void
AtomicImageExchange, /// (MetaImage, int[N] coords) -> void
- AtomicAdd, /// (memory, {u}int) -> {u}int
+ AtomicUExchange, /// (memory, {u}int) -> {u}int
+ AtomicUAdd, /// (memory, {u}int) -> {u}int
+ AtomicUMin, /// (memory, {u}int) -> {u}int
+ AtomicUMax, /// (memory, {u}int) -> {u}int
+ AtomicUAnd, /// (memory, {u}int) -> {u}int
+ AtomicUOr, /// (memory, {u}int) -> {u}int
+ AtomicUXor, /// (memory, {u}int) -> {u}int
+
+ AtomicIExchange, /// (memory, {u}int) -> {u}int
+ AtomicIAdd, /// (memory, {u}int) -> {u}int
+ AtomicIMin, /// (memory, {u}int) -> {u}int
+ AtomicIMax, /// (memory, {u}int) -> {u}int
+ AtomicIAnd, /// (memory, {u}int) -> {u}int
+ AtomicIOr, /// (memory, {u}int) -> {u}int
+ AtomicIXor, /// (memory, {u}int) -> {u}int
Branch, /// (uint branch_target) -> void
BranchIndirect, /// (uint branch_target) -> void