aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineInstr.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@sifive.com>2025-02-27 14:56:54 -0800
committerGitHub <noreply@github.com>2025-02-27 14:56:54 -0800
commitf3b18491e840c23dfe25e399ddf6475425481835 (patch)
tree70d362aaf6c9156e75a0588bd08de008a8830156 /llvm/lib/CodeGen/MachineInstr.cpp
parent44c6616a4a9f5c8e8e68364609f018c62670d114 (diff)
downloadllvm-f3b18491e840c23dfe25e399ddf6475425481835.zip
llvm-f3b18491e840c23dfe25e399ddf6475425481835.tar.gz
llvm-f3b18491e840c23dfe25e399ddf6475425481835.tar.bz2
[RISCV] Consolidate some DecoderNamespaces for standard extensions. (#128954)
First thing to know is that the subtarget feature checks used to block accessing a decoder table are only a performance optimization and not required for functionality. The tables have their own predicate checks. I've removed them from all the standard extension tables. -RV32 Zacas decoder namespace has been renamed to RV32GPRPair, I think Zilsd(rv32 load/store pair) can go in here too. -The RV32 Zdinx table has been renamed to also use RV32GPRPair. -The Zfinx table has been renamed to remove superflous "RV" prefix. -Zcmp and Zcmt tables have been combined into a ZcOverlap table. I think Zclsd(rv32 compressed load/store pair) can go in here too. -All the extra standard extension tables are checked after the main standard extension table. This makes the common case of the main table matching occur earlier. -Zicfiss is the exception to this as it needs to be checked before the main table since it overrides some encodings from Zcmop. This can't be handled by a predicate based priority as Zicfiss only overrides a subset of Zcmop encodings.
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
0 files changed, 0 insertions, 0 deletions