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

References

gen/lib/Target/PowerPC/PPCGenDAGISel.inc
44509   return PPC::isSplatShuffleMask(cast<ShuffleVectorSDNode>(N), 1);
44517   return PPC::isSplatShuffleMask(cast<ShuffleVectorSDNode>(N), 2);
44525   return PPC::isSplatShuffleMask(cast<ShuffleVectorSDNode>(N), 4);
44541   return PPC::isVPKUWUMShuffleMask(cast<ShuffleVectorSDNode>(N), 1, *CurDAG);
44549   return PPC::isVPKUHUMShuffleMask(cast<ShuffleVectorSDNode>(N), 1, *CurDAG);
44557   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 1, *CurDAG);
44565   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 1, *CurDAG);
44573   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 1, *CurDAG);
44581   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 1, *CurDAG);
44589   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 1, *CurDAG);
44597   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 1, *CurDAG);
44605   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), true, 1, *CurDAG);
44613   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), false, 1, *CurDAG);
44621   return PPC::isVPKUDUMShuffleMask(cast<ShuffleVectorSDNode>(N), 1, *CurDAG);
44629   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 0, *CurDAG);
44637   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 0, *CurDAG);
44645   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 0, *CurDAG);
44653   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 0, *CurDAG);
44661   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 0, *CurDAG);
44669   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 0, *CurDAG);
44677   return PPC::isVPKUHUMShuffleMask(cast<ShuffleVectorSDNode>(N), 0, *CurDAG);
44685   return PPC::isVPKUWUMShuffleMask(cast<ShuffleVectorSDNode>(N), 0, *CurDAG);
44709   return PPC::isVPKUWUMShuffleMask(cast<ShuffleVectorSDNode>(N), 2, *CurDAG);
44717   return PPC::isVPKUHUMShuffleMask(cast<ShuffleVectorSDNode>(N), 2, *CurDAG);
44725   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 2, *CurDAG);
44733   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 2, *CurDAG);
44741   return PPC::isVMRGLShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 2, *CurDAG);
44749   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 1, 2, *CurDAG);
44757   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 2, 2, *CurDAG);
44765   return PPC::isVMRGHShuffleMask(cast<ShuffleVectorSDNode>(N), 4, 2, *CurDAG);
44773   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), true, 0, *CurDAG);
44781   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), false, 0, *CurDAG);
44789   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), true, 2, *CurDAG);
44797   return PPC::isVMRGEOShuffleMask(cast<ShuffleVectorSDNode>(N), false, 2, *CurDAG);
44805   return PPC::isVPKUDUMShuffleMask(cast<ShuffleVectorSDNode>(N), 0, *CurDAG);
44813   return PPC::isVPKUDUMShuffleMask(cast<ShuffleVectorSDNode>(N), 2, *CurDAG);
include/llvm/CodeGen/SelectionDAG.h
  350   SDNodeT *newSDNode(ArgTypes &&... Args) {
  351     return new (NodeAllocator.template Allocate<SDNodeT>())
  352         SDNodeT(std::forward<ArgTypes>(Args)...);
  800   SDValue getCommutedVectorShuffle(const ShuffleVectorSDNode &SV);
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   92     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  219     return cast_convert_val<To, SimpleFrom,
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  248                                typename cast_retty<X, const Y>::ret_type>::type
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  331                             typename cast_retty<X, const Y>::ret_type>::type
  333   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  333   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  338   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  338   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
include/llvm/Support/Recycler.h
   83   SubClass *Allocate(AllocatorType &Allocator) {
   84     static_assert(alignof(SubClass) <= Align,
   86     static_assert(sizeof(SubClass) <= Size,
   93   T *Allocate(AllocatorType &Allocator) {
include/llvm/Support/RecyclingAllocator.h
   43   SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
   43   SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
 4368     auto *SVN0 = cast<ShuffleVectorSDNode>(N0);
 4368     auto *SVN0 = cast<ShuffleVectorSDNode>(N0);
 4369     auto *SVN1 = cast<ShuffleVectorSDNode>(N1);
 4369     auto *SVN1 = cast<ShuffleVectorSDNode>(N1);
 5702     if (isa<ShuffleVectorSDNode>(N0) &&
 5703         isa<ShuffleVectorSDNode>(N1) &&
 5714         const ShuffleVectorSDNode *SV0 = cast<ShuffleVectorSDNode>(N0);
 5714         const ShuffleVectorSDNode *SV0 = cast<ShuffleVectorSDNode>(N0);
 5715         const ShuffleVectorSDNode *SV1 = cast<ShuffleVectorSDNode>(N1);
 5715         const ShuffleVectorSDNode *SV1 = cast<ShuffleVectorSDNode>(N1);
11160     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N0);
11160     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N0);
16506     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Vec.getNode());
16506     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Vec.getNode());
16894     auto *Shuf = cast<ShuffleVectorSDNode>(VecOp);
16894     auto *Shuf = cast<ShuffleVectorSDNode>(VecOp);
17009   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(VecOp)) {
17009   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(VecOp)) {
18365 static SDValue foldShuffleOfConcatUndefs(ShuffleVectorSDNode *Shuf,
18416   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
18416   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
18489 static SDValue combineShuffleOfScalars(ShuffleVectorSDNode *SVN,
18570 static SDValue combineShuffleToVectorExtend(ShuffleVectorSDNode *SVN,
18627 static SDValue combineTruncationShuffle(ShuffleVectorSDNode *SVN,
18688 static SDValue combineShuffleOfSplatVal(ShuffleVectorSDNode *Shuf,
18692   auto *Splat = dyn_cast<ShuffleVectorSDNode>(Shuf->getOperand(0));
18692   auto *Splat = dyn_cast<ShuffleVectorSDNode>(Shuf->getOperand(0));
18766 static SDValue replaceShuffleOfInsert(ShuffleVectorSDNode *Shuf,
18777     ShuffleVectorSDNode::commuteMask(CommutedMask);
18820 static SDValue simplifyShuffleOfShuffle(ShuffleVectorSDNode *Shuf) {
18822   auto *Shuf0 = dyn_cast<ShuffleVectorSDNode>(Shuf->getOperand(0));
18822   auto *Shuf0 = dyn_cast<ShuffleVectorSDNode>(Shuf->getOperand(0));
18857   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
18857   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
19032         ShuffleVectorSDNode *InnerSVN = cast<ShuffleVectorSDNode>(BC0);
19032         ShuffleVectorSDNode *InnerSVN = cast<ShuffleVectorSDNode>(BC0);
19049           ShuffleVectorSDNode::commuteMask(NewMask);
19093     ShuffleVectorSDNode *OtherSV = cast<ShuffleVectorSDNode>(N0);
19093     ShuffleVectorSDNode *OtherSV = cast<ShuffleVectorSDNode>(N0);
19605     auto *Shuf0 = dyn_cast<ShuffleVectorSDNode>(LHS);
19605     auto *Shuf0 = dyn_cast<ShuffleVectorSDNode>(LHS);
19606     auto *Shuf1 = dyn_cast<ShuffleVectorSDNode>(RHS);
19606     auto *Shuf1 = dyn_cast<ShuffleVectorSDNode>(RHS);
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
 2956     ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(Node)->getMask();
 4307     ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(Node)->getMask();
lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
 4105   ShuffleVectorSDNode *SV = cast<ShuffleVectorSDNode>(N);
 4105   ShuffleVectorSDNode *SV = cast<ShuffleVectorSDNode>(N);
lib/CodeGen/SelectionDAG/LegalizeTypes.h
  750   void SplitVecRes_VECTOR_SHUFFLE(ShuffleVectorSDNode *N, SDValue &Lo,
  810   SDValue WidenVecRes_VECTOR_SHUFFLE(ShuffleVectorSDNode *N);
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
  872     SplitVecRes_VECTOR_SHUFFLE(cast<ShuffleVectorSDNode>(N), Lo, Hi);
 1823 void DAGTypeLegalizer::SplitVecRes_VECTOR_SHUFFLE(ShuffleVectorSDNode *N,
 2723     Res = WidenVecRes_VECTOR_SHUFFLE(cast<ShuffleVectorSDNode>(N));
 4055 SDValue DAGTypeLegalizer::WidenVecRes_VECTOR_SHUFFLE(ShuffleVectorSDNode *N) {
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  617     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
  617     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
 1566   ShuffleVectorSDNode::commuteMask(M);
 1731   auto *N = newSDNode<ShuffleVectorSDNode>(VT, dl.getIROrder(),
 1731   auto *N = newSDNode<ShuffleVectorSDNode>(VT, dl.getIROrder(),
 1742 SDValue SelectionDAG::getCommutedVectorShuffle(const ShuffleVectorSDNode &SV) {
 1745   ShuffleVectorSDNode::commuteMask(MaskVec);
 2275     ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(V)->getMask();
 2360     auto *SVN = cast<ShuffleVectorSDNode>(V);
 2360     auto *SVN = cast<ShuffleVectorSDNode>(V);
 2496     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
 2496     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
 3464     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
 3464     const ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
 9085     ShuffleVectorSDNode *Shuffle = dyn_cast<ShuffleVectorSDNode>(Op0);
 9085     ShuffleVectorSDNode *Shuffle = dyn_cast<ShuffleVectorSDNode>(Op0);
 9089       Shuffle = dyn_cast<ShuffleVectorSDNode>(Op1);
lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
  556   } else if (const ShuffleVectorSDNode *SVN =
  557                dyn_cast<ShuffleVectorSDNode>(this)) {
lib/CodeGen/SelectionDAG/TargetLowering.cpp
  714     ArrayRef<int> ShuffleMask = cast<ShuffleVectorSDNode>(Op)->getMask();
  949     ArrayRef<int> ShuffleMask = cast<ShuffleVectorSDNode>(Op)->getMask();
 2374     ArrayRef<int> ShuffleMask = cast<ShuffleVectorSDNode>(Op)->getMask();
 2671     ShuffleVectorSDNode::commuteMask(Mask);
lib/Target/AArch64/AArch64ISelLowering.cpp
 6722   ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(Op)->getMask();
 6929   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
 6929   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
 7946   return (ShuffleVectorSDNode::isSplatMask(&M[0], VT) || isREVMask(M, VT, 64) ||
lib/Target/AMDGPU/SIISelLowering.cpp
 4911   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
 4911   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op);
lib/Target/ARM/ARMISelLowering.cpp
 7591       ShuffleVectorSDNode::isSplatMask(&M[0], VT) ||
 7761   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
 7761   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
 7804   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
 7804   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op.getNode());
12853   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
12853   ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
 2010   auto *SN = cast<ShuffleVectorSDNode>(N);
 2010   auto *SN = cast<ShuffleVectorSDNode>(N);
lib/Target/Hexagon/HexagonISelLowering.cpp
 1912   const auto *SVN = cast<ShuffleVectorSDNode>(Op);
 1912   const auto *SVN = cast<ShuffleVectorSDNode>(Op);
 1939     ShuffleVectorSDNode::commuteMask(Mask);
lib/Target/Mips/MipsSEISelLowering.cpp
 2986   ShuffleVectorSDNode *Node = cast<ShuffleVectorSDNode>(Op);
 2986   ShuffleVectorSDNode *Node = cast<ShuffleVectorSDNode>(Op);
lib/Target/PowerPC/PPCISelDAGToDAG.cpp
 4937       ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
 4937       ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
lib/Target/PowerPC/PPCISelLowering.cpp
  125 static bool isNByteElemShuffleMask(ShuffleVectorSDNode *, unsigned, int);
 1468 bool PPC::isVPKUHUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
 1499 bool PPC::isVPKUWUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
 1536 bool PPC::isVPKUDUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
 1580 static bool isVMerge(ShuffleVectorSDNode *N, unsigned UnitSize,
 1604 bool PPC::isVMRGLShuffleMask(ShuffleVectorSDNode *N, unsigned UnitSize,
 1629 bool PPC::isVMRGHShuffleMask(ShuffleVectorSDNode *N, unsigned UnitSize,
 1690 static bool isVMerge(ShuffleVectorSDNode *N, unsigned IndexOffset,
 1719 bool PPC::isVMRGEOShuffleMask(ShuffleVectorSDNode *N, bool CheckEven,
 1753   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 1753   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 1792 bool PPC::isSplatShuffleMask(ShuffleVectorSDNode *N, unsigned EltSize) {
 1833 static bool isNByteElemShuffleMask(ShuffleVectorSDNode *N, unsigned Width,
 1860 bool PPC::isXXINSERTWMask(ShuffleVectorSDNode *N, unsigned &ShiftElts,
 1935 bool PPC::isXXSLDWIShuffleMask(ShuffleVectorSDNode *N, unsigned &ShiftElts,
 1997 bool static isXXBRShuffleMaskHelper(ShuffleVectorSDNode *N, int Width) {
 2010 bool PPC::isXXBRHShuffleMask(ShuffleVectorSDNode *N) {
 2014 bool PPC::isXXBRWShuffleMask(ShuffleVectorSDNode *N) {
 2018 bool PPC::isXXBRDShuffleMask(ShuffleVectorSDNode *N) {
 2022 bool PPC::isXXBRQShuffleMask(ShuffleVectorSDNode *N) {
 2034 bool PPC::isXXPERMDIShuffleMask(ShuffleVectorSDNode *N, unsigned &DM,
 2092   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 2092   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 2211   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 2211   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
 8666 SDValue PPCTargetLowering::lowerToVINSERTB(ShuffleVectorSDNode *N,
 8767 SDValue PPCTargetLowering::lowerToVINSERTH(ShuffleVectorSDNode *N,
 8885   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(Op);
 8885   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(Op);
13309 SDValue PPCTargetLowering::combineVReverseMemOP(ShuffleVectorSDNode *SVN,
13413       return combineVReverseMemOP(cast<ShuffleVectorSDNode>(N), LSBase, DCI);
13428       ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N->getOperand(1));
13428       ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N->getOperand(1));
lib/Target/PowerPC/PPCISelLowering.h
  511     bool isVPKUHUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
  516     bool isVPKUWUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
  521     bool isVPKUDUMShuffleMask(ShuffleVectorSDNode *N, unsigned ShuffleKind,
  526     bool isVMRGLShuffleMask(ShuffleVectorSDNode *N, unsigned UnitSize,
  531     bool isVMRGHShuffleMask(ShuffleVectorSDNode *N, unsigned UnitSize,
  536     bool isVMRGEOShuffleMask(ShuffleVectorSDNode *N, bool CheckEven,
  540     bool isXXSLDWIShuffleMask(ShuffleVectorSDNode *N, unsigned &ShiftElts,
  545     bool isXXBRHShuffleMask(ShuffleVectorSDNode *N);
  549     bool isXXBRWShuffleMask(ShuffleVectorSDNode *N);
  553     bool isXXBRDShuffleMask(ShuffleVectorSDNode *N);
  557     bool isXXBRQShuffleMask(ShuffleVectorSDNode *N);
  561     bool isXXPERMDIShuffleMask(ShuffleVectorSDNode *N, unsigned &ShiftElts,
  572     bool isSplatShuffleMask(ShuffleVectorSDNode *N, unsigned EltSize);
  581     bool isXXINSERTWMask(ShuffleVectorSDNode *N, unsigned &ShiftElts,
 1192     SDValue combineVReverseMemOP(ShuffleVectorSDNode *SVN, LSBaseSDNode *LSBase,
 1215     SDValue lowerToVINSERTH(ShuffleVectorSDNode *N, SelectionDAG &DAG) const;
 1220     SDValue lowerToVINSERTB(ShuffleVectorSDNode *N, SelectionDAG &DAG) const;
lib/Target/SystemZ/SystemZISelLowering.cpp
 4155   if (auto *VSN = dyn_cast<ShuffleVectorSDNode>(ShuffleOp)) {
 4155   if (auto *VSN = dyn_cast<ShuffleVectorSDNode>(ShuffleOp)) {
 4754   auto *VSN = cast<ShuffleVectorSDNode>(Op.getNode());
 4754   auto *VSN = cast<ShuffleVectorSDNode>(Op.getNode());
 4904   if (auto *VSN = dyn_cast<ShuffleVectorSDNode>(Op1)) {
 4904   if (auto *VSN = dyn_cast<ShuffleVectorSDNode>(Op1)) {
 5629     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op1.getNode());
 5629     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(Op1.getNode());
 5652     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
 5652     ShuffleVectorSDNode *SVN = cast<ShuffleVectorSDNode>(N);
 5918   ShuffleVectorSDNode *SV = dyn_cast<ShuffleVectorSDNode>(Op);
 5918   ShuffleVectorSDNode *SV = dyn_cast<ShuffleVectorSDNode>(Op);
lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
 1452   ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(Op.getNode())->getMask();
lib/Target/X86/X86ISelLowering.cpp
 6245   if (auto *SVN = dyn_cast<ShuffleVectorSDNode>(Op)) {
 6245   if (auto *SVN = dyn_cast<ShuffleVectorSDNode>(Op)) {
 6872     ArrayRef<int> ShuffleMask = cast<ShuffleVectorSDNode>(N)->getMask();
 7330   if (const ShuffleVectorSDNode *SV = dyn_cast<ShuffleVectorSDNode>(N)) {
 7330   if (const ShuffleVectorSDNode *SV = dyn_cast<ShuffleVectorSDNode>(N)) {
 8382   if (!isa<ShuffleVectorSDNode>(ExtractedFromVec))
 8395   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(ExtractedFromVec);
 8395   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(ExtractedFromVec);
10372   ShuffleVectorSDNode::commuteMask(CommutedMask);
10686     ShuffleVectorSDNode::commuteMask(Unpckl);
10693     ShuffleVectorSDNode::commuteMask(Unpckh);
10720   ShuffleVectorSDNode::commuteMask(Unpckl);
10724   ShuffleVectorSDNode::commuteMask(Unpckh);
11127       ShuffleVectorSDNode::commuteMask(Mask);
12462     ShuffleVectorSDNode::commuteMask(NewMask);
12761   ShuffleVectorSDNode::commuteMask(CommutedMask);
14989     ShuffleVectorSDNode::commuteMask(InLaneMask);
15045   if (isa<ShuffleVectorSDNode>(NewV1) &&
15046       cast<ShuffleVectorSDNode>(NewV1)->getMask() == Mask)
15062   if (isa<ShuffleVectorSDNode>(NewV2) &&
15063       cast<ShuffleVectorSDNode>(NewV2)->getMask() == Mask)
17044   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(Op);
17044   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(Op);
17154     ShuffleVectorSDNode::commuteMask(Mask);
19082   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(In))
19082   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(In))
33226       ShuffleVectorSDNode::commuteMask(Mask);
33880   ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(N)->getMask();
33923   ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(N)->getMask();
33976   if (!Subtarget.hasAVX2() || !isa<ShuffleVectorSDNode>(N))
34006   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
34006   ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
34083   ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(N)->getMask();
34106 static SDValue narrowShuffle(ShuffleVectorSDNode *Shuf, SelectionDAG &DAG) {
34139   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(N))
34139   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(N))
40791       ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(Op)->getMask();
40861     ShuffleVectorSDNode::commuteMask(RMask);
41433   if (auto SVOp = dyn_cast<ShuffleVectorSDNode>(Op.getNode())) {