Merge pull request #2983 from lioncash/fallthrough
gl_shader_decompiler/vk_shader_decompiler: Resolve implicit fallthrough cases
This commit is contained in:
		| @@ -2314,10 +2314,13 @@ public: | |||||||
|             switch (index) { |             switch (index) { | ||||||
|             case Tegra::Shader::Pred::NeverExecute: |             case Tegra::Shader::Pred::NeverExecute: | ||||||
|                 target = "false"; |                 target = "false"; | ||||||
|  |                 break; | ||||||
|             case Tegra::Shader::Pred::UnusedIndex: |             case Tegra::Shader::Pred::UnusedIndex: | ||||||
|                 target = "true"; |                 target = "true"; | ||||||
|  |                 break; | ||||||
|             default: |             default: | ||||||
|                 target = decomp.GetPredicate(index); |                 target = decomp.GetPredicate(index); | ||||||
|  |                 break; | ||||||
|             } |             } | ||||||
|         } else if (const auto flag = std::get_if<InternalFlagNode>(&*cc)) { |         } else if (const auto flag = std::get_if<InternalFlagNode>(&*cc)) { | ||||||
|             target = decomp.GetInternalFlag(flag->GetFlag()); |             target = decomp.GetInternalFlag(flag->GetFlag()); | ||||||
|   | |||||||
| @@ -1682,10 +1682,13 @@ public: | |||||||
|             switch (index) { |             switch (index) { | ||||||
|             case Tegra::Shader::Pred::NeverExecute: |             case Tegra::Shader::Pred::NeverExecute: | ||||||
|                 target = decomp.v_false; |                 target = decomp.v_false; | ||||||
|  |                 break; | ||||||
|             case Tegra::Shader::Pred::UnusedIndex: |             case Tegra::Shader::Pred::UnusedIndex: | ||||||
|                 target = decomp.v_true; |                 target = decomp.v_true; | ||||||
|  |                 break; | ||||||
|             default: |             default: | ||||||
|                 target = decomp.predicates.at(index); |                 target = decomp.predicates.at(index); | ||||||
|  |                 break; | ||||||
|             } |             } | ||||||
|         } else if (const auto flag = std::get_if<InternalFlagNode>(&*cc)) { |         } else if (const auto flag = std::get_if<InternalFlagNode>(&*cc)) { | ||||||
|             target = decomp.internal_flags.at(static_cast<u32>(flag->GetFlag())); |             target = decomp.internal_flags.at(static_cast<u32>(flag->GetFlag())); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user