File tree Expand file tree Collapse file tree 1 file changed +7
-8
lines changed
llvm/lib/CodeGen/SelectionDAG Expand file tree Collapse file tree 1 file changed +7
-8
lines changed Original file line number Diff line number Diff line change @@ -27419,21 +27419,20 @@ SDValue DAGCombiner::XformToShuffleWithZero(SDNode *N) {
2741927419 continue;
2742027420 }
2742127421
27422- APInt Bits;
27423- if (auto OptBits = Elt->bitcastToAPInt())
27424- Bits = *std::move(OptBits);
27425- else
27422+ std::optional<APInt> Bits = Elt->bitcastToAPInt();
27423+ if (!Bits)
2742627424 return SDValue();
2742727425
2742827426 // Extract the sub element from the constant bit mask.
2742927427 if (DAG.getDataLayout().isBigEndian())
27430- Bits = Bits.extractBits(NumSubBits, (Split - SubIdx - 1) * NumSubBits);
27428+ *Bits =
27429+ Bits->extractBits(NumSubBits, (Split - SubIdx - 1) * NumSubBits);
2743127430 else
27432- Bits = Bits. extractBits(NumSubBits, SubIdx * NumSubBits);
27431+ * Bits = Bits-> extractBits(NumSubBits, SubIdx * NumSubBits);
2743327432
27434- if (Bits. isAllOnes())
27433+ if (Bits-> isAllOnes())
2743527434 Indices.push_back(i);
27436- else if (Bits == 0)
27435+ else if (* Bits == 0)
2743727436 Indices.push_back(i + NumSubElts);
2743827437 else
2743927438 return SDValue();
You can’t perform that action at this time.
0 commit comments