[all-commits] [llvm/llvm-project] fb2823: [AArch64][llvm] Tighten SYSP; don't disassemble in...
Jonathan Thackray via All-commits
all-commits at lists.llvm.org
Thu Feb 19 16:25:58 PST 2026
Branch: refs/heads/users/jthackray/tighten_sysp_encoding
Home: https://github.com/llvm/llvm-project
Commit: fb282368ee943ac249cc5966d48ee1c6d29f9080
https://github.com/llvm/llvm-project/commit/fb282368ee943ac249cc5966d48ee1c6d29f9080
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-02-20 (Fri, 20 Feb 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
M llvm/test/MC/AArch64/armv9-sysp-diagnostics.s
M llvm/test/MC/AArch64/armv9a-sysp.s
Log Message:
-----------
[AArch64][llvm] Tighten SYSP; don't disassemble invalid encodings
Tighten SYSP aliases, so that invalid encodings are disassembled
to `<unknown>`. This is because:
```
Cn is a 4-bit unsigned immediate, in the range 8 to 9
Cm is a 4-bit unsigned immediate, in the range 0 to 7
op1 is a 3-bit unsigned immediate, in the range 0 to 6
op2 is a 3-bit unsigned immediate, in the range 0 to 7
```
Ensure we check this when disassembling, and also constrain
tablegen for compile-time errors of invalid encodings.
Also adjust the testcases in `armv9-sysp-diagnostics.s` and
`llvm/test/MC/AArch64/armv9a-sysp.s` as they were invalid,
and added a few invalid (outside of range) SYSP-alikes to
test that `<unknown>` is printed
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list