summaryrefslogtreecommitdiff
path: root/src/video_core/shader/decode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/shader/decode.cpp')
-rw-r--r--src/video_core/shader/decode.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/video_core/shader/decode.cpp b/src/video_core/shader/decode.cpp
index f9b1960da..b4a282cbd 100644
--- a/src/video_core/shader/decode.cpp
+++ b/src/video_core/shader/decode.cpp
@@ -46,7 +46,7 @@ void ShaderIR::Decode() {
46 coverage_end = shader_info.end; 46 coverage_end = shader_info.end;
47 if (shader_info.decompilable) { 47 if (shader_info.decompilable) {
48 disable_flow_stack = true; 48 disable_flow_stack = true;
49 auto insert_block = ([this](NodeBlock& nodes, u32 label) { 49 const auto insert_block = ([this](NodeBlock& nodes, u32 label) {
50 if (label == exit_branch) { 50 if (label == exit_branch) {
51 return; 51 return;
52 } 52 }
@@ -88,7 +88,6 @@ void ShaderIR::Decode() {
88 for (u32 label = main_offset; label < shader_end; label++) { 88 for (u32 label = main_offset; label < shader_end; label++) {
89 basic_blocks.insert({label, DecodeRange(label, label + 1)}); 89 basic_blocks.insert({label, DecodeRange(label, label + 1)});
90 } 90 }
91 return;
92} 91}
93 92
94NodeBlock ShaderIR::DecodeRange(u32 begin, u32 end) { 93NodeBlock ShaderIR::DecodeRange(u32 begin, u32 end) {
@@ -104,16 +103,17 @@ void ShaderIR::DecodeRangeInner(NodeBlock& bb, u32 begin, u32 end) {
104} 103}
105 104
106void ShaderIR::InsertControlFlow(NodeBlock& bb, const ShaderBlock& block) { 105void ShaderIR::InsertControlFlow(NodeBlock& bb, const ShaderBlock& block) {
107 auto apply_conditions = ([&](const Condition& cond, Node n) -> Node { 106 const auto apply_conditions = ([&](const Condition& cond, Node n) -> Node {
108 Node result = n; 107 Node result = n;
109 if (cond.cc != ConditionCode::T) { 108 if (cond.cc != ConditionCode::T) {
110 result = Conditional(GetConditionCode(cond.cc), {result}); 109 result = Conditional(GetConditionCode(cond.cc), {result});
111 } 110 }
112 if (cond.predicate != Pred::UnusedIndex) { 111 if (cond.predicate != Pred::UnusedIndex) {
113 u32 pred = static_cast<u32>(cond.predicate); 112 u32 pred = static_cast<u32>(cond.predicate);
114 bool is_neg = pred > 7; 113 const bool is_neg = pred > 7;
115 if (is_neg) 114 if (is_neg) {
116 pred -= 8; 115 pred -= 8;
116 }
117 result = Conditional(GetPredicate(pred, is_neg), {result}); 117 result = Conditional(GetPredicate(pred, is_neg), {result});
118 } 118 }
119 return result; 119 return result;