llvm-project
2f9f70cc - [AArch64][llvm] Tighten SYSP; don't disassemble invalid encodings

Commit
3 days ago
[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
Author
Committer
Parents
Loading