From 13e8a11adf4910c8871eb80a84f080652f76e72b Mon Sep 17 00:00:00 2001 From: Galen Williamson Date: Fri, 17 Jan 2025 19:35:56 -0500 Subject: [thumb2] Fix #6328: "Invalid intrinsic lifting for MRS instruction: destination register incorrectly specified" by correctly specifying the intrinsic outputs --- arch/armv7/thumb2_disasm/il_thumb2.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/armv7/thumb2_disasm/il_thumb2.cpp b/arch/armv7/thumb2_disasm/il_thumb2.cpp index 8f9e9bab..e7b783a9 100644 --- a/arch/armv7/thumb2_disasm/il_thumb2.cpp +++ b/arch/armv7/thumb2_disasm/il_thumb2.cpp @@ -994,7 +994,8 @@ bool GetLowLevelILForThumbInstruction(Architecture* arch, LowLevelILFunction& il break; case armv7::ARMV7_MRS: { - int dest_reg = ReadILOperand(il, instr, 0); + int dest_reg = GetRegisterByIndex(instr->fields[instr->format->operands[0].field0], instr->format->operands[0].prefix); + int intrinsic_id = ARMV7_INTRIN_MRS; il.AddInstruction( -- cgit v1.3.1