reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/CodeGen/SelectionDAG.h
  743   SDValue getVectorShuffle(EVT VT, const SDLoc &dl, SDValue N1, SDValue N2,

References

lib/CodeGen/SelectionDAG/DAGCombiner.cpp
 4391       return DAG.getVectorShuffle(VT, DL, Logic, ShOp, SVN0->getMask());
 4404       return DAG.getVectorShuffle(VT, DL, ShOp, Logic, SVN0->getMask());
16583   SDValue Shuf = DAG.getVectorShuffle(ShufVT, DL, DestVecBC, PaddedSubV, Mask);
17275   SDValue Shuffle = DAG.getVectorShuffle(InVT1, DL, VecIn1, VecIn2, Mask);
17567           DAG.getVectorShuffle(VT, DL, Shuffles[Left], Shuffles[Right], Mask);
18403   SDValue Shuf0 = DAG.getVectorShuffle(HalfVT, DL, X, Y, Mask0);
18404   SDValue Shuf1 = DAG.getVectorShuffle(HalfVT, DL, X, Y, Mask1);
18432     N0 = DAG.getVectorShuffle(ConcatVT, SDLoc(N), N0.getOperand(0),
18733   return DAG.getVectorShuffle(Splat->getValueType(0), SDLoc(Splat),
18867     return DAG.getVectorShuffle(VT, SDLoc(N), N0, DAG.getUNDEF(VT), NewMask);
18887       return DAG.getVectorShuffle(VT, SDLoc(N), N0, N1, NewMask);
18915       return DAG.getVectorShuffle(VT, DL, Insert, DAG.getUNDEF(VT), ZeroMask);
19057               VT, DAG.getVectorShuffle(ScaleVT, SDLoc(N), SV0, SV1, NewMask));
19514     return DAG.getBitcast(VT, DAG.getVectorShuffle(ClearVT, DL,
19614       return DAG.getVectorShuffle(VT, DL, NewBinOp, UndefV, Shuf0->getMask());
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  269     return DAG.getVectorShuffle(NVT, dl, N1, N2, Mask);
  283   return DAG.getVectorShuffle(NVT, dl, N1, N2, NewMask);
  417       return DAG.getVectorShuffle(Vec.getValueType(), dl, Vec, ScVec, ShufOps);
 1855           Shuffle = DAG.getVectorShuffle(VT, dl, IntermedVals[i].first,
 1888       Res = DAG.getVectorShuffle(VT, dl, Vec1, Vec2, ShuffleVec);
 1997         return DAG.getVectorShuffle(VT, dl, Vec1, Vec2, ShuffleVec);
lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
 4115   return DAG.getVectorShuffle(OutVT, dl, V0, V1, NewMask);
lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
  997       DAG.getVectorShuffle(SrcVT, DL, Src, DAG.getUNDEF(SrcVT), ShuffleMask));
 1061                      DAG.getVectorShuffle(SrcVT, DL, Zero, Src, ShuffleMask));
 1085   Op = DAG.getVectorShuffle(ByteVT, DL, Op, DAG.getUNDEF(ByteVT), ShuffleMask);
 1113       Op = DAG.getVectorShuffle(ByteVT, DL, Op, DAG.getUNDEF(ByteVT),
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
 1293   InHi = DAG.getVectorShuffle(InLoVT, dl, InLo, DAG.getUNDEF(InLoVT), SplitHi);
 1925       Output =  DAG.getVectorShuffle(NewVT, dl, Op0, Op1, Ops);
 3634         return DAG.getVectorShuffle(WidenVT, dl,
 4077   return DAG.getVectorShuffle(WidenVT, dl, InOp1, InOp2, NewMask);
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
 1749   return getVectorShuffle(VT, SDLoc(&SV), Op1, Op0, MaskVec);
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 3569     setValue(&I, DAG.getVectorShuffle(VT, DL, Src1, Src2, Mask));
 3643     SDValue Result = DAG.getVectorShuffle(PaddedVT, DL, Src1, Src2, MappedOps);
 3710       setValue(&I, DAG.getVectorShuffle(VT, DL, Src1, Src2, MappedOps));
lib/CodeGen/SelectionDAG/TargetLowering.cpp
 1001         SDValue NewOp = TLO.DAG.getVectorShuffle(VT, dl, Op0, Op1, ShuffleMask);
 2678   return DAG.getVectorShuffle(VT, DL, N0, N1, Mask);
lib/Target/AArch64/AArch64ISelLowering.cpp
 6451   SDValue Shuffle = DAG.getVectorShuffle(ShuffleVT, dl, ShuffleOps[0],
10002                          DAG.getVectorShuffle(
11647   SDValue Mask = DAG.getVectorShuffle(CCVT, DL, SetCC, SetCC, DUPMask);
lib/Target/ARM/ARMISelLowering.cpp
 7789   SDValue Shuffled = DAG.getVectorShuffle(NewVT, dl, PredAsVector,
12863   return DAG.getVectorShuffle(VT, SDLoc(N), NewConcat,
13294   SDValue Shuff = DAG.getVectorShuffle(
lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
  320     return DAG.getVectorShuffle(OpTy, dl, Op0, Op1, Mask);
  338   return DAG.getVectorShuffle(ResTy, dl, opCastElem(Op0, MVT::i8, DAG),
  466       SDValue S = DAG.getVectorShuffle(ExtTy, dl, ExtVec,
  521     SDValue S = DAG.getVectorShuffle(ByteTy, dl, T, DAG.getUNDEF(ByteTy), Mask);
  832     SDValue ShuffV = DAG.getVectorShuffle(ByteTy, dl, ByteVec, Undef, Mask);
  858   SDValue ShuffV = DAG.getVectorShuffle(ByteTy, dl, ByteVec, Undef, Mask);
lib/Target/PowerPC/PPCISelLowering.cpp
 7215   return DAG.getVectorShuffle(WideVT, DL, Conv, DAG.getUNDEF(WideVT), ShuffV);
 7682   SDValue Arrange = DAG.getVectorShuffle(WideVT, dl, Wide, ShuffleSrc2, ShuffV);
 8170   SDValue T = DAG.getVectorShuffle(MVT::v16i8, dl, LHS, RHS, Ops);
 8659   SDValue T = DAG.getVectorShuffle(MVT::v16i8, dl, OpLHS, OpRHS, ShufIdxs);
 9988       return DAG.getVectorShuffle(MVT::v16i8, dl, OddParts, EvenParts, Ops);
 9990       return DAG.getVectorShuffle(MVT::v16i8, dl, EvenParts, OddParts, Ops);
12793     return DAG.getVectorShuffle(N->getValueType(0), dl, Load,
12823       DAG.getVectorShuffle(Input.getValueType(), dl, Input,
lib/Target/SystemZ/SystemZISelLowering.cpp
 2652   Op = DAG.getVectorShuffle(MVT::v4f32, DL, Op, DAG.getUNDEF(MVT::v4f32), Mask);
 5940       return DAG.getVectorShuffle(VecVT, SDLoc(N), Op0, Op1, SV->getMask());
lib/Target/X86/X86ISelLowering.cpp
 3596   return DAG.getVectorShuffle(VT, dl, V1, V2, Mask);
 5896   return DAG.getVectorShuffle(VT, dl, V1, V2, Mask);
 5904   return DAG.getVectorShuffle(VT, dl, V1, V2, Mask);
 5923   return DAG.getVectorShuffle(VT, SDLoc(V2), V1, V2, MaskVec);
 7613     return DAG.getVectorShuffle(VT, SDLoc(V1), V1, VZeroOrUndef, Mask);
 7736     return DAG.getVectorShuffle(NVT, dl, V1, DAG.getUNDEF(NVT), Mask);
 7955         return DAG.getVectorShuffle(VT, DL, V, Z, ClearMask);
 8472   SDValue NV = DAG.getVectorShuffle(VT, DL, VecIn1, VecIn2, Mask);
 9378           DAG.getVectorShuffle(VT, DL, SrcVec, SrcVec, {0, 0}),
 9379           DAG.getVectorShuffle(VT, DL, SrcVec, SrcVec, {1, 1}),
 9435       SDValue LoLo = DAG.getVectorShuffle(MVT::v8f32, DL, SrcVec, SrcVec,
 9437       SDValue HiHi = DAG.getVectorShuffle(MVT::v8f32, DL, SrcVec, SrcVec,
 9470           DAG.getVectorShuffle(MVT::v4f64, DL, SrcVec, SrcVec, {0, 1, 0, 1});
 9472           DAG.getVectorShuffle(MVT::v4f64, DL, SrcVec, SrcVec, {2, 3, 2, 3});
 9694     return DAG.getVectorShuffle(VT, dl, Ld, S2V, ShuffleMask);
 9893     return DAG.getVectorShuffle(VT, dl, Ops[0], Ops[1], MaskVec);
 9943       Ops[i] = DAG.getVectorShuffle(VT, dl, Ops[2*i], Ops[(2*i)+1], Mask);
11091       return DAG.getVectorShuffle(
11218   SDValue V = DAG.getVectorShuffle(VT, DL, V1, V2, BlendMask);
11219   return DAG.getVectorShuffle(VT, DL, V, DAG.getUNDEF(VT), PermuteMask);
11285   return DAG.getVectorShuffle(VT, DL, Unpck, DAG.getUNDEF(VT), PermuteMask);
11363     return DAG.getVectorShuffle(VT, DL, Rotate, DAG.getUNDEF(VT), PermMask);
11420   V1 = DAG.getVectorShuffle(VT, DL, V1, DAG.getUNDEF(VT), V1Mask);
11421   V2 = DAG.getVectorShuffle(VT, DL, V2, DAG.getUNDEF(VT), V2Mask);
11422   return DAG.getVectorShuffle(VT, DL, V1, V2, BlendMask);
11974     return DAG.getVectorShuffle(VT, DL, V, DAG.getUNDEF(VT), ShMask);
12070     InputV = DAG.getVectorShuffle(VT, DL, InputV, DAG.getUNDEF(VT), ShMask);
12344       V2 = DAG.getVectorShuffle(VT, DL, V2, DAG.getUNDEF(VT), V2Shuffle);
12477   SDValue Shuf = DAG.getVectorShuffle(WideVT, DL, WideVec, DAG.getUNDEF(WideVT),
12843     V1 = DAG.getVectorShuffle(VT, DL, V1, DAG.getUNDEF(VT), V1Mask);
12844     V2 = DAG.getVectorShuffle(VT, DL, V2, DAG.getUNDEF(VT), V2Mask);
12892     return DAG.getVectorShuffle(
13082                         DAG.getVectorShuffle(MVT::v2f64, DL, V1, V2, Mask));
13381   SDValue ShufPS = DAG.getVectorShuffle(MVT::v4f32, DL, CastV1, CastV2, Mask);
14277           DAG.getVectorShuffle(MVT::v8i16, DL, DAG.getBitcast(MVT::v8i16, V1),
14305           DAG.getVectorShuffle(MVT::v8i16, DL, DAG.getBitcast(MVT::v8i16, V1),
14473   SDValue LoV = DAG.getVectorShuffle(MVT::v8i16, DL, VLoHalf, VHiHalf, LoBlendMask);
14474   SDValue HiV = DAG.getVectorShuffle(MVT::v8i16, DL, VLoHalf, VHiHalf, HiBlendMask);
14598       return DAG.getVectorShuffle(SplitVT, DL, LoV1, HiV1, V1BlendMask);
14600       return DAG.getVectorShuffle(SplitVT, DL, LoV2, HiV2, V2BlendMask);
14605         DAG.getVectorShuffle(SplitVT, DL, LoV1, HiV1, V1BlendMask);
14615         DAG.getVectorShuffle(SplitVT, DL, LoV2, HiV2, V2BlendMask);
14623     return DAG.getVectorShuffle(SplitVT, DL, V1Blend, V2Blend, BlendMask);
14748   SDValue LanePermute = DAG.getVectorShuffle(VT, DL, V1, V2, LaneMask);
14749   return DAG.getVectorShuffle(VT, DL, LanePermute, DAG.getUNDEF(VT), PermMask);
14805       DAG.getVectorShuffle(PVT, DL, Flipped, DAG.getUNDEF(PVT), {2, 3, 0, 1});
14807   return DAG.getVectorShuffle(VT, DL, V1, Flipped, InLaneMask);
15041   SDValue NewV1 = DAG.getVectorShuffle(VT, DL, V1, V2, NewMask);
15058   SDValue NewV2 = DAG.getVectorShuffle(VT, DL, V1, V2, NewMask);
15073   return DAG.getVectorShuffle(VT, DL, NewV1, NewV2, NewMask);
15157   SDValue V = DAG.getVectorShuffle(HalfVT, DL, Half1, Half2, HalfMask);
15339       SDValue RepeatShuf = DAG.getVectorShuffle(VT, DL, V1, V2, RepeatMask);
15346       return DAG.getVectorShuffle(VT, DL, RepeatShuf, DAG.getUNDEF(VT),
15450   SDValue RepeatedShuffle = DAG.getVectorShuffle(VT, DL, V1, V2, RepeatedMask);
15462   return DAG.getVectorShuffle(VT, DL, RepeatedShuffle, DAG.getUNDEF(VT),
15561   SDValue Unpack = DAG.getVectorShuffle(MVT::v16i8, DL, V1, V2,
16231     return DAG.getBitcast(VT, DAG.getVectorShuffle(FpVT, DL, V1, V2, Mask));
16960   SDValue Shuffle = DAG.getVectorShuffle(ExtVT, DL, V1, V2, Mask);
17076     return DAG.getVectorShuffle(VT, DL, V1, V2, NewMask);
17147           VT, DAG.getVectorShuffle(NewVT, DL, V1, V2, WidenedMask));
17190     return DAG.getVectorShuffle(VT, SDLoc(Op), LHS, RHS, Mask);
17492     Vec = DAG.getVectorShuffle(VecVT, dl, Vec, DAG.getUNDEF(VecVT), Mask);
17508     Vec = DAG.getVectorShuffle(VecVT, dl, Vec, DAG.getUNDEF(VecVT), Mask);
17577     return DAG.getVectorShuffle(VT, dl, N0, CstVector, BlendMask);
18404     VecOp = DAG.getVectorShuffle(FromVT, DL, VecOp, DAG.getUNDEF(FromVT), Mask);
18597     SDValue Shuffle = DAG.getVectorShuffle(MVT::v2f64, dl, Sub, Sub, {1,-1});
19267     Res = DAG.getVectorShuffle(OutVT, DL, Res, Res, Mask);
19440       In = DAG.getVectorShuffle(MVT::v8i32, DL, In, In, ShufMask);
19452     return DAG.getVectorShuffle(VT, DL, OpLo, OpHi, ShufMask);
19465       In = DAG.getVectorShuffle(MVT::v32i8, DL, In, In, ShufMask1);
19469       In = DAG.getVectorShuffle(MVT::v4i64, DL,  In, In, ShufMask2);
19488     OpLo = DAG.getVectorShuffle(MVT::v16i8, DL, OpLo, OpLo, ShufMask1);
19489     OpHi = DAG.getVectorShuffle(MVT::v16i8, DL, OpHi, OpHi, ShufMask1);
19496     SDValue res = DAG.getVectorShuffle(MVT::v4i32, DL, OpLo, OpHi, ShufMask2);
20886       SDValue EQHi = DAG.getVectorShuffle(MVT::v4i32, dl, EQ, EQ, MaskHi);
20887       SDValue GTLo = DAG.getVectorShuffle(MVT::v4i32, dl, GT, GT, MaskLo);
20888       SDValue GTHi = DAG.getVectorShuffle(MVT::v4i32, dl, GT, GT, MaskHi);
20913       SDValue Shuf = DAG.getVectorShuffle(MVT::v4i32, dl, Result, Result, Mask);
21654     SDValue Hi = DAG.getVectorShuffle(InVT, dl, In, DAG.getUNDEF(InVT), HiMask);
21684     Curr = DAG.getVectorShuffle(InVT, dl, In, In, Mask);
21696     SignExt = DAG.getVectorShuffle(MVT::v4i32, dl, SignExt, Sign, {0, 4, 1, 5});
21754   SDValue OpHi = DAG.getVectorShuffle(InVT, dl, In, In, ShufMask);
25093     SDValue Aodds = DAG.getVectorShuffle(VT, dl, A, A, UnpackMask);
25094     SDValue Bodds = DAG.getVectorShuffle(VT, dl, B, B, UnpackMask);
25111     return DAG.getVectorShuffle(VT, dl, Evens, Odds, ShufMask);
25196     SDValue Odd0 = DAG.getVectorShuffle(VT, dl, A, A,
25199     SDValue Odd1 = DAG.getVectorShuffle(VT, dl, B, B,
25223     SDValue Res = DAG.getVectorShuffle(VT, dl, Mul1, Mul2, ShufMask);
25288     return DAG.getVectorShuffle(VT, dl, Lo, Hi,
25315     AHi = DAG.getVectorShuffle(VT, dl, A, A, PSHUFDMask);
25357     BHi = DAG.getVectorShuffle(VT, dl, B, B, PSHUFDMask);
25513         Ex = DAG.getVectorShuffle(ExVT, dl, Upper, Lower, {5, 1, 7, 3});
25515         Ex = DAG.getVectorShuffle(ExVT, dl, Upper, Lower,
25525         Ex = DAG.getVectorShuffle(ExVT, dl, Upper, Lower, {4, 1, 6, 3});
25527         Ex = DAG.getVectorShuffle(ExVT, dl, Upper, Lower,
25653         BitMask = DAG.getVectorShuffle(VT, dl, BitMask, BitMask,
25753     return DAG.getVectorShuffle(VT, dl, DAG.getBitcast(VT, Lo),
25804     SDValue Amt0 = DAG.getVectorShuffle(VT, dl, Amt, Amt, {0, 0});
25805     SDValue Amt1 = DAG.getVectorShuffle(VT, dl, Amt, Amt, {1, 1});
25808     return DAG.getVectorShuffle(VT, dl, R0, R1, {0, 3});
25872         return DAG.getVectorShuffle(VT, dl, Shift1, Shift2, ShuffleMask);
25929       Amt0 = DAG.getVectorShuffle(VT, dl, Amt, DAG.getUNDEF(VT), {0, 0, 0, 0});
25930       Amt1 = DAG.getVectorShuffle(VT, dl, Amt, DAG.getUNDEF(VT), {1, 1, 1, 1});
25931       Amt2 = DAG.getVectorShuffle(VT, dl, Amt, DAG.getUNDEF(VT), {2, 2, 2, 2});
25932       Amt3 = DAG.getVectorShuffle(VT, dl, Amt, DAG.getUNDEF(VT), {3, 3, 3, 3});
25940         Amt0 = DAG.getVectorShuffle(VT, dl, Amt, Z, {0, 4, -1, -1});
25941         Amt1 = DAG.getVectorShuffle(VT, dl, Amt, Z, {1, 5, -1, -1});
25942         Amt2 = DAG.getVectorShuffle(VT, dl, Amt, Z, {2, 6, -1, -1});
25943         Amt3 = DAG.getVectorShuffle(VT, dl, Amt, Z, {3, 7, -1, -1});
25946         SDValue Amt23 = DAG.getVectorShuffle(MVT::v8i16, dl, Amt01, Amt01,
25948         Amt0 = DAG.getVectorShuffle(MVT::v8i16, dl, Amt01, Amt01,
25950         Amt1 = DAG.getVectorShuffle(MVT::v8i16, dl, Amt01, Amt01,
25952         Amt2 = DAG.getVectorShuffle(MVT::v8i16, dl, Amt23, Amt23,
25954         Amt3 = DAG.getVectorShuffle(MVT::v8i16, dl, Amt23, Amt23,
25968       SDValue R02 = DAG.getVectorShuffle(VT, dl, R0, R2, {0, -1, 6, -1});
25969       SDValue R13 = DAG.getVectorShuffle(VT, dl, R1, R3, {-1, 1, -1, 7});
25970       return DAG.getVectorShuffle(VT, dl, R02, R13, {0, 5, 2, 7});
25972     SDValue R01 = DAG.getVectorShuffle(VT, dl, R0, R1, {0, -1, -1, 5});
25973     SDValue R23 = DAG.getVectorShuffle(VT, dl, R2, R3, {2, -1, -1, 7});
25974     return DAG.getVectorShuffle(VT, dl, R01, R23, {0, 3, 4, 7});
26415   SDValue R13 = DAG.getVectorShuffle(VT, DL, R, R, OddMask);
26416   SDValue Scale13 = DAG.getVectorShuffle(VT, DL, Scale, Scale, OddMask);
26428                      DAG.getVectorShuffle(VT, DL, Res02, Res13, {0, 4, 2, 6}),
26429                      DAG.getVectorShuffle(VT, DL, Res02, Res13, {1, 5, 3, 7}));
28029       SDValue Res = DAG.getVectorShuffle(MVT::v16i8, dl, Lo, Hi,
28066       SDValue Lo = DAG.getVectorShuffle(MVT::v4i32, dl, In, SignBits,
28069       SDValue Hi = DAG.getVectorShuffle(MVT::v4i32, dl, In, SignBits,
28108       SDValue Hi = DAG.getVectorShuffle(InVT, dl, In, In, ShufMask);
34013   return DAG.getVectorShuffle(VT, DL, Concat, DAG.getUNDEF(VT), Mask);
35169   Shuffle = DAG.getVectorShuffle(OriginalVT, dl,
35803     SDValue Upper = DAG.getVectorShuffle(
36019           DAG.getVectorShuffle(SadVT, DL, SAD, DAG.getUNDEF(SadVT), Mask);
36333     SDValue Hi = DAG.getVectorShuffle(
36827       return DAG.getVectorShuffle(VT, DL, LHS, RHS, Mask);
37917       DAG.getVectorShuffle(ReducedVT, DL, MulLo, MulHi, ShuffleMask);
37925       DAG.getVectorShuffle(ReducedVT, DL, MulLo, MulHi, ShuffleMask);
41440         return DAG.getVectorShuffle(VT, SDLoc(SVOp), NegOp0, DAG.getUNDEF(VT),
42382   Vec = DAG.getVectorShuffle(VT, DL, Vec, Vec, ShuffleMask);
43253       SDValue Shuf = DAG.getVectorShuffle(MVT::v4i32, dl, Cast, Cast,
44475       return DAG.getVectorShuffle(OpVT, dl, Vec, SubVec.getOperand(0), Mask);
44819     LHS = DAG.getVectorShuffle(MVT::v4i32, dl, LHS.getOperand(0),
44829     RHS = DAG.getVectorShuffle(MVT::v4i32, dl, RHS.getOperand(0),