diff options
| author | 2022-01-08 01:48:53 -0700 | |
|---|---|---|
| committer | 2022-01-08 01:49:26 -0700 | |
| commit | 42f653ab6fc8ab07ba0db4ffb4d2b0267115a588 (patch) | |
| tree | c74cc1a5b8acd9e7d919dfe5d0357b98f6e5b61d | |
| parent | Merge pull request #7680 from german77/accel_mapping (diff) | |
| download | yuzu-42f653ab6fc8ab07ba0db4ffb4d2b0267115a588.tar.gz yuzu-42f653ab6fc8ab07ba0db4ffb4d2b0267115a588.tar.xz yuzu-42f653ab6fc8ab07ba0db4ffb4d2b0267115a588.zip | |
logging: adapt to changes in fmt 8.1
Diffstat (limited to '')
| -rw-r--r-- | src/common/logging/log.h | 15 | ||||
| -rw-r--r-- | src/shader_recompiler/backend/glasm/reg_alloc.h | 8 | ||||
| -rw-r--r-- | src/shader_recompiler/frontend/ir/patch.cpp | 4 |
3 files changed, 20 insertions, 7 deletions
diff --git a/src/common/logging/log.h b/src/common/logging/log.h index c186d55ef..b6a14972f 100644 --- a/src/common/logging/log.h +++ b/src/common/logging/log.h | |||
| @@ -6,11 +6,24 @@ | |||
| 6 | 6 | ||
| 7 | #include <algorithm> | 7 | #include <algorithm> |
| 8 | #include <string_view> | 8 | #include <string_view> |
| 9 | #include <type_traits> | ||
| 9 | 10 | ||
| 10 | #include <fmt/core.h> | 11 | #include <fmt/format.h> |
| 11 | 12 | ||
| 12 | #include "common/logging/types.h" | 13 | #include "common/logging/types.h" |
| 13 | 14 | ||
| 15 | // adapted from https://github.com/fmtlib/fmt/issues/2704 | ||
| 16 | // a generic formatter for enum classes (<= 32 bits) | ||
| 17 | #if FMT_VERSION >= 80100 | ||
| 18 | template <typename T> | ||
| 19 | struct fmt::formatter<T, std::enable_if_t<std::is_enum_v<T>, char>> : formatter<u32> { | ||
| 20 | template <typename FormatContext> | ||
| 21 | auto format(const T& value, FormatContext& ctx) -> decltype(ctx.out()) { | ||
| 22 | return fmt::formatter<u32>::format(static_cast<u32>(value), ctx); | ||
| 23 | } | ||
| 24 | }; | ||
| 25 | #endif | ||
| 26 | |||
| 14 | namespace Common::Log { | 27 | namespace Common::Log { |
| 15 | 28 | ||
| 16 | // trims up to and including the last of ../, ..\, src/, src\ in a string | 29 | // trims up to and including the last of ../, ..\, src/, src\ in a string |
diff --git a/src/shader_recompiler/backend/glasm/reg_alloc.h b/src/shader_recompiler/backend/glasm/reg_alloc.h index 82aec66c6..812d3cdbc 100644 --- a/src/shader_recompiler/backend/glasm/reg_alloc.h +++ b/src/shader_recompiler/backend/glasm/reg_alloc.h | |||
| @@ -235,7 +235,7 @@ struct fmt::formatter<Shader::Backend::GLASM::ScalarU32> { | |||
| 235 | case Shader::Backend::GLASM::Type::U64: | 235 | case Shader::Backend::GLASM::Type::U64: |
| 236 | break; | 236 | break; |
| 237 | } | 237 | } |
| 238 | throw Shader::InvalidArgument("Invalid value type {}", value.type); | 238 | throw Shader::InvalidArgument("Invalid value type {}", static_cast<u32>(value.type)); |
| 239 | } | 239 | } |
| 240 | }; | 240 | }; |
| 241 | 241 | ||
| @@ -256,7 +256,7 @@ struct fmt::formatter<Shader::Backend::GLASM::ScalarS32> { | |||
| 256 | case Shader::Backend::GLASM::Type::U64: | 256 | case Shader::Backend::GLASM::Type::U64: |
| 257 | break; | 257 | break; |
| 258 | } | 258 | } |
| 259 | throw Shader::InvalidArgument("Invalid value type {}", value.type); | 259 | throw Shader::InvalidArgument("Invalid value type {}", static_cast<u32>(value.type)); |
| 260 | } | 260 | } |
| 261 | }; | 261 | }; |
| 262 | 262 | ||
| @@ -277,7 +277,7 @@ struct fmt::formatter<Shader::Backend::GLASM::ScalarF32> { | |||
| 277 | case Shader::Backend::GLASM::Type::U64: | 277 | case Shader::Backend::GLASM::Type::U64: |
| 278 | break; | 278 | break; |
| 279 | } | 279 | } |
| 280 | throw Shader::InvalidArgument("Invalid value type {}", value.type); | 280 | throw Shader::InvalidArgument("Invalid value type {}", static_cast<u32>(value.type)); |
| 281 | } | 281 | } |
| 282 | }; | 282 | }; |
| 283 | 283 | ||
| @@ -298,6 +298,6 @@ struct fmt::formatter<Shader::Backend::GLASM::ScalarF64> { | |||
| 298 | case Shader::Backend::GLASM::Type::U64: | 298 | case Shader::Backend::GLASM::Type::U64: |
| 299 | return fmt::format_to(ctx.out(), "{}", Common::BitCast<f64>(value.imm_u64)); | 299 | return fmt::format_to(ctx.out(), "{}", Common::BitCast<f64>(value.imm_u64)); |
| 300 | } | 300 | } |
| 301 | throw Shader::InvalidArgument("Invalid value type {}", value.type); | 301 | throw Shader::InvalidArgument("Invalid value type {}", static_cast<u32>(value.type)); |
| 302 | } | 302 | } |
| 303 | }; | 303 | }; |
diff --git a/src/shader_recompiler/frontend/ir/patch.cpp b/src/shader_recompiler/frontend/ir/patch.cpp index 4c956a970..d8730284e 100644 --- a/src/shader_recompiler/frontend/ir/patch.cpp +++ b/src/shader_recompiler/frontend/ir/patch.cpp | |||
| @@ -13,14 +13,14 @@ bool IsGeneric(Patch patch) noexcept { | |||
| 13 | 13 | ||
| 14 | u32 GenericPatchIndex(Patch patch) { | 14 | u32 GenericPatchIndex(Patch patch) { |
| 15 | if (!IsGeneric(patch)) { | 15 | if (!IsGeneric(patch)) { |
| 16 | throw InvalidArgument("Patch {} is not generic", patch); | 16 | throw InvalidArgument("Patch {} is not generic", static_cast<u64>(patch)); |
| 17 | } | 17 | } |
| 18 | return (static_cast<u32>(patch) - static_cast<u32>(Patch::Component0)) / 4; | 18 | return (static_cast<u32>(patch) - static_cast<u32>(Patch::Component0)) / 4; |
| 19 | } | 19 | } |
| 20 | 20 | ||
| 21 | u32 GenericPatchElement(Patch patch) { | 21 | u32 GenericPatchElement(Patch patch) { |
| 22 | if (!IsGeneric(patch)) { | 22 | if (!IsGeneric(patch)) { |
| 23 | throw InvalidArgument("Patch {} is not generic", patch); | 23 | throw InvalidArgument("Patch {} is not generic", static_cast<u64>(patch)); |
| 24 | } | 24 | } |
| 25 | return (static_cast<u32>(patch) - static_cast<u32>(Patch::Component0)) % 4; | 25 | return (static_cast<u32>(patch) - static_cast<u32>(Patch::Component0)) % 4; |
| 26 | } | 26 | } |