diff options
author | Evgenii Kudriashov <evgenii.kudriashov@intel.com> | 2025-01-16 17:06:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-16 17:06:21 +0100 |
commit | a242880371936a8a424b9d80d47eff1be051429c (patch) | |
tree | 199f9ffb99d27a17f6d96c17f7f78d0223a35bd1 /llvm/lib/FileCheck/FileCheck.cpp | |
parent | 18196466238ff25d5c76906645ba1d92f08bd0f7 (diff) | |
download | llvm-a242880371936a8a424b9d80d47eff1be051429c.zip llvm-a242880371936a8a424b9d80d47eff1be051429c.tar.gz llvm-a242880371936a8a424b9d80d47eff1be051429c.tar.bz2 |
[TableGen][GlobalISel] Reorder atomic predicate to preserve the order (#121806)
Since there are no opcodes for atomic loads and stores comparing to
SelectionDAG, we add `CheckMMOIsNonAtomic` predicate immediately after
the opcode predicate to make a logical combination of them. Otherwise
when `IPM_AtomicOrderingMMO` is inserted after `IPM_GenericPredicate`,
the patterns without predicates get a higher priority as
`IPM_AtomicOrderingMMO` has higher priority than `IPM_GenericPredicate`.
This is important to preserve an order of aligned/unaligned patterns on
X86 because aligned memory operations have an additional alignment
predicate and should be checked first according to their placement in td
file.
Closes #121446
Diffstat (limited to 'llvm/lib/FileCheck/FileCheck.cpp')
0 files changed, 0 insertions, 0 deletions