[PATCH] D87464: [TargetLowering] Improve SimplifyDemandedBits for AND and OR
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 2 08:04:51 PST 2021
RKSimon added inline comments.
================
Comment at: llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp:1208
assert(!Known.hasConflict() && "Bits known to be one AND zero?");
if (SimplifyDemandedBits(Op0, ~Known.Zero & DemandedBits, DemandedElts,
Known2, TLO, Depth + 1))
----------------
Pull out
```
APInt Op0DemandedBits = ~Known.Zero & DemandedBits;
```
================
Comment at: llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp:1225
SDValue DemandedOp0 = SimplifyMultipleUseDemandedBits(
Op0, DemandedBits, DemandedElts, TLO.DAG, Depth + 1);
SDValue DemandedOp1 = SimplifyMultipleUseDemandedBits(
----------------
Op0DemandedBits ?
================
Comment at: llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp:1227
SDValue DemandedOp1 = SimplifyMultipleUseDemandedBits(
Op1, DemandedBits, DemandedElts, TLO.DAG, Depth + 1);
if (DemandedOp0 || DemandedOp1) {
----------------
Op1DemandedBits ?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D87464/new/
https://reviews.llvm.org/D87464
More information about the llvm-commits
mailing list