diff options
| author | 2022-01-29 13:46:06 -0500 | |
|---|---|---|
| committer | 2022-01-29 19:55:53 -0500 | |
| commit | ad58d7eae7bd34c881720ed6650c400cb549fcd6 (patch) | |
| tree | 135bb94ab1645a4080ec2e6f9914351bd315ee2a /src/shader_recompiler/frontend/ir/microinstruction.cpp | |
| parent | Merge pull request #7791 from german77/wall_clock (diff) | |
| download | yuzu-ad58d7eae7bd34c881720ed6650c400cb549fcd6.tar.gz yuzu-ad58d7eae7bd34c881720ed6650c400cb549fcd6.tar.xz yuzu-ad58d7eae7bd34c881720ed6650c400cb549fcd6.zip | |
shaders: Add U64->U32x2 Atomic fallback functions
Diffstat (limited to '')
| -rw-r--r-- | src/shader_recompiler/frontend/ir/microinstruction.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/shader_recompiler/frontend/ir/microinstruction.cpp b/src/shader_recompiler/frontend/ir/microinstruction.cpp index 97e2bf6af..631446cf7 100644 --- a/src/shader_recompiler/frontend/ir/microinstruction.cpp +++ b/src/shader_recompiler/frontend/ir/microinstruction.cpp | |||
| @@ -118,6 +118,7 @@ bool Inst::MayHaveSideEffects() const noexcept { | |||
| 118 | case Opcode::SharedAtomicXor32: | 118 | case Opcode::SharedAtomicXor32: |
| 119 | case Opcode::SharedAtomicExchange32: | 119 | case Opcode::SharedAtomicExchange32: |
| 120 | case Opcode::SharedAtomicExchange64: | 120 | case Opcode::SharedAtomicExchange64: |
| 121 | case Opcode::SharedAtomicExchange32x2: | ||
| 121 | case Opcode::GlobalAtomicIAdd32: | 122 | case Opcode::GlobalAtomicIAdd32: |
| 122 | case Opcode::GlobalAtomicSMin32: | 123 | case Opcode::GlobalAtomicSMin32: |
| 123 | case Opcode::GlobalAtomicUMin32: | 124 | case Opcode::GlobalAtomicUMin32: |
| @@ -138,6 +139,15 @@ bool Inst::MayHaveSideEffects() const noexcept { | |||
| 138 | case Opcode::GlobalAtomicOr64: | 139 | case Opcode::GlobalAtomicOr64: |
| 139 | case Opcode::GlobalAtomicXor64: | 140 | case Opcode::GlobalAtomicXor64: |
| 140 | case Opcode::GlobalAtomicExchange64: | 141 | case Opcode::GlobalAtomicExchange64: |
| 142 | case Opcode::GlobalAtomicIAdd32x2: | ||
| 143 | case Opcode::GlobalAtomicSMin32x2: | ||
| 144 | case Opcode::GlobalAtomicUMin32x2: | ||
| 145 | case Opcode::GlobalAtomicSMax32x2: | ||
| 146 | case Opcode::GlobalAtomicUMax32x2: | ||
| 147 | case Opcode::GlobalAtomicAnd32x2: | ||
| 148 | case Opcode::GlobalAtomicOr32x2: | ||
| 149 | case Opcode::GlobalAtomicXor32x2: | ||
| 150 | case Opcode::GlobalAtomicExchange32x2: | ||
| 141 | case Opcode::GlobalAtomicAddF32: | 151 | case Opcode::GlobalAtomicAddF32: |
| 142 | case Opcode::GlobalAtomicAddF16x2: | 152 | case Opcode::GlobalAtomicAddF16x2: |
| 143 | case Opcode::GlobalAtomicAddF32x2: | 153 | case Opcode::GlobalAtomicAddF32x2: |
| @@ -165,6 +175,15 @@ bool Inst::MayHaveSideEffects() const noexcept { | |||
| 165 | case Opcode::StorageAtomicOr64: | 175 | case Opcode::StorageAtomicOr64: |
| 166 | case Opcode::StorageAtomicXor64: | 176 | case Opcode::StorageAtomicXor64: |
| 167 | case Opcode::StorageAtomicExchange64: | 177 | case Opcode::StorageAtomicExchange64: |
| 178 | case Opcode::StorageAtomicIAdd32x2: | ||
| 179 | case Opcode::StorageAtomicSMin32x2: | ||
| 180 | case Opcode::StorageAtomicUMin32x2: | ||
| 181 | case Opcode::StorageAtomicSMax32x2: | ||
| 182 | case Opcode::StorageAtomicUMax32x2: | ||
| 183 | case Opcode::StorageAtomicAnd32x2: | ||
| 184 | case Opcode::StorageAtomicOr32x2: | ||
| 185 | case Opcode::StorageAtomicXor32x2: | ||
| 186 | case Opcode::StorageAtomicExchange32x2: | ||
| 168 | case Opcode::StorageAtomicAddF32: | 187 | case Opcode::StorageAtomicAddF32: |
| 169 | case Opcode::StorageAtomicAddF16x2: | 188 | case Opcode::StorageAtomicAddF16x2: |
| 170 | case Opcode::StorageAtomicAddF32x2: | 189 | case Opcode::StorageAtomicAddF32x2: |