[lldb] [llvm] [AArch64][llvm] Tighten SYSP parsing; don't disassemble invalid encodings (PR #182410)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 30 09:21:56 PDT 2026
================
@@ -813,6 +813,13 @@ def XSeqPairsClass : RegisterClass<"AArch64", [untyped], 64,
(add XSeqPairs)>{
let Size = 128;
}
+def SyspPairsClass : RegisterClass<"AArch64", [untyped], 64,
----------------
CarolineConcatto wrote:
`SYSPxt` appears to be MC-only, but `SyspPairsClass` is a real RegisterClass mixing `XSeqPairs` and
`XZR`. That causes TableGen to emit register-bank/subregister/allocation-order metadata such as
`SyspPairsClass_and_GPR64`, even though this operand is only used for SYSP assembly/disassembly.
Could this be modeled with a custom operand/parser/decoder/printer while keeping the underlying register
class as `XSeqPairsClass` plus an explicit `XZR` case, instead of introducing a new physical register
class?
If not, can you add a comment why this needs to be a register class
https://github.com/llvm/llvm-project/pull/182410
More information about the llvm-commits
mailing list