Browse Source

Merge pull request #992 from bunnei/declr-pred

gl_shader_decompiler: Declare predicates on use.
nce_cpp
bunnei 7 years ago
committed by GitHub
parent
commit
c984e79040
  1. 9
      src/video_core/renderer_opengl/gl_shader_decompiler.cpp

9
src/video_core/renderer_opengl/gl_shader_decompiler.cpp

@ -657,16 +657,17 @@ private:
* @param instr Instruction to generate the if condition for. * @param instr Instruction to generate the if condition for.
* @returns string containing the predicate condition. * @returns string containing the predicate condition.
*/ */
std::string GetPredicateCondition(u64 index, bool negate) const {
std::string GetPredicateCondition(u64 index, bool negate) {
using Tegra::Shader::Pred; using Tegra::Shader::Pred;
std::string variable; std::string variable;
// Index 7 is used as an 'Always True' condition. // Index 7 is used as an 'Always True' condition.
if (index == static_cast<u64>(Pred::UnusedIndex))
if (index == static_cast<u64>(Pred::UnusedIndex)) {
variable = "true"; variable = "true";
else
} else {
variable = 'p' + std::to_string(index) + '_' + suffix; variable = 'p' + std::to_string(index) + '_' + suffix;
declr_predicates.insert(variable);
}
if (negate) { if (negate) {
return "!(" + variable + ')'; return "!(" + variable + ')';
} }

Loading…
Cancel
Save