diff options
author | Jason Eckhardt <jeckhardt@nvidia.com> | 2024-03-11 08:13:33 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-11 08:13:33 -0500 |
commit | 6f7e940c2d6711c7be8bc5365a1f4da3a328b2eb (patch) | |
tree | 15a0b1b1dca8e4a47612976dbcccdb1882652395 /llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp | |
parent | 2f1873d11e8853d1ddb801b4c512be3967ffcfc9 (diff) | |
download | llvm-6f7e940c2d6711c7be8bc5365a1f4da3a328b2eb.zip llvm-6f7e940c2d6711c7be8bc5365a1f4da3a328b2eb.tar.gz llvm-6f7e940c2d6711c7be8bc5365a1f4da3a328b2eb.tar.bz2 |
[TableGen] More efficiency improvements for encode/decode emission. (#84647)
DecoderEmitter and CodeEmitterGen perform repeated linear walks over the
entire instruction list. This patch eliminates two more such walks.
The eliminated traversals visit every instruction merely to determine
whether the target has variable length encodings. For a target with
variable length encodings, the original any_of will terminate quickly.
But all targets other than M68k use fixed length encodings and thus
any_of must visit the entire instruction list.
Diffstat (limited to 'llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions