@@ -1476,8 +1476,7 @@ void AArch64DAGToDAGISel::SelectTable(SDNode *N, unsigned NumVecs, unsigned Opc,
14761476
14771477 // Form a REG_SEQUENCE to force register allocation.
14781478 unsigned Vec0Off = ExtOff + 1 ;
1479- SmallVector<SDValue, 4 > Regs (N->op_begin () + Vec0Off,
1480- N->op_begin () + Vec0Off + NumVecs);
1479+ SmallVector<SDValue, 4 > Regs (N->ops ().slice (Vec0Off, NumVecs));
14811480 SDValue RegSeq = createQTuple (Regs);
14821481
14831482 SmallVector<SDValue, 6 > Ops;
@@ -1863,7 +1862,7 @@ void AArch64DAGToDAGISel::SelectWhilePair(SDNode *N, unsigned Opc) {
18631862void AArch64DAGToDAGISel::SelectCVTIntrinsic (SDNode *N, unsigned NumVecs,
18641863 unsigned Opcode) {
18651864 EVT VT = N->getValueType (0 );
1866- SmallVector<SDValue, 4 > Regs (N->op_begin () + 1 , N-> op_begin () + 1 + NumVecs);
1865+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 1 , NumVecs) );
18671866 SDValue Ops = createZTuple (Regs);
18681867 SDLoc DL (N);
18691868 SDNode *Intrinsic = CurDAG->getMachineNode (Opcode, DL, MVT::Untyped, Ops);
@@ -2072,7 +2071,7 @@ void AArch64DAGToDAGISel::SelectClamp(SDNode *N, unsigned NumVecs,
20722071 SDLoc DL (N);
20732072 EVT VT = N->getValueType (0 );
20742073
2075- SmallVector<SDValue, 4 > Regs (N->op_begin () + 1 , N-> op_begin () + 1 + NumVecs);
2074+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 1 , NumVecs) );
20762075 SDValue Zd = createZMulTuple (Regs);
20772076 SDValue Zn = N->getOperand (1 + NumVecs);
20782077 SDValue Zm = N->getOperand (2 + NumVecs);
@@ -2242,7 +2241,7 @@ void AArch64DAGToDAGISel::SelectPredicatedStore(SDNode *N, unsigned NumVecs,
22422241 SDLoc dl (N);
22432242
22442243 // Form a REG_SEQUENCE to force register allocation.
2245- SmallVector<SDValue, 4 > Regs (N->op_begin () + 2 , N-> op_begin () + 2 + NumVecs);
2244+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 2 , NumVecs) );
22462245 SDValue RegSeq = createZTuple (Regs);
22472246
22482247 // Optimize addressing mode.
@@ -2287,7 +2286,7 @@ void AArch64DAGToDAGISel::SelectPostStore(SDNode *N, unsigned NumVecs,
22872286
22882287 // Form a REG_SEQUENCE to force register allocation.
22892288 bool Is128Bit = VT.getSizeInBits () == 128 ;
2290- SmallVector<SDValue, 4 > Regs (N->op_begin () + 1 , N-> op_begin () + 1 + NumVecs);
2289+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 1 , NumVecs) );
22912290 SDValue RegSeq = Is128Bit ? createQTuple (Regs) : createDTuple (Regs);
22922291
22932292 SDValue Ops[] = {RegSeq,
@@ -2341,7 +2340,7 @@ void AArch64DAGToDAGISel::SelectLoadLane(SDNode *N, unsigned NumVecs,
23412340 bool Narrow = VT.getSizeInBits () == 64 ;
23422341
23432342 // Form a REG_SEQUENCE to force register allocation.
2344- SmallVector<SDValue, 4 > Regs (N->op_begin () + 2 , N-> op_begin () + 2 + NumVecs);
2343+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 2 , NumVecs) );
23452344
23462345 if (Narrow)
23472346 transform (Regs, Regs.begin (),
@@ -2379,7 +2378,7 @@ void AArch64DAGToDAGISel::SelectPostLoadLane(SDNode *N, unsigned NumVecs,
23792378 bool Narrow = VT.getSizeInBits () == 64 ;
23802379
23812380 // Form a REG_SEQUENCE to force register allocation.
2382- SmallVector<SDValue, 4 > Regs (N->op_begin () + 1 , N-> op_begin () + 1 + NumVecs);
2381+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 1 , NumVecs) );
23832382
23842383 if (Narrow)
23852384 transform (Regs, Regs.begin (),
@@ -2433,7 +2432,7 @@ void AArch64DAGToDAGISel::SelectStoreLane(SDNode *N, unsigned NumVecs,
24332432 bool Narrow = VT.getSizeInBits () == 64 ;
24342433
24352434 // Form a REG_SEQUENCE to force register allocation.
2436- SmallVector<SDValue, 4 > Regs (N->op_begin () + 2 , N-> op_begin () + 2 + NumVecs);
2435+ SmallVector<SDValue, 4 > Regs (N->ops (). slice ( 2 , NumVecs) );
24372436
24382437 if (Narrow)
24392438 transform (Regs, Regs.begin (),
0 commit comments