diff options
author | Craig Topper <craig.topper@sifive.com> | 2025-02-27 14:56:54 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-27 14:56:54 -0800 |
commit | f3b18491e840c23dfe25e399ddf6475425481835 (patch) | |
tree | 70d362aaf6c9156e75a0588bd08de008a8830156 /llvm/lib/CodeGen/MachineInstr.cpp | |
parent | 44c6616a4a9f5c8e8e68364609f018c62670d114 (diff) | |
download | llvm-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