diff options
Diffstat (limited to 'src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp')
| -rw-r--r-- | src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp b/src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp index 88bbac0a5..b446aae0e 100644 --- a/src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp +++ b/src/shader_recompiler/frontend/maxwell/translate/impl/impl.cpp | |||
| @@ -122,14 +122,14 @@ IR::F64 TranslatorVisitor::GetDoubleReg39(u64 insn) { | |||
| 122 | static std::pair<IR::U32, IR::U32> CbufAddr(u64 insn) { | 122 | static std::pair<IR::U32, IR::U32> CbufAddr(u64 insn) { |
| 123 | union { | 123 | union { |
| 124 | u64 raw; | 124 | u64 raw; |
| 125 | BitField<20, 14, s64> offset; | 125 | BitField<20, 14, u64> offset; |
| 126 | BitField<34, 5, u64> binding; | 126 | BitField<34, 5, u64> binding; |
| 127 | } const cbuf{insn}; | 127 | } const cbuf{insn}; |
| 128 | 128 | ||
| 129 | if (cbuf.binding >= 18) { | 129 | if (cbuf.binding >= 18) { |
| 130 | throw NotImplementedException("Out of bounds constant buffer binding {}", cbuf.binding); | 130 | throw NotImplementedException("Out of bounds constant buffer binding {}", cbuf.binding); |
| 131 | } | 131 | } |
| 132 | if (cbuf.offset >= 0x10'000 || cbuf.offset < 0) { | 132 | if (cbuf.offset >= 0x10'000) { |
| 133 | throw NotImplementedException("Out of bounds constant buffer offset {}", cbuf.offset); | 133 | throw NotImplementedException("Out of bounds constant buffer offset {}", cbuf.offset); |
| 134 | } | 134 | } |
| 135 | const IR::Value binding{static_cast<u32>(cbuf.binding)}; | 135 | const IR::Value binding{static_cast<u32>(cbuf.binding)}; |