diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp')
-rw-r--r-- | contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp b/contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp index ed4874baf7c8..0a6dd727eb82 100644 --- a/contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp +++ b/contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp @@ -230,8 +230,7 @@ bool Coloring::color() { WorkQ.push_back(N); } - for (unsigned I = 0; I < WorkQ.size(); ++I) { - Node N = WorkQ[I]; + for (Node N : WorkQ) { NodeSet &Ns = Edges[N]; auto P = getUniqueColor(Ns); if (P.first) { @@ -270,8 +269,7 @@ bool Coloring::color() { #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP) void Coloring::dump() const { dbgs() << "{ Order: {"; - for (unsigned I = 0; I != Order.size(); ++I) { - Node P = Order[I]; + for (Node P : Order) { if (P != Ignore) dbgs() << ' ' << P; else @@ -761,8 +759,7 @@ void ResultStack::print(raw_ostream &OS, const SelectionDAG &G) const { namespace { struct ShuffleMask { ShuffleMask(ArrayRef<int> M) : Mask(M) { - for (unsigned I = 0, E = Mask.size(); I != E; ++I) { - int M = Mask[I]; + for (int M : Mask) { if (M == -1) continue; MinSrc = (MinSrc == -1) ? M : std::min(MinSrc, M); @@ -935,8 +932,7 @@ static SmallVector<unsigned, 4> getInputSegmentList(ShuffleMask SM, unsigned Shift = Log2_32(SegLen); BitVector Segs(alignTo(SM.MaxSrc + 1, SegLen) >> Shift); - for (int I = 0, E = SM.Mask.size(); I != E; ++I) { - int M = SM.Mask[I]; + for (int M : SM.Mask) { if (M >= 0) Segs.set(M >> Shift); } @@ -2397,6 +2393,7 @@ void HexagonDAGToDAGISel::SelectV65GatherPred(SDNode *N) { SDValue Base = N->getOperand(4); SDValue Modifier = N->getOperand(5); SDValue Offset = N->getOperand(6); + SDValue ImmOperand = CurDAG->getTargetConstant(0, dl, MVT::i32); unsigned Opcode; unsigned IntNo = cast<ConstantSDNode>(N->getOperand(1))->getZExtValue(); @@ -2418,7 +2415,8 @@ void HexagonDAGToDAGISel::SelectV65GatherPred(SDNode *N) { } SDVTList VTs = CurDAG->getVTList(MVT::Other); - SDValue Ops[] = { Address, Predicate, Base, Modifier, Offset, Chain }; + SDValue Ops[] = { Address, ImmOperand, + Predicate, Base, Modifier, Offset, Chain }; SDNode *Result = CurDAG->getMachineNode(Opcode, dl, VTs, Ops); MachineMemOperand *MemOp = cast<MemIntrinsicSDNode>(N)->getMemOperand(); @@ -2434,6 +2432,7 @@ void HexagonDAGToDAGISel::SelectV65Gather(SDNode *N) { SDValue Base = N->getOperand(3); SDValue Modifier = N->getOperand(4); SDValue Offset = N->getOperand(5); + SDValue ImmOperand = CurDAG->getTargetConstant(0, dl, MVT::i32); unsigned Opcode; unsigned IntNo = cast<ConstantSDNode>(N->getOperand(1))->getZExtValue(); @@ -2455,7 +2454,7 @@ void HexagonDAGToDAGISel::SelectV65Gather(SDNode *N) { } SDVTList VTs = CurDAG->getVTList(MVT::Other); - SDValue Ops[] = { Address, Base, Modifier, Offset, Chain }; + SDValue Ops[] = { Address, ImmOperand, Base, Modifier, Offset, Chain }; SDNode *Result = CurDAG->getMachineNode(Opcode, dl, VTs, Ops); MachineMemOperand *MemOp = cast<MemIntrinsicSDNode>(N)->getMemOperand(); |