summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend
diff options
context:
space:
mode:
authorGravatar lat9nq2021-06-28 23:44:03 -0400
committerGravatar ameerj2021-07-22 21:51:40 -0400
commit2e5af95541adf581364ee3864be57f9b2b9a230f (patch)
tree939e3d203ecc1ea98fae168745004c28cdb9b007 /src/shader_recompiler/backend
parentshader: Account for 33-bit IADD3 scenario (diff)
downloadyuzu-2e5af95541adf581364ee3864be57f9b2b9a230f.tar.gz
yuzu-2e5af95541adf581364ee3864be57f9b2b9a230f.tar.xz
yuzu-2e5af95541adf581364ee3864be57f9b2b9a230f.zip
shader: GCC fmt 8.0.0 fixes
Diffstat (limited to 'src/shader_recompiler/backend')
-rw-r--r--src/shader_recompiler/backend/glasm/emit_context.h8
-rw-r--r--src/shader_recompiler/backend/glsl/emit_context.cpp2
-rw-r--r--src/shader_recompiler/backend/glsl/emit_context.h6
-rw-r--r--src/shader_recompiler/backend/glsl/emit_glsl_context_get_set.cpp4
-rw-r--r--src/shader_recompiler/backend/spirv/emit_context.cpp5
5 files changed, 14 insertions, 11 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_context.h b/src/shader_recompiler/backend/glasm/emit_context.h
index 9f86e55d3..1da51a996 100644
--- a/src/shader_recompiler/backend/glasm/emit_context.h
+++ b/src/shader_recompiler/backend/glasm/emit_context.h
@@ -37,21 +37,23 @@ public:
37 37
38 template <typename... Args> 38 template <typename... Args>
39 void Add(const char* format_str, IR::Inst& inst, Args&&... args) { 39 void Add(const char* format_str, IR::Inst& inst, Args&&... args) {
40 code += fmt::format(format_str, reg_alloc.Define(inst), std::forward<Args>(args)...); 40 code += fmt::format(fmt::runtime(format_str), reg_alloc.Define(inst),
41 std::forward<Args>(args)...);
41 // TODO: Remove this 42 // TODO: Remove this
42 code += '\n'; 43 code += '\n';
43 } 44 }
44 45
45 template <typename... Args> 46 template <typename... Args>
46 void LongAdd(const char* format_str, IR::Inst& inst, Args&&... args) { 47 void LongAdd(const char* format_str, IR::Inst& inst, Args&&... args) {
47 code += fmt::format(format_str, reg_alloc.LongDefine(inst), std::forward<Args>(args)...); 48 code += fmt::format(fmt::runtime(format_str), reg_alloc.LongDefine(inst),
49 std::forward<Args>(args)...);
48 // TODO: Remove this 50 // TODO: Remove this
49 code += '\n'; 51 code += '\n';
50 } 52 }
51 53
52 template <typename... Args> 54 template <typename... Args>
53 void Add(const char* format_str, Args&&... args) { 55 void Add(const char* format_str, Args&&... args) {
54 code += fmt::format(format_str, std::forward<Args>(args)...); 56 code += fmt::format(fmt::runtime(format_str), std::forward<Args>(args)...);
55 // TODO: Remove this 57 // TODO: Remove this
56 code += '\n'; 58 code += '\n';
57 } 59 }
diff --git a/src/shader_recompiler/backend/glsl/emit_context.cpp b/src/shader_recompiler/backend/glsl/emit_context.cpp
index 36527bbd4..0dcdff152 100644
--- a/src/shader_recompiler/backend/glsl/emit_context.cpp
+++ b/src/shader_recompiler/backend/glsl/emit_context.cpp
@@ -597,7 +597,7 @@ std::string EmitContext::DefineGlobalMemoryFunctions() {
597 func += comparison; 597 func += comparison;
598 598
599 const auto ssbo_name{fmt::format("{}_ssbo{}", stage_name, index)}; 599 const auto ssbo_name{fmt::format("{}_ssbo{}", stage_name, index)};
600 func += fmt::format(return_statement, ssbo_name, ssbo_addr); 600 func += fmt::format(fmt::runtime(return_statement), ssbo_name, ssbo_addr);
601 }}; 601 }};
602 std::string write_func{"void WriteGlobal32(uint64_t addr,uint data){"}; 602 std::string write_func{"void WriteGlobal32(uint64_t addr,uint data){"};
603 std::string write_func_64{"void WriteGlobal64(uint64_t addr,uvec2 data){"}; 603 std::string write_func_64{"void WriteGlobal64(uint64_t addr,uvec2 data){"};
diff --git a/src/shader_recompiler/backend/glsl/emit_context.h b/src/shader_recompiler/backend/glsl/emit_context.h
index dd7397489..d9b639d29 100644
--- a/src/shader_recompiler/backend/glsl/emit_context.h
+++ b/src/shader_recompiler/backend/glsl/emit_context.h
@@ -51,9 +51,9 @@ public:
51 const auto var_def{var_alloc.AddDefine(inst, type)}; 51 const auto var_def{var_alloc.AddDefine(inst, type)};
52 if (var_def.empty()) { 52 if (var_def.empty()) {
53 // skip assigment. 53 // skip assigment.
54 code += fmt::format(format_str + 3, std::forward<Args>(args)...); 54 code += fmt::format(fmt::runtime(format_str + 3), std::forward<Args>(args)...);
55 } else { 55 } else {
56 code += fmt::format(format_str, var_def, std::forward<Args>(args)...); 56 code += fmt::format(fmt::runtime(format_str), var_def, std::forward<Args>(args)...);
57 } 57 }
58 // TODO: Remove this 58 // TODO: Remove this
59 code += '\n'; 59 code += '\n';
@@ -131,7 +131,7 @@ public:
131 131
132 template <typename... Args> 132 template <typename... Args>
133 void Add(const char* format_str, Args&&... args) { 133 void Add(const char* format_str, Args&&... args) {
134 code += fmt::format(format_str, std::forward<Args>(args)...); 134 code += fmt::format(fmt::runtime(format_str), std::forward<Args>(args)...);
135 // TODO: Remove this 135 // TODO: Remove this
136 code += '\n'; 136 code += '\n';
137 } 137 }
diff --git a/src/shader_recompiler/backend/glsl/emit_glsl_context_get_set.cpp b/src/shader_recompiler/backend/glsl/emit_glsl_context_get_set.cpp
index d5424301b..580063fa9 100644
--- a/src/shader_recompiler/backend/glsl/emit_glsl_context_get_set.cpp
+++ b/src/shader_recompiler/backend/glsl/emit_glsl_context_get_set.cpp
@@ -61,14 +61,14 @@ void GetCbuf(EmitContext& ctx, std::string_view ret, const IR::Value& binding,
61 : fmt ::format("bitfieldExtract({},int({}),{})", cbuf_cast, 61 : fmt ::format("bitfieldExtract({},int({}),{})", cbuf_cast,
62 bit_offset, num_bits)}; 62 bit_offset, num_bits)};
63 if (!component_indexing_bug) { 63 if (!component_indexing_bug) {
64 const auto result{fmt::format(extraction, swizzle)}; 64 const auto result{fmt::format(fmt::runtime(extraction), swizzle)};
65 ctx.Add("{}={};", ret, result); 65 ctx.Add("{}={};", ret, result);
66 return; 66 return;
67 } 67 }
68 const auto cbuf_offset{fmt::format("{}>>2", offset_var)}; 68 const auto cbuf_offset{fmt::format("{}>>2", offset_var)};
69 for (u32 i = 0; i < 4; ++i) { 69 for (u32 i = 0; i < 4; ++i) {
70 const auto swizzle_string{fmt::format(".{}", "xyzw"[i])}; 70 const auto swizzle_string{fmt::format(".{}", "xyzw"[i])};
71 const auto result{fmt::format(extraction, swizzle_string)}; 71 const auto result{fmt::format(fmt::runtime(extraction), swizzle_string)};
72 ctx.Add("if(({}&3)=={}){}={};", cbuf_offset, i, ret, result); 72 ctx.Add("if(({}&3)=={}){}={};", cbuf_offset, i, ret, result);
73 } 73 }
74} 74}
diff --git a/src/shader_recompiler/backend/spirv/emit_context.cpp b/src/shader_recompiler/backend/spirv/emit_context.cpp
index 0926dcf14..865f34291 100644
--- a/src/shader_recompiler/backend/spirv/emit_context.cpp
+++ b/src/shader_recompiler/backend/spirv/emit_context.cpp
@@ -244,8 +244,9 @@ std::string_view StageName(Stage stage) {
244 244
245template <typename... Args> 245template <typename... Args>
246void Name(EmitContext& ctx, Id object, std::string_view format_str, Args&&... args) { 246void Name(EmitContext& ctx, Id object, std::string_view format_str, Args&&... args) {
247 ctx.Name(object, 247 ctx.Name(object, fmt::format(fmt::runtime(format_str), StageName(ctx.stage),
248 fmt::format(format_str, StageName(ctx.stage), std::forward<Args>(args)...).c_str()); 248 std::forward<Args>(args)...)
249 .c_str());
249} 250}
250 251
251void DefineConstBuffers(EmitContext& ctx, const Info& info, Id UniformDefinitions::*member_type, 252void DefineConstBuffers(EmitContext& ctx, const Info& info, Id UniformDefinitions::*member_type,