[PATCH] D123782: [AArch64] Generate AND in place of CSEL for Table Based CTTZ lowering in -O3
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 29 10:30:13 PDT 2022
craig.topper added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:17464
IsEQOrNE = true;
}
----------------
You can get rid of the `IsEQOrNE` variable by adding
```
else
return SDValue();
```
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:17466
if (IsEQOrNE &&
(CTTZ.getOpcode() == ISD::CTTZ ||
----------------
Remove the IsEQOrNE using the suggestion above, then invert this to make an early out.
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:17498
+ SDValue Folded = foldCTTZ(N, DAG);
+ if (Folded.getNode() != nullptr)
+ return Folded;
----------------
```
if (SDValue Folded = foldCTTZ(N, DAG))
return Folded;
```
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123782/new/
https://reviews.llvm.org/D123782
More information about the llvm-commits
mailing list