diff options
Diffstat (limited to 'src/shader_recompiler/frontend/ir')
| -rw-r--r-- | src/shader_recompiler/frontend/ir/ir_emitter.cpp | 16 | ||||
| -rw-r--r-- | src/shader_recompiler/frontend/ir/pred.h | 4 |
2 files changed, 10 insertions, 10 deletions
diff --git a/src/shader_recompiler/frontend/ir/ir_emitter.cpp b/src/shader_recompiler/frontend/ir/ir_emitter.cpp index 8f120a2f6..34c2f67fb 100644 --- a/src/shader_recompiler/frontend/ir/ir_emitter.cpp +++ b/src/shader_recompiler/frontend/ir/ir_emitter.cpp | |||
| @@ -468,11 +468,11 @@ F16F32F64 IREmitter::FPFma(const F16F32F64& a, const F16F32F64& b, const F16F32F | |||
| 468 | 468 | ||
| 469 | F16F32F64 IREmitter::FPAbs(const F16F32F64& value) { | 469 | F16F32F64 IREmitter::FPAbs(const F16F32F64& value) { |
| 470 | switch (value.Type()) { | 470 | switch (value.Type()) { |
| 471 | case Type::U16: | 471 | case Type::F16: |
| 472 | return Inst<F16>(Opcode::FPAbs16, value); | 472 | return Inst<F16>(Opcode::FPAbs16, value); |
| 473 | case Type::U32: | 473 | case Type::F32: |
| 474 | return Inst<F32>(Opcode::FPAbs32, value); | 474 | return Inst<F32>(Opcode::FPAbs32, value); |
| 475 | case Type::U64: | 475 | case Type::F64: |
| 476 | return Inst<F64>(Opcode::FPAbs64, value); | 476 | return Inst<F64>(Opcode::FPAbs64, value); |
| 477 | default: | 477 | default: |
| 478 | ThrowInvalidType(value.Type()); | 478 | ThrowInvalidType(value.Type()); |
| @@ -481,11 +481,11 @@ F16F32F64 IREmitter::FPAbs(const F16F32F64& value) { | |||
| 481 | 481 | ||
| 482 | F16F32F64 IREmitter::FPNeg(const F16F32F64& value) { | 482 | F16F32F64 IREmitter::FPNeg(const F16F32F64& value) { |
| 483 | switch (value.Type()) { | 483 | switch (value.Type()) { |
| 484 | case Type::U16: | 484 | case Type::F16: |
| 485 | return Inst<F16>(Opcode::FPNeg16, value); | 485 | return Inst<F16>(Opcode::FPNeg16, value); |
| 486 | case Type::U32: | 486 | case Type::F32: |
| 487 | return Inst<F32>(Opcode::FPNeg32, value); | 487 | return Inst<F32>(Opcode::FPNeg32, value); |
| 488 | case Type::U64: | 488 | case Type::F64: |
| 489 | return Inst<F64>(Opcode::FPNeg64, value); | 489 | return Inst<F64>(Opcode::FPNeg64, value); |
| 490 | default: | 490 | default: |
| 491 | ThrowInvalidType(value.Type()); | 491 | ThrowInvalidType(value.Type()); |
| @@ -495,10 +495,10 @@ F16F32F64 IREmitter::FPNeg(const F16F32F64& value) { | |||
| 495 | F16F32F64 IREmitter::FPAbsNeg(const F16F32F64& value, bool abs, bool neg) { | 495 | F16F32F64 IREmitter::FPAbsNeg(const F16F32F64& value, bool abs, bool neg) { |
| 496 | F16F32F64 result{value}; | 496 | F16F32F64 result{value}; |
| 497 | if (abs) { | 497 | if (abs) { |
| 498 | result = FPAbs(value); | 498 | result = FPAbs(result); |
| 499 | } | 499 | } |
| 500 | if (neg) { | 500 | if (neg) { |
| 501 | result = FPNeg(value); | 501 | result = FPNeg(result); |
| 502 | } | 502 | } |
| 503 | return result; | 503 | return result; |
| 504 | } | 504 | } |
diff --git a/src/shader_recompiler/frontend/ir/pred.h b/src/shader_recompiler/frontend/ir/pred.h index c6f2f82bf..4e7f32423 100644 --- a/src/shader_recompiler/frontend/ir/pred.h +++ b/src/shader_recompiler/frontend/ir/pred.h | |||
| @@ -19,8 +19,8 @@ enum class Pred : u64 { | |||
| 19 | PT, | 19 | PT, |
| 20 | }; | 20 | }; |
| 21 | 21 | ||
| 22 | constexpr size_t NUM_USER_PREDS = 6; | 22 | constexpr size_t NUM_USER_PREDS = 7; |
| 23 | constexpr size_t NUM_PREDS = 7; | 23 | constexpr size_t NUM_PREDS = 8; |
| 24 | 24 | ||
| 25 | [[nodiscard]] constexpr size_t PredIndex(Pred pred) noexcept { | 25 | [[nodiscard]] constexpr size_t PredIndex(Pred pred) noexcept { |
| 26 | return static_cast<size_t>(pred); | 26 | return static_cast<size_t>(pred); |