Skip to content

Commit 1a02db9

Browse files
committed
[X86] canonicalizeShuffleWithBinOps - add TODO for X86ISD::ANDNP bitwise handling
Its just as safe to move shuffles across X86ISD::ANDNP as any other logical bitop, they just tend to appear too late to matter. Noticed while triaging D127115 regressions.
1 parent abcf149 commit 1a02db9

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

llvm/lib/Target/X86/X86ISelLowering.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39186,6 +39186,7 @@ static SDValue canonicalizeShuffleWithBinOps(SDValue N, SelectionDAG &DAG,
3918639186
auto IsSafeToMoveShuffle = [ShuffleVT](SDValue Op, unsigned BinOp) {
3918739187
// Ensure we only shuffle whole vector src elements, unless its a logical
3918839188
// binops where we can more aggressively move shuffles from dst to src.
39189+
// TODO: Add X86ISD::ANDNP handling with test coverage.
3918939190
return BinOp == ISD::AND || BinOp == ISD::OR || BinOp == ISD::XOR ||
3919039191
(Op.getScalarValueSizeInBits() <= ShuffleVT.getScalarSizeInBits());
3919139192
};

0 commit comments

Comments
 (0)