[Lldb-commits] [lldb] [llvm] [AArch64][llvm] Tighten SYSP parsing; don't disassemble invalid encodings (PR #182410)

via lldb-commits lldb-commits at lists.llvm.org
Fri May 1 09:39:58 PDT 2026


================
@@ -1387,25 +1387,31 @@ DecodeXSeqPairsClassRegisterClass(MCInst &Inst, unsigned RegNo, uint64_t Addr,
       Inst, AArch64::XSeqPairsClassRegClassID, RegNo, Addr, Decoder);
 }
 
-static DecodeStatus DecodeSyspXzrInstruction(MCInst &Inst, uint32_t insn,
-                                             uint64_t Addr,
-                                             const MCDisassembler *Decoder) {
+static DecodeStatus
+DecodeSyspPairClassRegisterClass(MCInst &Inst, unsigned RegNo, uint64_t Addr,
+                                 const MCDisassembler *Decoder) {
+  if (RegNo == 31) {
+    Inst.addOperand(MCOperand::createReg(AArch64::XZR));
+    return Success;
+  }
+
+  return DecodeXSeqPairsClassRegisterClass(Inst, RegNo, Addr, Decoder);
+}
+
+static DecodeStatus DecodeSyspInstruction(MCInst &Inst, uint32_t insn,
----------------
Lukacma wrote:

Is this decoder still necessary ? I don't see such decoder for sysl or sys

https://github.com/llvm/llvm-project/pull/182410


More information about the lldb-commits mailing list