From f961a2e3b478f8923eb3f8e05941841855f75984 Mon Sep 17 00:00:00 2001 From: raven02 Date: Fri, 22 May 2015 07:56:49 +0800 Subject: [PATCH] GL: fix IFE instruction --- rpcs3/Emu/RSX/Common/FragmentProgramDecompiler.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/Common/FragmentProgramDecompiler.cpp b/rpcs3/Emu/RSX/Common/FragmentProgramDecompiler.cpp index efa3224dac..3f3c4d969d 100644 --- a/rpcs3/Emu/RSX/Common/FragmentProgramDecompiler.cpp +++ b/rpcs3/Emu/RSX/Common/FragmentProgramDecompiler.cpp @@ -501,7 +501,8 @@ std::string FragmentProgramDecompiler::Decompile() case RSX_FP_OPCODE_FENCB: forced_unit = FORCE_SCB; break; case RSX_FP_OPCODE_IFE: AddCode("if($cond)"); - m_else_offsets.push_back(src1.else_offset << 2); + if (src2.end_offset != src1.else_offset) + m_else_offsets.push_back(src1.else_offset << 2); m_end_offsets.push_back(src2.end_offset << 2); AddCode("{"); m_code_level++;