gl_shader_decompiler: Tidy up minor remaining cases of unnecessary std::string concatenation

merge-requests/60/head
Lioncash 2019-05-14 18:12:29 +07:00
parent 6fb29764d6
commit 58a0c13e34
1 changed files with 20 additions and 21 deletions

@ -74,9 +74,7 @@ public:
}
std::string GenerateTemporary() {
std::string temporary = "tmp";
temporary += std::to_string(temporary_index++);
return temporary;
return fmt::format("tmp{}", temporary_index++);
}
std::string GetResult() {
@ -1748,24 +1746,25 @@ private:
} // Anonymous namespace
std::string GetCommonDeclarations() {
const auto cbuf = std::to_string(MAX_CONSTBUFFER_ELEMENTS);
return "#define MAX_CONSTBUFFER_ELEMENTS " + cbuf + "\n" +
"#define ftoi floatBitsToInt\n"
"#define ftou floatBitsToUint\n"
"#define itof intBitsToFloat\n"
"#define utof uintBitsToFloat\n\n"
"float fromHalf2(vec2 pair) {\n"
" return utof(packHalf2x16(pair));\n"
"}\n\n"
"vec2 toHalf2(float value) {\n"
" return unpackHalf2x16(ftou(value));\n"
"}\n\n"
"bvec2 halfFloatNanComparison(bvec2 comparison, vec2 pair1, vec2 pair2) {\n"
" bvec2 is_nan1 = isnan(pair1);\n"
" bvec2 is_nan2 = isnan(pair2);\n"
" return bvec2(comparison.x || is_nan1.x || is_nan2.x, comparison.y || is_nan1.y || "
"is_nan2.y);\n"
"}\n";
return fmt::format(
"#define MAX_CONSTBUFFER_ELEMENTS {}\n"
"#define ftoi floatBitsToInt\n"
"#define ftou floatBitsToUint\n"
"#define itof intBitsToFloat\n"
"#define utof uintBitsToFloat\n\n"
"float fromHalf2(vec2 pair) {{\n"
" return utof(packHalf2x16(pair));\n"
"}}\n\n"
"vec2 toHalf2(float value) {{\n"
" return unpackHalf2x16(ftou(value));\n"
"}}\n\n"
"bvec2 halfFloatNanComparison(bvec2 comparison, vec2 pair1, vec2 pair2) {{\n"
" bvec2 is_nan1 = isnan(pair1);\n"
" bvec2 is_nan2 = isnan(pair2);\n"
" return bvec2(comparison.x || is_nan1.x || is_nan2.x, comparison.y || is_nan1.y || "
"is_nan2.y);\n"
"}}\n",
MAX_CONSTBUFFER_ELEMENTS);
}
ProgramResult Decompile(const Device& device, const ShaderIR& ir, Maxwell::ShaderStage stage,