rsx/cfg: Check for end flag before handling any instruction including NOP

This commit is contained in:
kd-11 2025-11-27 02:25:00 +03:00 committed by kd-11
parent 41aaa912e7
commit a442cb91a1

View file

@ -112,6 +112,7 @@ namespace rsx::assembler
src1.HEX = decoded._u32[2]; src1.HEX = decoded._u32[2];
src2.HEX = decoded._u32[3]; src2.HEX = decoded._u32[3];
end = !!dst.end;
const u32 opcode = dst.opcode | (src1.opcode_is_branch << 6); const u32 opcode = dst.opcode | (src1.opcode_is_branch << 6);
if (opcode == RSX_FP_OPCODE_NOP) if (opcode == RSX_FP_OPCODE_NOP)
@ -120,8 +121,6 @@ namespace rsx::assembler
continue; continue;
} }
end = !!dst.end;
bb->instructions.push_back({}); bb->instructions.push_back({});
auto& ir_inst = bb->instructions.back(); auto& ir_inst = bb->instructions.back();
std::memcpy(ir_inst.bytecode, &decoded._u32[0], 16); std::memcpy(ir_inst.bytecode, &decoded._u32[0], 16);