Canonicalise the following operations in getNode() for predicate types:
- CTLZ(Pred) -> bitwise_NOT(Pred)
- CTTZ(Pred) -> bitwise_NOT(Pred)
- CTPOP(Pred) -> Pred
Paths
| Differential D94428
[SVE][CodeGen] CTLZ, CTTZ & CTPOP operations (predicates) ClosedPublic Authored by kmclaughlin on Jan 11 2021, 9:25 AM.
Details Summary Canonicalise the following operations in getNode() for predicate types:
Diff Detail
Event TimelineComment Actions LGTM! The canonicalisation looks sensible to me.
This revision is now accepted and ready to land.Jan 12 2021, 1:15 AM Closed by commit rG2170e0ee60db: [SVE][CodeGen] CTLZ, CTTZ & CTPOP operations (predicates) (authored by kmclaughlin). · Explain WhyJan 13 2021, 4:25 AM This revision was automatically updated to reflect the committed changes. kmclaughlin marked an inline comment as done.
Revision Contents
Diff 316365 llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/test/CodeGen/AArch64/sve-bit-counting-pred.ll
|
nit: Perhaps worth changing this comment to CTPOP to match the intrinsic name, similar to the CTLZ and CTTZ comments below?