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

Declarations

include/llvm/CodeGen/Analysis.h
   36 class SelectionDAG;
include/llvm/CodeGen/FunctionLoweringInfo.h
   46 class SelectionDAG;
include/llvm/CodeGen/SelectionDAG.h
   76 class SelectionDAG;
include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
   17 class SelectionDAG;
include/llvm/CodeGen/SelectionDAGNodes.h
   66 class SelectionDAG;
include/llvm/CodeGen/SelectionDAGTargetInfo.h
   25 class SelectionDAG;
include/llvm/CodeGen/TargetInstrInfo.h
   56 class SelectionDAG;
lib/Target/ARM/ARMISelLowering.h
   46 class SelectionDAG;
lib/Target/Mips/MipsSEISelLowering.h
   26 class SelectionDAG;

References

include/llvm/CodeGen/FunctionLoweringInfo.h
  189   void set(const Function &Fn, MachineFunction &MF, SelectionDAG *DAG);
include/llvm/CodeGen/SelectionDAG.h
  208 void checkForCycles(const SelectionDAG *DAG, bool force = false);
  291     SelectionDAG &DAG;
  293     explicit DAGUpdateListener(SelectionDAG &D)
  318     DAGNodeDeletedListener(SelectionDAG &DAG,
  397   SelectionDAG(const SelectionDAG &) = delete;
  398   SelectionDAG &operator=(const SelectionDAG &) = delete;
  398   SelectionDAG &operator=(const SelectionDAG &) = delete;
 1757   using nodes_iterator = pointer_iterator<SelectionDAG::allnodes_iterator>;
include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
   57   bool equalBaseIndex(const BaseIndexOffset &Other, const SelectionDAG &DAG,
   61                       const SelectionDAG &DAG) const {
   68   bool contains(const SelectionDAG &DAG, int64_t BitSize,
   72   bool contains(const SelectionDAG &DAG, int64_t BitSize,
   84                               const SelectionDAG &DAG, bool &IsAlias);
   87   static BaseIndexOffset match(const SDNode *N, const SelectionDAG &DAG);
include/llvm/CodeGen/SelectionDAGISel.h
   53   SelectionDAG *CurDAG;
include/llvm/CodeGen/SelectionDAGNodes.h
   70 void checkForCycles(const SDNode *N, const SelectionDAG *DAG = nullptr,
  194   inline void dump(const SelectionDAG *G) const;
  196   inline void dumpr(const SelectionDAG *G) const;
 1035   std::string getOperationName(const SelectionDAG *G = nullptr) const;
 1037   void print_types(raw_ostream &OS, const SelectionDAG *G) const;
 1038   void print_details(raw_ostream &OS, const SelectionDAG *G) const;
 1039   void print(raw_ostream &OS, const SelectionDAG *G = nullptr) const;
 1040   void printr(raw_ostream &OS, const SelectionDAG *G = nullptr) const;
 1048   void printrFull(raw_ostream &O, const SelectionDAG *G = nullptr) const;
 1056   void printrWithDepth(raw_ostream &O, const SelectionDAG *G = nullptr,
 1068   void dump(const SelectionDAG *G) const;
 1073   void dumpr(const SelectionDAG *G) const;
 1079   void dumprFull(const SelectionDAG *G = nullptr) const;
 1086   void dumprWithDepth(const SelectionDAG *G = nullptr,
 1218 inline void SDValue::dump(const SelectionDAG *G) const {
 1226 inline void SDValue::dumpr(const SelectionDAG *G) const {
include/llvm/CodeGen/SelectionDAGTargetInfo.h
   51   virtual SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
   68       SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1,
   80   virtual SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &dl,
   93   EmitTargetCodeForMemcmp(SelectionDAG &DAG, const SDLoc &dl, SDValue Chain,
  105   EmitTargetCodeForMemchr(SelectionDAG &DAG, const SDLoc &dl, SDValue Chain,
  118   EmitTargetCodeForStrcpy(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
  130   EmitTargetCodeForStrcmp(SelectionDAG &DAG, const SDLoc &dl, SDValue Chain,
  138   EmitTargetCodeForStrlen(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
  144   EmitTargetCodeForStrnlen(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
  150   virtual SDValue EmitTargetCodeForSetTag(SelectionDAG &DAG, const SDLoc &dl,
include/llvm/CodeGen/TargetInstrInfo.h
 1173   virtual bool unfoldMemoryOperand(SelectionDAG &DAG, SDNode *N,
include/llvm/CodeGen/TargetLowering.h
  341   virtual bool isFsqrtCheap(SDValue X, SelectionDAG &DAG) const {
  407                                        const SelectionDAG &DAG,
  430                                         const SelectionDAG &DAG,
  454                                 const SelectionDAG &DAG) const {
  592       SelectionDAG &DAG) const {
  733   virtual bool shouldExpandShift(SelectionDAG &DAG, SDNode *N) const {
 2972                                          SelectionDAG &/*DAG*/) const {
 2983                                           SelectionDAG &/*DAG*/) const {
 3008                                            SelectionDAG &DAG) const;
 3020   bool isInTailCallPosition(SelectionDAG &DAG, SDNode *Node,
 3023   void softenSetCCOperands(SelectionDAG &DAG, EVT VT, SDValue &NewLHS,
 3030   std::pair<SDValue, SDValue> makeLibCall(SelectionDAG &DAG, RTLIB::Libcall LC,
 3051     SelectionDAG &DAG;
 3057     explicit TargetLoweringOpt(SelectionDAG &InDAG,
 3141                                           SelectionDAG &DAG,
 3176                                              const SelectionDAG &DAG,
 3194                                              const SelectionDAG &DAG,
 3203                                                    const SelectionDAG &DAG,
 3232       SelectionDAG &DAG, unsigned Depth) const;
 3240                                   SelectionDAG &DAG) const;
 3250                                             const SelectionDAG &DAG,
 3259     SelectionDAG &DAG;
 3261     DAGCombinerInfo(SelectionDAG &dag, CombineLevel level,  bool cl, void *dc)
 3405   virtual char isNegatibleForFree(SDValue Op, SelectionDAG &DAG,
 3410   virtual SDValue getNegatedExpression(SDValue Op, SelectionDAG &DAG,
 3426       SelectionDAG & /*DAG*/, SmallVectorImpl<SDValue> & /*InVals*/) const {
 3457     SelectionDAG &DAG;
 3465     CallLoweringInfo(SelectionDAG &DAG)
 3670                               SelectionDAG & /*DAG*/) const {
 3748                                               SelectionDAG &DAG) const {
 3793                                      SelectionDAG &DAG) const;
 3800   virtual SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const;
 3813                                   SelectionDAG &/*DAG*/) const {
 3828                                              SelectionDAG &DAG) const;
 3925                                       SelectionDAG *DAG = nullptr) const;
 3960                                             SelectionDAG &DAG) const;
 3966                                               SelectionDAG &DAG) const;
 3971   SDValue BuildSDIV(SDNode *N, SelectionDAG &DAG, bool IsAfterLegalization,
 3973   SDValue BuildUDIV(SDNode *N, SelectionDAG &DAG, bool IsAfterLegalization,
 3981                                 SelectionDAG &DAG,
 4010   virtual SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG,
 4026   virtual SDValue getRecipEstimate(SDValue Operand, SelectionDAG &DAG,
 4047                       SelectionDAG &DAG, MulExpansionKind Kind,
 4061                  SelectionDAG &DAG, MulExpansionKind Kind,
 4069   bool expandFunnelShift(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4075   bool expandROT(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4081   bool expandFP_TO_SINT(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4087   bool expandFP_TO_UINT(SDNode *N, SDValue &Result, SDValue &Chain, SelectionDAG &DAG) const;
 4093   bool expandUINT_TO_FP(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4096   SDValue expandFMINNUM_FMAXNUM(SDNode *N, SelectionDAG &DAG) const;
 4103   bool expandCTPOP(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4110   bool expandCTLZ(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4117   bool expandCTTZ(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4125   bool expandABS(SDNode *N, SDValue &Result, SelectionDAG &DAG) const;
 4130   SDValue scalarizeVectorLoad(LoadSDNode *LD, SelectionDAG &DAG) const;
 4135   SDValue scalarizeVectorStore(StoreSDNode *ST, SelectionDAG &DAG) const;
 4140                                                   SelectionDAG &DAG) const;
 4144   SDValue expandUnalignedStore(StoreSDNode *ST, SelectionDAG &DAG) const;
 4154                                  EVT DataVT, SelectionDAG &DAG,
 4161   SDValue getVectorElementPointer(SelectionDAG &DAG, SDValue VecPtr, EVT VecVT,
 4166   SDValue expandAddSubSat(SDNode *Node, SelectionDAG &DAG) const;
 4170   SDValue expandFixedPointMul(SDNode *Node, SelectionDAG &DAG) const;
 4175                       SelectionDAG &DAG) const;
 4180                       SelectionDAG &DAG) const;
 4185                   SelectionDAG &DAG) const;
 4189   SDValue expandVecReduce(SDNode *Node, SelectionDAG &DAG) const;
 4219   virtual SDValue emitStackGuardXorFP(SelectionDAG &DAG, SDValue Val,
 4226                                           SelectionDAG &DAG) const;
 4231                                          SelectionDAG &DAG) const {
 4239   SDValue lowerCmpEqZeroToCtlzSrl(SDValue Op, SelectionDAG &DAG) const;
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  130     SelectionDAG &DAG;
  217     DAGCombiner(SelectionDAG &D, AliasAnalysis *AA, CodeGenOpt::Level OL)
  625     bool BackwardsPropagateMask(SDNode *N, SelectionDAG &DAG);
  687     SelectionDAG &getDAG() const { return DAG; }
  715 class WorklistRemover : public SelectionDAG::DAGUpdateListener {
  727 class WorklistInserter : public SelectionDAG::DAGUpdateListener {
 1994 static SDValue foldAddSubBoolOfMaskedVal(SDNode *N, SelectionDAG &DAG) {
 2035 static SDValue foldAddSubOfSignBit(SDNode *N, SelectionDAG &DAG) {
 2352     if (DAG.computeOverflowKind(N0, N1) == SelectionDAG::OFK_Never)
 2404                                  SelectionDAG &DAG, const SDLoc &DL) {
 2520   if (DAG.computeOverflowKind(N0, N1) == SelectionDAG::OFK_Never)
 2528                            SelectionDAG &DAG, const TargetLowering &TLI) {
 2552 static SDValue extractBooleanFlip(SDValue V, SelectionDAG &DAG,
 2612     if (DAG.computeOverflowKind(N0, N1) == SelectionDAG::OFK_Never)
 2644     if (DAG.computeOverflowKind(Y, One) == SelectionDAG::OFK_Never)
 2738 static SDValue combineADDCARRYDiamond(DAGCombiner &Combiner, SelectionDAG &DAG,
 2845                              SelectionDAG &DAG, bool LegalOperations) {
 3577 static SDValue simplifyDivRem(SDNode *N, SelectionDAG &DAG) {
 4859 bool DAGCombiner::BackwardsPropagateMask(SDNode *N, SelectionDAG &DAG) {
 4984 static SDValue combineShiftAnd1ToBitTest(SDNode *And, SelectionDAG &DAG) {
 5657     SelectionDAG &DAG, SDValue N0, SDValue N1, SDNode *N) {
 5845 static SDValue stripConstantMask(SelectionDAG &DAG, SDValue Op, SDValue &Mask) {
 5855 static bool matchRotateHalf(SelectionDAG &DAG, SDValue Op, SDValue &Shift,
 5889 static SDValue extractShiftForRotate(SelectionDAG &DAG, SDValue OppShift,
 6005                            SelectionDAG &DAG) {
 7061 static SDValue combineShiftOfShiftedLogic(SDNode *Shift, SelectionDAG &DAG) {
 8119 static bool isLegalToCombineMinNumMaxNum(SelectionDAG &DAG, SDValue LHS,
 8134                                    SelectionDAG &DAG) {
 8180 static SDValue foldSelectOfConstantsUsingSra(SDNode *N, SelectionDAG &DAG) {
 8512 static SDValue ConvertSelectToConcatVector(SDNode *N, SelectionDAG &DAG) {
 8887                                          SelectionDAG &DAG, bool LegalTypes) {
 9279 static SDValue tryToFoldExtOfExtload(SelectionDAG &DAG, DAGCombiner &Combiner,
 9310 static SDValue tryToFoldExtOfLoad(SelectionDAG &DAG, DAGCombiner &Combiner,
 9350 static SDValue tryToFoldExtOfMaskedLoad(SelectionDAG &DAG,
 9379 static SDValue foldExtendedSignBitTest(SDNode *N, SelectionDAG &DAG,
 9647 static bool isTruncateOf(SelectionDAG &DAG, SDValue N, SDValue &Op,
 9679 static SDValue widenCtPop(SDNode *Extend, SelectionDAG &DAG) {
10891 static unsigned getPPCf128HiElementSelector(const SelectionDAG &DAG) {
10897 static SDValue foldBitcastedFPLogic(SDNode *N, SelectionDAG &DAG,
12788 static SDValue foldFPToIntToFP(SDNode *N, SelectionDAG &DAG,
12931 static SDValue FoldIntToFPToInt(SDNode *N, SelectionDAG &DAG) {
13215 static SDValue visitFMinMax(SelectionDAG &DAG, SDNode *N,
13452                                     SelectionDAG &DAG,
14260   SelectionDAG *DAG;
14263               unsigned Shift = 0, SelectionDAG *DAG = nullptr)
14779   SelectionDAG &DAG = DC->getDAG();
16761 static SDValue scalarizeExtractedBinop(SDNode *ExtElt, SelectionDAG &DAG,
17282 static SDValue reduceBuildVecToShuffleWithZero(SDNode *BV, SelectionDAG &DAG) {
17705 static SDValue combineConcatVectorOfScalars(SDNode *N, SelectionDAG &DAG) {
17770 static SDValue combineConcatVectorOfExtracts(SDNode *N, SelectionDAG &DAG) {
18035                                               SelectionDAG &DAG) {
18070 static SDValue narrowExtractedVectorBinOp(SDNode *Extract, SelectionDAG &DAG) {
18189 static SDValue narrowExtractedVectorLoad(SDNode *Extract, SelectionDAG &DAG) {
18366                                          SelectionDAG &DAG) {
18410 static SDValue partitionShuffleOfConcats(SDNode *N, SelectionDAG &DAG) {
18490                                        SelectionDAG &DAG,
18571                                             SelectionDAG &DAG,
18628                                         SelectionDAG &DAG) {
18689                                         SelectionDAG &DAG) {
18767                                       SelectionDAG &DAG) {
19534 static SDValue scalarizeBinOpOfSplats(SDNode *N, SelectionDAG &DAG) {
lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
   82                                SelectionDAG *DAG) {
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
   88   SelectionDAG &DAG;
  104   SelectionDAGLegalize(SelectionDAG &DAG,
 1803 ExpandBVWithShuffles(SDNode *Node, SelectionDAG &DAG,
lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
  371                                        SelectionDAG &DAG) {
lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
  576   class NodeUpdateListener : public SelectionDAG::DAGUpdateListener {
lib/CodeGen/SelectionDAG/LegalizeTypes.h
   33   SelectionDAG &DAG;
  162   explicit DAGTypeLegalizer(SelectionDAG &dag)
  196   SelectionDAG &getDAG() const { return DAG; }
lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
   57   SelectionDAG& DAG;
  169   VectorLegalizer(SelectionDAG& dag) :
  181   for (SelectionDAG::allnodes_iterator I = DAG.allnodes_begin(),
  205   for (SelectionDAG::allnodes_iterator I = DAG.allnodes_begin(),
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
 2940 static SDValue CollectOpsToWiden(SelectionDAG &DAG, const TargetLowering &TLI,
 4669 static EVT FindMemType(SelectionDAG& DAG, const TargetLowering &TLI,
 4730 static SDValue BuildVectorFromScalar(SelectionDAG& DAG, EVT VecTy,
lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
   54 void ScheduleDAGSDNodes::Run(SelectionDAG *dag, MachineBasicBlock *bb) {
  140 static void CloneNodeWithValues(SDNode *N, SelectionDAG *DAG, ArrayRef<EVT> VTs,
  161 static bool AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) {
  186 static void RemoveUnusedGlue(SDNode *N, SelectionDAG *DAG) {
  732 ProcessSDDbgValues(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter,
  760 ProcessSourceNode(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter,
lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
   49     SelectionDAG *DAG;                    // DAG of the current basic block
   61     void Run(SelectionDAG *dag, MachineBasicBlock *bb);
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  102 static void NewSDValueDbgMsg(SDValue V, StringRef Msg, SelectionDAG *G) {
  125   (void) Val2.convert(SelectionDAG::EVTToAPFloatSemantics(VT),
 3330 SelectionDAG::OverflowKind SelectionDAG::computeOverflowKind(SDValue N0,
 4153                                 SelectionDAG &DAG) {
 4187                                   SelectionDAG &DAG) {
 5627 static SDValue getMemsetValue(SDValue Value, EVT VT, SelectionDAG &DAG,
 5669 static SDValue getMemsetStringVal(EVT VT, const SDLoc &dl, SelectionDAG &DAG,
 5744 static void chainLoadsAndStoresForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
 5769 static SDValue getMemcpyLoadsAndStores(SelectionDAG &DAG, const SDLoc &dl,
 5954 static SDValue getMemmoveLoadsAndStores(SelectionDAG &DAG, const SDLoc &dl,
 6064 static SDValue getMemsetStores(SelectionDAG &DAG, const SDLoc &dl,
 6659                                            SelectionDAG &DAG, SDValue Ptr,
 6683                                            SelectionDAG &DAG, SDValue Ptr,
 8136 class RAUWUpdateListener : public SelectionDAG::DAGUpdateListener {
 8147   RAUWUpdateListener(SelectionDAG &d,
 9601                                  const llvm::SelectionDAG *DAG) {
 9624                           const llvm::SelectionDAG *DAG,
 9640 void llvm::checkForCycles(const llvm::SelectionDAG *DAG, bool force) {
lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp
   23                                      const SelectionDAG &DAG,
   89                                       const SelectionDAG &DAG, bool &IsAlias) {
  146 bool BaseIndexOffset::contains(const SelectionDAG &DAG, int64_t BitSize,
  168                                    const SelectionDAG &DAG) {
  271                                        const SelectionDAG &DAG) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  190 static SDValue getCopyFromPartsVector(SelectionDAG &DAG, const SDLoc &DL,
  200 static SDValue getCopyFromParts(SelectionDAG &DAG, const SDLoc &DL,
  357 static SDValue getCopyFromPartsVector(SelectionDAG &DAG, const SDLoc &DL,
  490 static void getCopyToPartsVector(SelectionDAG &DAG, const SDLoc &dl,
  498 static void getCopyToParts(SelectionDAG &DAG, const SDLoc &DL, SDValue Val,
  630 static SDValue widenVectorToPartType(SelectionDAG &DAG,
  658 static void getCopyToPartsVector(SelectionDAG &DAG, const SDLoc &DL,
  799 SDValue RegsForValue::getCopyFromRegs(SelectionDAG &DAG,
  886 void RegsForValue::getCopyToRegs(SDValue Val, SelectionDAG &DAG,
  944                                         SelectionDAG &DAG,
 2474 static SDValue getLoadStackGuard(SelectionDAG &DAG, const SDLoc &DL,
 4334   SelectionDAG& DAG = SDB->DAG;
 4864 static SDValue GetSignificand(SelectionDAG &DAG, SDValue Op, const SDLoc &dl) {
 4877 static SDValue GetExponent(SelectionDAG &DAG, SDValue Op,
 4890 static SDValue getF32Constant(SelectionDAG &DAG, unsigned Flt,
 4897                                        SelectionDAG &DAG) {
 4988 static SDValue expandExp(const SDLoc &dl, SDValue Op, SelectionDAG &DAG,
 5010 static SDValue expandLog(const SDLoc &dl, SDValue Op, SelectionDAG &DAG,
 5109 static SDValue expandLog2(const SDLoc &dl, SDValue Op, SelectionDAG &DAG,
 5206 static SDValue expandLog10(const SDLoc &dl, SDValue Op, SelectionDAG &DAG,
 5296 static SDValue expandExp2(const SDLoc &dl, SDValue Op, SelectionDAG &DAG,
 5309                          SelectionDAG &DAG, const TargetLowering &TLI) {
 5337                           SelectionDAG &DAG) {
 7808                                SelectionDAG &DAG) {
 7837                                         SelectionDAG &DAG) {
 7881 static void GetRegistersForValue(SelectionDAG &DAG, const SDLoc &DL,
 8576 SDValue SelectionDAGBuilder::lowerRangeToAssertZExt(SelectionDAG &DAG,
 9359                                            SelectionDAG &DAG) const {
 9364 SDValue TargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 9581   SelectionDAG &DAG = SDB->DAG;
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  378   SelectionDAG &DAG;
  426   SelectionDAGBuilder(SelectionDAG &dag, FunctionLoweringInfo &funcinfo,
  545   SDValue lowerRangeToAssertZExt(SelectionDAG &DAG, const Instruction &I,
  602     explicit StatepointLoweringInfo(SelectionDAG &DAG) : CLI(DAG) {}
  861   SDValue getCopyFromRegs(SelectionDAG &DAG, FunctionLoweringInfo &FuncInfo,
  870   void getCopyToRegs(SDValue Val, SelectionDAG &DAG, const SDLoc &dl,
  879                             SelectionDAG &DAG, std::vector<SDValue> &Ops) const;
lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
   59 std::string SDNode::getOperationName(const SelectionDAG *G) const {
  478                             const SelectionDAG *G) {
  494 LLVM_DUMP_METHOD void SDNode::dump(const SelectionDAG *G) const {
  500 void SDNode::print_types(raw_ostream &OS, const SelectionDAG *G) const {
  510 void SDNode::print_details(raw_ostream &OS, const SelectionDAG *G) const {
  792 static bool shouldPrintInline(const SDNode &Node, const SelectionDAG *G) {
  803 static void DumpNodes(const SDNode *N, unsigned indent, const SelectionDAG *G) {
  843 void SDNode::printr(raw_ostream &OS, const SelectionDAG *G) const {
  850 static bool printOperand(raw_ostream &OS, const SelectionDAG *G,
  872                        const SelectionDAG *G, VisitedSDNodeSet &once) {
  903 LLVM_DUMP_METHOD void SDNode::dumpr(const SelectionDAG *G) const {
  910                                   const SelectionDAG *G, unsigned depth,
  931 void SDNode::printrWithDepth(raw_ostream &OS, const SelectionDAG *G,
  936 void SDNode::printrFull(raw_ostream &OS, const SelectionDAG *G) const {
  943 void SDNode::dumprWithDepth(const SelectionDAG *G, unsigned depth) const {
  947 LLVM_DUMP_METHOD void SDNode::dumprFull(const SelectionDAG *G) const {
  953 void SDNode::print(raw_ostream &OS, const SelectionDAG *G) const {
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  313   CurDAG(new SelectionDAG(tm, OL)),
 1024 class ISelUpdater : public SelectionDAG::DAGUpdateListener {
 1025   SelectionDAG::allnodes_iterator &ISelPosition;
 1028   ISelUpdater(SelectionDAG &DAG, SelectionDAG::allnodes_iterator &isp)
 1028   ISelUpdater(SelectionDAG &DAG, SelectionDAG::allnodes_iterator &isp)
 1110     SelectionDAG::allnodes_iterator ISelPosition (CurDAG->getRoot().getNode());
 2313       SelectionDAG::DAGNodeDeletedListener NDL(
 2342                        SelectionDAG *CurDAG) {
 2708 class MatchStateUpdater : public SelectionDAG::DAGUpdateListener
 2715   MatchStateUpdater(SelectionDAG &DAG, SDNode **NodeToMatch,
 3455         SelectionDAG::DAGNodeDeletedListener NDL(*CurDAG, [&](SDNode *N,
lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp
   72     static std::string getGraphName(const SelectionDAG *G) {
   81                                               const SelectionDAG *Graph) {
   96                                          const SelectionDAG *Graph) {
  108                                           const SelectionDAG *G) {
  116     std::string getNodeLabel(const SDNode *Node, const SelectionDAG *Graph);
  118                                          const SelectionDAG *Graph) {
  131     static void addCustomGraphFeatures(SelectionDAG *G,
  132                                        GraphWriter<SelectionDAG*> &GW) {
  142                                                         const SelectionDAG *G) {
  143   return DOTGraphTraits<SelectionDAG*>::getSimpleNodeLabel(Node, G);
  283       O << DOTGraphTraits<SelectionDAG*>
lib/CodeGen/SelectionDAG/TargetLowering.cpp
   51 bool TargetLowering::isInTailCallPosition(SelectionDAG &DAG, SDNode *Node,
  122 TargetLowering::makeLibCall(SelectionDAG &DAG, RTLIB::Libcall LC, EVT RetVT,
  275 void TargetLowering::softenSetCCOperands(SelectionDAG &DAG, EVT VT,
  423                                                  SelectionDAG &DAG) const {
  518   SelectionDAG &DAG = TLO.DAG;
  556   SelectionDAG &DAG = DCI.DAG;
  586     SelectionDAG &DAG, unsigned Depth) const {
  588   if (Depth >= SelectionDAG::MaxRecursionDepth)
  801   } else if (Depth >= SelectionDAG::MaxRecursionDepth) {
 2021   SelectionDAG &DAG = DCI.DAG;
 2037 static APInt getKnownUndefForVectorBinop(SDValue BO, SelectionDAG &DAG,
 2113   if (Depth >= SelectionDAG::MaxRecursionDepth)
 2580                                                    const SelectionDAG &DAG,
 2601                                                    const SelectionDAG &DAG,
 2615                                                          const SelectionDAG &,
 2653     SelectionDAG &DAG, unsigned Depth) const {
 2667                                         SelectionDAG &DAG) const {
 2686                                                   const SelectionDAG &DAG,
 2804   SelectionDAG &DAG = DCI.DAG;
 2916   SelectionDAG &DAG = DCI.DAG;
 2947   SelectionDAG &DAG = DCI.DAG;
 3019   SelectionDAG &DAG = DCI.DAG;
 3054   SelectionDAG &DAG = DCI.DAG;
 4030     SelectionDAG &DAG) const {
 4039                                                   SelectionDAG &DAG) const {
 4475                              SDValue Op, SelectionDAG *DAG) {
 4526                                             SelectionDAG *DAG) const {
 4563                               const SDLoc &dl, SelectionDAG &DAG,
 4622                               SelectionDAG &DAG,
 4635 SDValue TargetLowering::BuildSDIV(SDNode *N, SelectionDAG &DAG,
 4744 SDValue TargetLowering::BuildUDIV(SDNode *N, SelectionDAG &DAG,
 4935   SelectionDAG &DAG = DCI.DAG;
 5108   SelectionDAG &DAG = DCI.DAG;
 5332 verifyReturnAddressArgumentIsConstant(SDValue Op, SelectionDAG &DAG) const {
 5342 char TargetLowering::isNegatibleForFree(SDValue Op, SelectionDAG &DAG,
 5358   if (Depth > SelectionDAG::MaxRecursionDepth)
 5458 SDValue TargetLowering::getNegatedExpression(SDValue Op, SelectionDAG &DAG,
 5589                                     EVT HiLoVT, SelectionDAG &DAG,
 5770                                SelectionDAG &DAG, MulExpansionKind Kind,
 5786                                        SelectionDAG &DAG) const {
 5835                                SelectionDAG &DAG) const {
 5879                                       SelectionDAG &DAG) const {
 5951                                       SelectionDAG &DAG) const {
 6035                                       SelectionDAG &DAG) const {
 6120                                               SelectionDAG &DAG) const {
 6160                                  SelectionDAG &DAG) const {
 6220                                 SelectionDAG &DAG) const {
 6273                                 SelectionDAG &DAG) const {
 6328                                SelectionDAG &DAG) const {
 6349                                             SelectionDAG &DAG) const {
 6387                                              SelectionDAG &DAG) const {
 6461 TargetLowering::expandUnalignedLoad(LoadSDNode *LD, SelectionDAG &DAG) const {
 6616                                              SelectionDAG &DAG) const {
 6744                                        SelectionDAG &DAG,
 6773 static SDValue clampDynamicVectorIndex(SelectionDAG &DAG,
 6793 SDValue TargetLowering::getVectorElementPointer(SelectionDAG &DAG,
 6821                                                 SelectionDAG &DAG) const {
 6858                                                 SelectionDAG &DAG) const {
 6882 SDValue TargetLowering::expandAddSubSat(SDNode *Node, SelectionDAG &DAG) const {
 6963 TargetLowering::expandFixedPointMul(SDNode *Node, SelectionDAG &DAG) const {
 7103     SDNode *Node, SDValue &Result, SDValue &Overflow, SelectionDAG &DAG) const {
 7132     SDNode *Node, SDValue &Result, SDValue &Overflow, SelectionDAG &DAG) const {
 7172                                 SDValue &Overflow, SelectionDAG &DAG) const {
 7315 SDValue TargetLowering::expandVecReduce(SDNode *Node, SelectionDAG &DAG) const {
lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
  635 static SDValue narrowIfNeeded(SelectionDAG *CurDAG, SDValue N) {
  872 static SDValue Widen(SelectionDAG *CurDAG, SDValue N) {
 1346   SelectionDAG &DAG;
 1349   WidenVector(SelectionDAG &DAG) : DAG(DAG) {}
 1367 static SDValue NarrowVector(SDValue V128Reg, SelectionDAG &DAG) {
 1534 static bool isBitfieldExtractOpFromAnd(SelectionDAG *CurDAG, SDNode *N,
 1796 static bool isBitfieldExtractOp(SelectionDAG *CurDAG, SDNode *N, unsigned &Opc,
 2077   if (Depth >= SelectionDAG::MaxRecursionDepth)
 2103 static SDValue getLeftShift(SelectionDAG *CurDAG, SDValue Op, int ShlAmount) {
 2133 static bool isBitfieldPositioningOp(SelectionDAG *CurDAG, SDValue Op,
 2193 static bool tryBitfieldInsertOpFromOrAndImm(SDNode *N, SelectionDAG *CurDAG) {
 2282                                       SelectionDAG *CurDAG) {
lib/Target/AArch64/AArch64ISelLowering.cpp
 1054     const APInt &DemandedElts, const SelectionDAG &DAG, unsigned Depth) const {
 1603                               const SDLoc &dl, SelectionDAG &DAG) {
 1704                                          const SDLoc &DL, SelectionDAG &DAG) {
 1810 static SDValue emitConjunctionRec(SelectionDAG &DAG, SDValue Val,
 1922 static SDValue emitConjunction(SelectionDAG &DAG, SDValue Val,
 1971                              SDValue &AArch64cc, SelectionDAG &DAG,
 2102 getAArch64XALUOOp(AArch64CC::CondCode &CC, SDValue Op, SelectionDAG &DAG) {
 2216 SDValue AArch64TargetLowering::LowerF128Call(SDValue Op, SelectionDAG &DAG,
 2232 static SDValue LowerXOR(SDValue Op, SelectionDAG &DAG) {
 2312 static SDValue LowerADDC_ADDE_SUBC_SUBE(SDValue Op, SelectionDAG &DAG) {
 2348 static SDValue LowerXALUO(SDValue Op, SelectionDAG &DAG) {
 2379 static SDValue LowerPREFETCH(SDValue Op, SelectionDAG &DAG) {
 2406                                               SelectionDAG &DAG) const {
 2416                                              SelectionDAG &DAG) const {
 2435                                                     SelectionDAG &DAG) const {
 2475                                               SelectionDAG &DAG) const {
 2504 static SDValue LowerVectorINT_TO_FP(SDValue Op, SelectionDAG &DAG) {
 2533                                             SelectionDAG &DAG) const {
 2566                                             SelectionDAG &DAG) const {
 2599 static SDValue LowerBITCAST(SDValue Op, SelectionDAG &DAG) {
 2631 static SDValue addRequiredExtensionForVectorMULL(SDValue N, SelectionDAG &DAG,
 2648 static bool isExtendedBUILD_VECTOR(SDNode *N, SelectionDAG &DAG,
 2674 static SDValue skipExtensionForVectorMULL(SDNode *N, SelectionDAG &DAG) {
 2698 static bool isSignExtended(SDNode *N, SelectionDAG &DAG) {
 2703 static bool isZeroExtended(SDNode *N, SelectionDAG &DAG) {
 2708 static bool isAddSubSExt(SDNode *N, SelectionDAG &DAG) {
 2719 static bool isAddSubZExt(SDNode *N, SelectionDAG &DAG) {
 2731                                                 SelectionDAG &DAG) const {
 2750 static SDValue LowerMUL(SDValue Op, SelectionDAG &DAG) {
 2820                                                      SelectionDAG &DAG) const {
 2899                                         SelectionDAG &DAG) {
 2932                                           SelectionDAG &DAG) const {
 2960                                               SelectionDAG &DAG) const {
 3137     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 3392                                                 SelectionDAG &DAG,
 3480     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals, bool isThisReturn,
 3562     const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG) const {
 3676                                                    SelectionDAG &DAG,
 3718   SelectionDAG &DAG = CLI.DAG;
 4164                                    const SDLoc &DL, SelectionDAG &DAG) const {
 4279                                              SelectionDAG &DAG,
 4286                                              SelectionDAG &DAG,
 4292                                              SelectionDAG &DAG,
 4299                                              SelectionDAG &DAG,
 4306 SDValue AArch64TargetLowering::getGOT(NodeTy *N, SelectionDAG &DAG,
 4319 SDValue AArch64TargetLowering::getAddrLarge(NodeTy *N, SelectionDAG &DAG,
 4335 SDValue AArch64TargetLowering::getAddr(NodeTy *N, SelectionDAG &DAG,
 4349 SDValue AArch64TargetLowering::getAddrTiny(NodeTy *N, SelectionDAG &DAG,
 4359                                                   SelectionDAG &DAG) const {
 4420                                                    SelectionDAG &DAG) const {
 4488                                                       SelectionDAG &DAG) const {
 4503                                                 SelectionDAG &DAG) const {
 4603                                                     SelectionDAG &DAG) const {
 4661                                                      SelectionDAG &DAG) const {
 4676 SDValue AArch64TargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
 4812                                               SelectionDAG &DAG) const {
 4885 SDValue AArch64TargetLowering::LowerCTPOP(SDValue Op, SelectionDAG &DAG) const {
 4943 SDValue AArch64TargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
 5019                                               SelectionDAG &DAG) const {
 5205                                               SelectionDAG &DAG) const {
 5216                                            SelectionDAG &DAG) const {
 5254                                               SelectionDAG &DAG) const {
 5269                                           SelectionDAG &DAG) const {
 5285                                                  SelectionDAG &DAG) const {
 5302                                                SelectionDAG &DAG) const {
 5314                                                  SelectionDAG &DAG) const {
 5328                                                   SelectionDAG &DAG) const {
 5343                                                 SelectionDAG &DAG) const {
 5412                                             SelectionDAG &DAG) const {
 5424                                            SelectionDAG &DAG) const {
 5440 SDValue AArch64TargetLowering::LowerVAARG(SDValue Op, SelectionDAG &DAG) const {
 5507                                               SelectionDAG &DAG) const {
 5528                                               SelectionDAG &DAG) const {
 5558                                                      SelectionDAG &DAG) const {
 5572                                                SelectionDAG &DAG) const {
 5596                                                     SelectionDAG &DAG) const {
 5653                                                    SelectionDAG &DAG) const {
 5750                            SDValue Operand, SelectionDAG &DAG,
 5772                                                SelectionDAG &DAG, int Enabled,
 5814                                                 SelectionDAG &DAG, int Enabled,
 6065     SelectionDAG &DAG) const {
 6221 static SDValue WidenVector(SDValue V64Reg, SelectionDAG &DAG) {
 6241 static SDValue NarrowVector(SDValue V128Reg, SelectionDAG &DAG) {
 6254                                                   SelectionDAG &DAG) const {
 6717 static SDValue tryFormConcatFromShuffle(SDValue Op, SelectionDAG &DAG) {
 6748                                       SDValue RHS, SelectionDAG &DAG,
 6850                            SelectionDAG &DAG) {
 6925                                                    SelectionDAG &DAG) const {
 7077                                                  SelectionDAG &DAG) const {
 7134 static SDValue tryAdvSIMDModImm64(unsigned NewOp, SDValue Op, SelectionDAG &DAG,
 7155 static SDValue tryAdvSIMDModImm32(unsigned NewOp, SDValue Op, SelectionDAG &DAG,
 7203 static SDValue tryAdvSIMDModImm16(unsigned NewOp, SDValue Op, SelectionDAG &DAG,
 7244                                     SelectionDAG &DAG, const APInt &Bits) {
 7274 static SDValue tryAdvSIMDModImm8(unsigned NewOp, SDValue Op, SelectionDAG &DAG,
 7295 static SDValue tryAdvSIMDModImmFP(unsigned NewOp, SDValue Op, SelectionDAG &DAG,
 7363 static SDValue tryLowerToSLI(SDNode *N, SelectionDAG &DAG) {
 7425                                              SelectionDAG &DAG) const {
 7470                                     SelectionDAG &DAG) {
 7500 static SDValue ConstantBuildVector(SDValue Op, SelectionDAG &DAG) {
 7542                                                  SelectionDAG &DAG) const {
 7825                                                       SelectionDAG &DAG) const {
 7859                                                SelectionDAG &DAG) const {
 7895                                                       SelectionDAG &DAG) const {
 8002                                                       SelectionDAG &DAG) const {
 8052                                     const SDLoc &dl, SelectionDAG &DAG) {
 8146                                            SelectionDAG &DAG) const {
 8210                                   SelectionDAG &DAG) {
 8218                                               SelectionDAG &DAG) const {
 8251                                                     SelectionDAG &DAG) const {
 8268                                                     SelectionDAG &DAG) const {
 8285     SDValue Op, SDValue Chain, SDValue &Size, SelectionDAG &DAG) const {
 8314                                                SelectionDAG &DAG) const {
 9269 static SDValue foldVectorXorShiftIntoCmp(SDNode *N, SelectionDAG &DAG,
 9293 static SDValue performIntegerAbsCombine(SDNode *N, SelectionDAG &DAG) {
 9320 static SDValue performXorCombine(SDNode *N, SelectionDAG &DAG,
 9334                                      SelectionDAG &DAG,
 9375 static SDValue performMulCombine(SDNode *N, SelectionDAG &DAG,
 9476                                                          SelectionDAG &DAG) {
 9521 static SDValue performIntToFpCombine(SDNode *N, SelectionDAG &DAG,
 9562 static SDValue performFpToIntCombine(SDNode *N, SelectionDAG &DAG,
 9637 static SDValue performFDivCombine(SDNode *N, SelectionDAG &DAG,
 9730   SelectionDAG &DAG = DCI.DAG;
 9771   SelectionDAG &DAG = DCI.DAG;
 9818   SelectionDAG &DAG = DCI.DAG;
 9835   SelectionDAG &DAG = DCI.DAG;
 9875   SelectionDAG &DAG = DCI.DAG;
 9903                                      SelectionDAG &DAG) {
 9971                                            SelectionDAG &DAG) {
10053                                            SelectionDAG &DAG) {
10113 static SDValue tryExtendDUPToExtractHigh(SDValue N, SelectionDAG &DAG) {
10246 static SDValue performSetccAddFolding(SDNode *Op, SelectionDAG &DAG) {
10298                                         SelectionDAG &DAG) {
10347                                        SelectionDAG &DAG) {
10374 static SDValue tryCombineShiftImm(unsigned IID, SDNode *N, SelectionDAG &DAG) {
10445 static SDValue tryCombineCRC32(unsigned Mask, SDNode *N, SelectionDAG &DAG) {
10459                                            SelectionDAG &DAG) {
10471   SelectionDAG &DAG = DCI.DAG;
10528                                     SelectionDAG &DAG) {
10624 static SDValue splitStoreSplat(SelectionDAG &DAG, StoreSDNode &St,
10679 static SDValue replaceZeroVectorStore(SelectionDAG &DAG, StoreSDNode &St) {
10742 static SDValue replaceSplatVectorStore(SelectionDAG &DAG, StoreSDNode &St) {
10796                            SelectionDAG &DAG,
10873   SelectionDAG &DAG = DCI.DAG;
10973                                      SelectionDAG &DAG) {
10988                                    SelectionDAG &DAG,
11005                                           SelectionDAG &DAG) {
11323                            SelectionDAG &DAG, unsigned CCIndex,
11397                                     SelectionDAG &DAG) {
11462                                  SelectionDAG &DAG) {
11536                                  SelectionDAG &DAG) {
11565 static SDValue performVSelectCombine(SDNode *N, SelectionDAG &DAG) {
11596   SelectionDAG &DAG = DCI.DAG;
11665 static SDValue performGlobalAddressCombine(SDNode *N, SelectionDAG &DAG,
11717   SelectionDAG &DAG = DCI.DAG;
11860                                                    SelectionDAG &DAG) const {
11883                                                       SelectionDAG &DAG) const {
11904     ISD::MemIndexedMode &AM, SelectionDAG &DAG) const {
11928                                   SelectionDAG &DAG) {
11946                                     SelectionDAG &DAG, unsigned InterOp,
11958 static std::pair<SDValue, SDValue> splitInt128(SDValue N, SelectionDAG &DAG) {
11968 static SDValue createGPRPairNode(SelectionDAG &DAG, SDValue V) {
11987                                        SelectionDAG &DAG,
12055     SDNode *N, SmallVectorImpl<SDValue> &Results, SelectionDAG &DAG) const {
12351         SelectionDAG &DAG) const {
12360 bool AArch64TargetLowering::shouldExpandShift(SelectionDAG &DAG,
lib/Target/AArch64/AArch64ISelLowering.h
  266                                      const SelectionDAG &DAG,
  294   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  324   SDValue ReconstructShuffle(SDValue Op, SelectionDAG &DAG) const;
  468                         const SelectionDAG &DAG) const override {
  507       SelectionDAG &DAG) const override;
  509   bool shouldExpandShift(SelectionDAG &DAG, SDNode *N) const override;
  586                                const SDLoc &DL, SelectionDAG &DAG,
  595                           const SDLoc &DL, SelectionDAG &DAG,
  599   SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
  601   SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  607       const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG) const;
  612   SDValue addTokenForArgument(SDValue Chain, SelectionDAG &DAG,
  617   void saveVarArgRegisters(CCState &CCInfo, SelectionDAG &DAG, const SDLoc &DL,
  628                       SelectionDAG &DAG) const override;
  630   SDValue getTargetNode(GlobalAddressSDNode *N, EVT Ty, SelectionDAG &DAG,
  632   SDValue getTargetNode(JumpTableSDNode *N, EVT Ty, SelectionDAG &DAG,
  634   SDValue getTargetNode(ConstantPoolSDNode *N, EVT Ty, SelectionDAG &DAG,
  636   SDValue getTargetNode(BlockAddressSDNode *N, EVT Ty, SelectionDAG &DAG,
  639   SDValue getGOT(NodeTy *N, SelectionDAG &DAG, unsigned Flags = 0) const;
  641   SDValue getAddrLarge(NodeTy *N, SelectionDAG &DAG, unsigned Flags = 0) const;
  643   SDValue getAddr(NodeTy *N, SelectionDAG &DAG, unsigned Flags = 0) const;
  645   SDValue getAddrTiny(NodeTy *N, SelectionDAG &DAG, unsigned Flags = 0) const;
  646   SDValue LowerADDROFRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  647   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  648   SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  649   SDValue LowerDarwinGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  650   SDValue LowerELFGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  652                                  SelectionDAG &DAG) const;
  653   SDValue LowerWindowsGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  654   SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
  655   SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
  656   SDValue LowerSELECT(SDValue Op, SelectionDAG &DAG) const;
  657   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
  660                          SelectionDAG &DAG) const;
  661   SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
  662   SDValue LowerBR_JT(SDValue Op, SelectionDAG &DAG) const;
  663   SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  664   SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  665   SDValue LowerAAPCS_VASTART(SDValue Op, SelectionDAG &DAG) const;
  666   SDValue LowerDarwin_VASTART(SDValue Op, SelectionDAG &DAG) const;
  667   SDValue LowerWin64_VASTART(SDValue Op, SelectionDAG &DAG) const;
  668   SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  669   SDValue LowerVACOPY(SDValue Op, SelectionDAG &DAG) const;
  670   SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) const;
  671   SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  672   SDValue LowerSPONENTRY(SDValue Op, SelectionDAG &DAG) const;
  673   SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  674   SDValue LowerFLT_ROUNDS_(SDValue Op, SelectionDAG &DAG) const;
  675   SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  676   SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  677   SDValue LowerSCALAR_TO_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  678   SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  679   SDValue LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
  680   SDValue LowerSPLAT_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  681   SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const;
  682   SDValue LowerVectorSRA_SRL_SHL(SDValue Op, SelectionDAG &DAG) const;
  683   SDValue LowerShiftLeftParts(SDValue Op, SelectionDAG &DAG) const;
  684   SDValue LowerShiftRightParts(SDValue Op, SelectionDAG &DAG) const;
  685   SDValue LowerVSETCC(SDValue Op, SelectionDAG &DAG) const;
  686   SDValue LowerCTPOP(SDValue Op, SelectionDAG &DAG) const;
  687   SDValue LowerF128Call(SDValue Op, SelectionDAG &DAG,
  689   SDValue LowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) const;
  690   SDValue LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const;
  691   SDValue LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const;
  692   SDValue LowerVectorFP_TO_INT(SDValue Op, SelectionDAG &DAG) const;
  693   SDValue LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const;
  694   SDValue LowerINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
  695   SDValue LowerVectorOR(SDValue Op, SelectionDAG &DAG) const;
  696   SDValue LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG) const;
  697   SDValue LowerFSINCOS(SDValue Op, SelectionDAG &DAG) const;
  698   SDValue LowerVECREDUCE(SDValue Op, SelectionDAG &DAG) const;
  699   SDValue LowerATOMIC_LOAD_SUB(SDValue Op, SelectionDAG &DAG) const;
  700   SDValue LowerATOMIC_LOAD_AND(SDValue Op, SelectionDAG &DAG) const;
  701   SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
  704                                          SelectionDAG &DAG) const;
  706   SDValue BuildSDIVPow2(SDNode *N, const APInt &Divisor, SelectionDAG &DAG,
  708   SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
  711   SDValue getRecipEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
  733                                     SelectionDAG &DAG) const override;
  749                               SelectionDAG &DAG) const;
  752                                  SelectionDAG &DAG) const override;
  755                                   SelectionDAG &DAG) const override;
  758                           SelectionDAG &DAG) const override;
lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
   19     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
   62 static SDValue EmitUnrolledSetTag(SelectionDAG &DAG, const SDLoc &dl,
  113     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Addr,
lib/Target/AArch64/AArch64SelectionDAGInfo.h
   22   SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &dl,
   26   SDValue EmitTargetCodeForSetTag(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
  103 static SDNode *packConstantV2I16(const SDNode *N, SelectionDAG &DAG,
  120 static SDNode *packNegConstantV2I16(const SDNode *N, SelectionDAG &DAG) {
  482   SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_end();
 2714     SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_begin();
lib/Target/AMDGPU/AMDGPUISelLowering.cpp
   51 unsigned AMDGPUTargetLowering::numBitsUnsigned(SDValue Op, SelectionDAG &DAG) {
   57 unsigned AMDGPUTargetLowering::numBitsSigned(SDValue Op, SelectionDAG &DAG) {
  677                                                    const SelectionDAG &DAG,
 1024   const SDLoc &DL, SelectionDAG &DAG) const {
 1047                                                   SelectionDAG &DAG,
 1086   SelectionDAG &DAG = CLI.DAG;
 1115                                                       SelectionDAG &DAG) const {
 1126                                              SelectionDAG &DAG) const {
 1168                                               SelectionDAG &DAG) const {
 1193                                                  SelectionDAG &DAG) const {
 1227                                                   SelectionDAG &DAG) const {
 1247                                                      SelectionDAG &DAG) const {
 1267   SelectionDAG &DAG = DCI.DAG;
 1333 AMDGPUTargetLowering::split64BitValue(SDValue Op, SelectionDAG &DAG) const {
 1347 SDValue AMDGPUTargetLowering::getLoHalf64(SDValue Op, SelectionDAG &DAG) const {
 1355 SDValue AMDGPUTargetLowering::getHiHalf64(SDValue Op, SelectionDAG &DAG) const {
 1367 AMDGPUTargetLowering::getSplitDestVTs(const EVT &VT, SelectionDAG &DAG) const {
 1384                                   SelectionDAG &DAG) const {
 1399                                               SelectionDAG &DAG) const {
 1458                                               SelectionDAG &DAG) const {
 1483                                                SelectionDAG &DAG) const {
 1526 SDValue AMDGPUTargetLowering::LowerDIVREM24(SDValue Op, SelectionDAG &DAG,
 1633                                       SelectionDAG &DAG,
 1843                                            SelectionDAG &DAG) const {
 1958                                            SelectionDAG &DAG) const {
 2018 SDValue AMDGPUTargetLowering::LowerFREM(SDValue Op, SelectionDAG &DAG) const {
 2033 SDValue AMDGPUTargetLowering::LowerFCEIL(SDValue Op, SelectionDAG &DAG) const {
 2059                                   SelectionDAG &DAG) {
 2073 SDValue AMDGPUTargetLowering::LowerFTRUNC(SDValue Op, SelectionDAG &DAG) const {
 2122 SDValue AMDGPUTargetLowering::LowerFRINT(SDValue Op, SelectionDAG &DAG) const {
 2149 SDValue AMDGPUTargetLowering::LowerFNEARBYINT(SDValue Op, SelectionDAG &DAG) const {
 2161 SDValue AMDGPUTargetLowering::LowerFROUND32_16(SDValue Op, SelectionDAG &DAG) const {
 2190 SDValue AMDGPUTargetLowering::LowerFROUND64(SDValue Op, SelectionDAG &DAG) const {
 2247 SDValue AMDGPUTargetLowering::LowerFROUND(SDValue Op, SelectionDAG &DAG) const {
 2259 SDValue AMDGPUTargetLowering::LowerFFLOOR(SDValue Op, SelectionDAG &DAG) const {
 2284 SDValue AMDGPUTargetLowering::LowerFLOG(SDValue Op, SelectionDAG &DAG,
 2297 SDValue AMDGPUTargetLowering::lowerFEXP(SDValue Op, SelectionDAG &DAG) const {
 2315 SDValue AMDGPUTargetLowering::LowerCTLZ_CTTZ(SDValue Op, SelectionDAG &DAG) const {
 2389 SDValue AMDGPUTargetLowering::LowerINT_TO_FP32(SDValue Op, SelectionDAG &DAG,
 2474 SDValue AMDGPUTargetLowering::LowerINT_TO_FP64(SDValue Op, SelectionDAG &DAG,
 2498                                                SelectionDAG &DAG) const {
 2525                                               SelectionDAG &DAG) const {
 2551 SDValue AMDGPUTargetLowering::LowerFP64_TO_INT(SDValue Op, SelectionDAG &DAG,
 2580 SDValue AMDGPUTargetLowering::LowerFP_TO_FP16(SDValue Op, SelectionDAG &DAG) const {
 2680                                               SelectionDAG &DAG) const {
 2703                                               SelectionDAG &DAG) const {
 2726                                                      SelectionDAG &DAG) const {
 2752 static bool isU24(SDValue Op, SelectionDAG &DAG) {
 2756 static bool isI24(SDValue Op, SelectionDAG &DAG) {
 2765   SelectionDAG &DAG = DCI.DAG;
 2801 static SDValue constantFoldBFE(SelectionDAG &DAG, IntTy Src0, uint32_t Offset,
 2854   SelectionDAG &DAG = DCI.DAG;
 2909   SelectionDAG &DAG = DCI.DAG;
 2955   SelectionDAG &DAG = DCI.DAG;
 2994   SelectionDAG &DAG = DCI.DAG;
 3027   SelectionDAG &DAG = DCI.DAG;
 3090   SelectionDAG &DAG = DCI.DAG;
 3125   SelectionDAG &DAG = DCI.DAG;
 3168   SelectionDAG &DAG = DCI.DAG;
 3254 static SDValue getMul24(SelectionDAG &DAG, const SDLoc &SL,
 3286   SelectionDAG &DAG = DCI.DAG;
 3328   SelectionDAG &DAG = DCI.DAG;
 3352   SelectionDAG &DAG = DCI.DAG;
 3371   SelectionDAG &DAG = DCI.DAG;
 3398 SDValue AMDGPUTargetLowering::getFFBX_U32(SelectionDAG &DAG,
 3432   SelectionDAG &DAG = DCI.DAG;
 3466   SelectionDAG &DAG = DCI.DAG;
 3484   SelectionDAG &DAG = DCI.DAG;
 3560     SelectionDAG &DAG = DCI.DAG;
 3633   SelectionDAG &DAG = DCI.DAG;
 3835   SelectionDAG &DAG = DCI.DAG;
 3872   SelectionDAG &DAG = DCI.DAG;
 4086 SDValue AMDGPUTargetLowering::CreateLiveInRegister(SelectionDAG &DAG,
 4122 SDValue AMDGPUTargetLowering::loadStackInputValue(SelectionDAG &DAG,
 4138 SDValue AMDGPUTargetLowering::storeStackInputValue(SelectionDAG &DAG,
 4152 SDValue AMDGPUTargetLowering::loadInputValue(SelectionDAG &DAG,
 4355                                               SelectionDAG &DAG, int Enabled,
 4373                                                SelectionDAG &DAG, int Enabled,
 4395     const APInt &DemandedElts, const SelectionDAG &DAG, unsigned Depth) const {
 4536     SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
 4578                                                         const SelectionDAG &DAG,
lib/Target/AMDGPU/AMDGPUISelLowering.h
   36   SDValue getFFBX_U32(SelectionDAG &DAG, SDValue Op, const SDLoc &DL, unsigned Opc) const;
   39   static unsigned numBitsUnsigned(SDValue Op, SelectionDAG &DAG);
   40   static unsigned numBitsSigned(SDValue Op, SelectionDAG &DAG);
   44   SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const;
   45   SDValue LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG) const;
   49   SDValue LowerFREM(SDValue Op, SelectionDAG &DAG) const;
   50   SDValue LowerFCEIL(SDValue Op, SelectionDAG &DAG) const;
   51   SDValue LowerFTRUNC(SDValue Op, SelectionDAG &DAG) const;
   52   SDValue LowerFRINT(SDValue Op, SelectionDAG &DAG) const;
   53   SDValue LowerFNEARBYINT(SDValue Op, SelectionDAG &DAG) const;
   55   SDValue LowerFROUND32_16(SDValue Op, SelectionDAG &DAG) const;
   56   SDValue LowerFROUND64(SDValue Op, SelectionDAG &DAG) const;
   57   SDValue LowerFROUND(SDValue Op, SelectionDAG &DAG) const;
   58   SDValue LowerFFLOOR(SDValue Op, SelectionDAG &DAG) const;
   59   SDValue LowerFLOG(SDValue Op, SelectionDAG &DAG,
   61   SDValue lowerFEXP(SDValue Op, SelectionDAG &DAG) const;
   63   SDValue LowerCTLZ_CTTZ(SDValue Op, SelectionDAG &DAG) const;
   65   SDValue LowerINT_TO_FP32(SDValue Op, SelectionDAG &DAG, bool Signed) const;
   66   SDValue LowerINT_TO_FP64(SDValue Op, SelectionDAG &DAG, bool Signed) const;
   67   SDValue LowerUINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
   68   SDValue LowerSINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
   70   SDValue LowerFP64_TO_INT(SDValue Op, SelectionDAG &DAG, bool Signed) const;
   71   SDValue LowerFP_TO_FP16(SDValue Op, SelectionDAG &DAG) const;
   72   SDValue LowerFP_TO_UINT(SDValue Op, SelectionDAG &DAG) const;
   73   SDValue LowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG) const;
   75   SDValue LowerSIGN_EXTEND_INREG(SDValue Op, SelectionDAG &DAG) const;
  107                                      SelectionDAG &DAG) const;
  111                                               SelectionDAG &DAG) const;
  112   SDValue getLoHalf64(SDValue Op, SelectionDAG &DAG) const;
  113   SDValue getHiHalf64(SDValue Op, SelectionDAG &DAG) const;
  118   std::pair<EVT, EVT> getSplitDestVTs(const EVT &VT, SelectionDAG &DAG) const;
  124                                           SelectionDAG &DAG) const;
  127   SDValue SplitVectorLoad(SDValue Op, SelectionDAG &DAG) const;
  130   SDValue WidenVectorLoad(SDValue Op, SelectionDAG &DAG) const;
  133   SDValue SplitVectorStore(SDValue Op, SelectionDAG &DAG) const;
  135   SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
  136   SDValue LowerSDIVREM(SDValue Op, SelectionDAG &DAG) const;
  137   SDValue LowerUDIVREM(SDValue Op, SelectionDAG &DAG) const;
  138   SDValue LowerDIVREM24(SDValue Op, SelectionDAG &DAG, bool sign) const;
  139   void LowerUDIVREM64(SDValue Op, SelectionDAG &DAG,
  187   bool isLoadBitCastBeneficial(EVT, EVT, const SelectionDAG &DAG,
  204                       SelectionDAG &DAG) const override;
  207                               SelectionDAG &DAG,
  218                                   SelectionDAG &DAG) const;
  220   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  224                           SelectionDAG &DAG) const override;
  242   bool isFsqrtCheap(SDValue Operand, SelectionDAG &DAG) const override {
  245   SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
  248   SDValue getRecipEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
  252                                   SelectionDAG &DAG) const = 0;
  260                                      const SelectionDAG &DAG,
  264                                            const SelectionDAG &DAG,
  268                                     const SelectionDAG &DAG,
  277   SDValue CreateLiveInRegister(SelectionDAG &DAG,
  282   SDValue CreateLiveInRegister(SelectionDAG &DAG,
  289   SDValue CreateLiveInRegisterRaw(SelectionDAG &DAG,
  297   SDValue loadStackInputValue(SelectionDAG &DAG,
  302   SDValue storeStackInputValue(SelectionDAG &DAG,
  308   SDValue loadInputValue(SelectionDAG &DAG,
lib/Target/AMDGPU/R600ISelLowering.cpp
  473 SDValue R600TargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
  652                                             SelectionDAG &DAG) const {
  692 SDValue R600TargetLowering::vectorToVerticalVector(SelectionDAG &DAG,
  709                                                     SelectionDAG &DAG) const {
  724                                                    SelectionDAG &DAG) const {
  742                                                SelectionDAG &DAG) const {
  755 SDValue R600TargetLowering::LowerTrig(SDValue Op, SelectionDAG &DAG) const {
  789 SDValue R600TargetLowering::LowerSHLParts(SDValue Op, SelectionDAG &DAG) const {
  825 SDValue R600TargetLowering::LowerSRXParts(SDValue Op, SelectionDAG &DAG) const {
  863 SDValue R600TargetLowering::LowerUADDSUBO(SDValue Op, SelectionDAG &DAG,
  881 SDValue R600TargetLowering::lowerFP_TO_UINT(SDValue Op, SelectionDAG &DAG) const {
  891 SDValue R600TargetLowering::lowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG) const {
  901 SDValue R600TargetLowering::LowerImplicitParameter(SelectionDAG &DAG, EVT VT,
  940 SDValue R600TargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
 1089                                                SelectionDAG &DAG) const {
 1139                                                    SelectionDAG &DAG) const {
 1229 SDValue R600TargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 1385                                                 SelectionDAG &DAG) const {
 1441 SDValue R600TargetLowering::LowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 1529 SDValue R600TargetLowering::LowerBRCOND(SDValue Op, SelectionDAG &DAG) const {
 1539                                             SelectionDAG &DAG) const {
 1581     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 1660                                           const SelectionDAG &DAG) const {
 1688   SelectionDAG &DAG, SDValue VectorEntry,
 1737 static SDValue ReorganizeVector(SelectionDAG &DAG, SDValue VectorEntry,
 1778                                             SelectionDAG &DAG,
 1802                                             SelectionDAG &DAG) const {
 1853   SelectionDAG &DAG = DCI.DAG;
 2084                                      SelectionDAG &DAG) const {
 2214                                             SelectionDAG &DAG) const {
lib/Target/AMDGPU/R600ISelLowering.h
   35   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   39                           SelectionDAG &DAG) const override;
   44                                const SDLoc &DL, SelectionDAG &DAG,
   50                         const SelectionDAG &DAG) const override;
   63   SDValue LowerImplicitParameter(SelectionDAG &DAG, EVT VT, const SDLoc &DL,
   68   SDValue OptimizeSwizzle(SDValue BuildVector, SDValue Swz[], SelectionDAG &DAG,
   70   SDValue vectorToVerticalVector(SelectionDAG &DAG, SDValue Vector) const;
   72   SDValue lowerFrameIndex(SDValue Op, SelectionDAG &DAG) const;
   73   SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
   74   SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
   76                              SelectionDAG &DAG) const override;
   77   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
   79   SDValue lowerPrivateTruncStore(StoreSDNode *Store, SelectionDAG &DAG) const;
   80   SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
   81   SDValue lowerFP_TO_UINT(SDValue Op, SelectionDAG &DAG) const;
   82   SDValue lowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG) const;
   84   SDValue lowerPrivateExtLoad(SDValue Op, SelectionDAG &DAG) const;
   85   SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG) const;
   86   SDValue LowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
   87   SDValue LowerTrig(SDValue Op, SelectionDAG &DAG) const;
   88   SDValue LowerSHLParts(SDValue Op, SelectionDAG &DAG) const;
   89   SDValue LowerSRXParts(SDValue Op, SelectionDAG &DAG) const;
   90   SDValue LowerUADDSUBO(SDValue Op, SelectionDAG &DAG,
   94                                           SelectionDAG &DAG) const;
  103                    SelectionDAG &DAG) const;
  105                           SelectionDAG &DAG) const;
  107   SDNode *PostISelFolding(MachineSDNode *N, SelectionDAG &DAG) const override;
lib/Target/AMDGPU/SIISelLowering.cpp
 1223                                         const SelectionDAG &DAG) const {
 1397 SDValue SITargetLowering::lowerKernArgParameterPtr(SelectionDAG &DAG,
 1419 SDValue SITargetLowering::getImplicitArgPtr(SelectionDAG &DAG,
 1426 SDValue SITargetLowering::convertArgType(SelectionDAG &DAG, EVT VT, EVT MemVT,
 1458   SelectionDAG &DAG, EVT VT, EVT MemVT,
 1503 SDValue SITargetLowering::lowerStackParameter(SelectionDAG &DAG, CCValAssign &VA,
 1552 SDValue SITargetLowering::getPreloadedValue(SelectionDAG &DAG,
 2020     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 2263                               const SDLoc &DL, SelectionDAG &DAG) const {
 2371     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals, bool IsThisReturn,
 2441   SelectionDAG &DAG = CLI.DAG;
 2588     const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG) const {
 2670   SelectionDAG &DAG = CLI.DAG;
 3949                                              SelectionDAG &DAG) const {
 3969                                               SelectionDAG &DAG) const {
 3990                                               SelectionDAG &DAG) const {
 4013 SDValue SITargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 4088                                        SelectionDAG &DAG, bool Unpacked) {
 4115                                               SelectionDAG &DAG,
 4147                                              SelectionDAG &DAG,
 4182                                   SDNode *N, SelectionDAG &DAG) {
 4218                                   SDNode *N, SelectionDAG &DAG) {
 4251                                           SelectionDAG &DAG) const {
 4435                                       SelectionDAG &DAG) const {
 4534                                           SelectionDAG &DAG) const {
 4558 SDValue SITargetLowering::getFPExtOrFPTrunc(SelectionDAG &DAG,
 4567 SDValue SITargetLowering::lowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const {
 4584                                                SelectionDAG &DAG) const {
 4602 SDValue SITargetLowering::lowerTRAP(SDValue Op, SelectionDAG &DAG) const {
 4628 SDValue SITargetLowering::lowerDEBUGTRAP(SDValue Op, SelectionDAG &DAG) const {
 4652                                              SelectionDAG &DAG) const {
 4701                                              SelectionDAG &DAG) const {
 4765                                                 SelectionDAG &DAG) const {
 4786                                                  SelectionDAG &DAG) const {
 4862                                                   SelectionDAG &DAG) const {
 4908                                               SelectionDAG &DAG) const {
 4960                                             SelectionDAG &DAG) const {
 5019 buildPCRelGlobalAddress(SelectionDAG &DAG, const GlobalValue *GV,
 5066                                              SelectionDAG &DAG) const {
 5107 SDValue SITargetLowering::copyToM0(SelectionDAG &DAG, SDValue Chain,
 5123 SDValue SITargetLowering::lowerImplicitZextParam(SelectionDAG &DAG,
 5135 static SDValue emitNonHSAIntrinsicError(SelectionDAG &DAG, const SDLoc &DL,
 5144 static SDValue emitRemovedIntrinsicError(SelectionDAG &DAG, const SDLoc &DL,
 5153 static SDValue getBuildDwordsVector(SelectionDAG &DAG, SDLoc DL,
 5192 static bool parseCachePolicy(SDValue CachePolicy, SelectionDAG &DAG,
 5217 static SDValue constructRetValue(SelectionDAG &DAG,
 5297 static bool parseTexFail(SDValue TexFailCtrl, SelectionDAG &DAG, SDValue *TFE,
 5317                                      SelectionDAG &DAG) const {
 5640                                        SelectionDAG &DAG) const {
 5705                                                   SelectionDAG &DAG) const {
 6114                                                  SelectionDAG &DAG) const {
 6713                                               SelectionDAG &DAG) const {
 6741                                          SelectionDAG &DAG) const {
 6767                                               SelectionDAG &DAG) const {
 7112     SDValue Offset, SelectionDAG &DAG) const {
 7162                                         SelectionDAG &DAG, SDValue *Offsets,
 7195 SDValue SITargetLowering::handleByteShortBufferLoads(SelectionDAG &DAG,
 7214 SDValue SITargetLowering::handleByteShortBufferStores(SelectionDAG &DAG,
 7230 static SDValue getLoadExtOrTrunc(SelectionDAG &DAG,
 7251   SelectionDAG &DAG = DCI.DAG;
 7320 SDValue SITargetLowering::LowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 7487 SDValue SITargetLowering::LowerSELECT(SDValue Op, SelectionDAG &DAG) const {
 7517                                               SelectionDAG &DAG) const {
 7568 static SDValue getFPBinOp(SelectionDAG &DAG, unsigned Opcode, const SDLoc &SL,
 7588 static SDValue getFPTernOp(SelectionDAG &DAG, unsigned Opcode, const SDLoc &SL,
 7609 SDValue SITargetLowering::LowerFDIV16(SDValue Op, SelectionDAG &DAG) const {
 7630 SDValue SITargetLowering::lowerFDIV_FAST(SDValue Op, SelectionDAG &DAG) const {
 7665 static const SDValue getSPDenormModeValue(int SPDenormMode, SelectionDAG &DAG,
 7676 SDValue SITargetLowering::LowerFDIV32(SDValue Op, SelectionDAG &DAG) const {
 7779 SDValue SITargetLowering::LowerFDIV64(SDValue Op, SelectionDAG &DAG) const {
 7846 SDValue SITargetLowering::LowerFDIV(SDValue Op, SelectionDAG &DAG) const {
 7861 SDValue SITargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 7945 SDValue SITargetLowering::LowerTrig(SDValue Op, SelectionDAG &DAG) const {
 7972 SDValue SITargetLowering::LowerATOMIC_CMP_SWAP(SDValue Op, SelectionDAG &DAG) const {
 8010   SelectionDAG &DAG = DCI.DAG;
 8077   SelectionDAG &DAG = DCI.DAG;
 8095   SelectionDAG &DAG = DCI.DAG;
 8185 static uint32_t getPermuteMask(SelectionDAG &DAG, SDValue V) {
 8233   SelectionDAG &DAG = DCI.DAG;
 8416   SelectionDAG &DAG = DCI.DAG;
 8681   SelectionDAG &DAG = DCI.DAG;
 8713 bool SITargetLowering::isCanonicalized(SelectionDAG &DAG, SDValue Op,
 8873   SelectionDAG &DAG, const SDLoc &SL, EVT VT, const APFloat &C) const {
 8905   SelectionDAG &DAG = DCI.DAG;
 8911     APFloat QNaN = APFloat::getQNaN(SelectionDAG::EVTToAPFloatSemantics(VT));
 9012   SelectionDAG &DAG, const SDLoc &SL,
 9061 SDValue SITargetLowering::performFPMed3ImmCombine(SelectionDAG &DAG,
 9117   SelectionDAG &DAG = DCI.DAG;
 9203   SelectionDAG &DAG = DCI.DAG;
 9253   SelectionDAG &DAG = DCI.DAG;
 9390   SelectionDAG &DAG = DCI.DAG;
 9406 unsigned SITargetLowering::getFusedOpcode(const SelectionDAG &DAG,
 9433                                                SelectionDAG &DAG) const {
 9470 static SDValue getMad64_32(SelectionDAG &DAG, const SDLoc &SL,
 9482   SelectionDAG &DAG = DCI.DAG;
 9559   SelectionDAG &DAG = DCI.DAG;
 9590   SelectionDAG &DAG = DCI.DAG;
 9610   SelectionDAG &DAG = DCI.DAG;
 9652   SelectionDAG &DAG = DCI.DAG;
 9696   SelectionDAG &DAG = DCI.DAG;
 9771   SelectionDAG &DAG = DCI.DAG;
 9867   SelectionDAG &DAG = DCI.DAG;
10038     SelectionDAG &DAG = DCI.DAG;
10077                                           SelectionDAG &DAG) const {
10248                                                         SelectionDAG &DAG) const {
10294                                           SelectionDAG &DAG) const {
10464 static SDValue buildSMovImm32(SelectionDAG &DAG, const SDLoc &DL,
10470 MachineSDNode *SITargetLowering::wrapAddr64Rsrc(SelectionDAG &DAG,
10505 MachineSDNode *SITargetLowering::buildRSRC(SelectionDAG &DAG, const SDLoc &DL,
10730                                                      const SelectionDAG &DAG,
10894                                                     const SelectionDAG &DAG,
lib/Target/AMDGPU/SIISelLowering.h
   40   SDValue lowerKernArgParameterPtr(SelectionDAG &DAG, const SDLoc &SL,
   42   SDValue getImplicitArgPtr(SelectionDAG &DAG, const SDLoc &SL) const;
   43   SDValue lowerKernargMemParameter(SelectionDAG &DAG, EVT VT, EVT MemVT,
   48   SDValue lowerStackParameter(SelectionDAG &DAG, CCValAssign &VA,
   51   SDValue getPreloadedValue(SelectionDAG &DAG,
   57                              SelectionDAG &DAG) const override;
   58   SDValue lowerImplicitZextParam(SelectionDAG &DAG, SDValue Op,
   61                      SelectionDAG &DAG) const;
   63                        SDValue GLC, SDValue DLC, SelectionDAG &DAG) const;
   65   SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
   66   SDValue LowerINTRINSIC_W_CHAIN(SDValue Op, SelectionDAG &DAG) const;
   67   SDValue LowerINTRINSIC_VOID(SDValue Op, SelectionDAG &DAG) const;
   76                                                  SelectionDAG &DAG) const;
   79   SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG) const;
   80   SDValue LowerSELECT(SDValue Op, SelectionDAG &DAG) const;
   81   SDValue lowerFastUnsafeFDIV(SDValue Op, SelectionDAG &DAG) const;
   82   SDValue lowerFDIV_FAST(SDValue Op, SelectionDAG &DAG) const;
   83   SDValue LowerFDIV16(SDValue Op, SelectionDAG &DAG) const;
   84   SDValue LowerFDIV32(SDValue Op, SelectionDAG &DAG) const;
   85   SDValue LowerFDIV64(SDValue Op, SelectionDAG &DAG) const;
   86   SDValue LowerFDIV(SDValue Op, SelectionDAG &DAG) const;
   87   SDValue LowerINT_TO_FP(SDValue Op, SelectionDAG &DAG, bool Signed) const;
   88   SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
   89   SDValue LowerTrig(SDValue Op, SelectionDAG &DAG) const;
   90   SDValue LowerATOMIC_CMP_SWAP(SDValue Op, SelectionDAG &DAG) const;
   91   SDValue LowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
   92   SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
   94                               SelectionDAG &DAG, ArrayRef<SDValue> Ops,
   97   SDValue lowerIntrinsicLoad(MemSDNode *M, bool IsFormat, SelectionDAG &DAG,
  104                               MachineMemOperand *MMO, SelectionDAG &DAG) const;
  106   SDValue handleD16VData(SDValue VData, SelectionDAG &DAG) const;
  110   SDValue getFPExtOrFPTrunc(SelectionDAG &DAG,
  116     SelectionDAG &DAG, EVT VT, EVT MemVT, const SDLoc &SL, SDValue Val,
  120   SDValue lowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const;
  121   SDValue lowerFMINNUM_FMAXNUM(SDValue Op, SelectionDAG &DAG) const;
  124                              SelectionDAG &DAG) const;
  126   SDValue lowerADDRSPACECAST(SDValue Op, SelectionDAG &DAG) const;
  127   SDValue lowerINSERT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const;
  128   SDValue lowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  129   SDValue lowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  130   SDValue lowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
  131   SDValue lowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  132   SDValue lowerTRAP(SDValue Op, SelectionDAG &DAG) const;
  133   SDValue lowerDEBUGTRAP(SDValue Op, SelectionDAG &DAG) const;
  135   SDNode *adjustWritemask(MachineSDNode *&N, SelectionDAG &DAG) const;
  156   SDValue getCanonicalConstantFP(SelectionDAG &DAG, const SDLoc &SL, EVT VT,
  160   SDValue performFPMed3ImmCombine(SelectionDAG &DAG, const SDLoc &SL,
  162   SDValue performIntMed3ImmCombine(SelectionDAG &DAG, const SDLoc &SL,
  170   SDValue reassociateScalarOps(SDNode *N, SelectionDAG &DAG) const;
  171   unsigned getFusedOpcode(const SelectionDAG &DAG,
  208   unsigned setBufferOffsets(SDValue CombinedOffset, SelectionDAG &DAG,
  212   SDValue handleByteShortBufferLoads(SelectionDAG &DAG, EVT LoadVT, SDLoc DL,
  216   SDValue handleByteShortBufferStores(SelectionDAG &DAG, EVT VDataType,
  243                         const SelectionDAG &DAG) const override;
  293                                const SDLoc &DL, SelectionDAG &DAG,
  304                       SelectionDAG &DAG) const override;
  317                           const SDLoc &DL, SelectionDAG &DAG,
  327     const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG) const;
  352   SDValue splitUnaryVectorOp(SDValue Op, SelectionDAG &DAG) const;
  353   SDValue splitBinaryVectorOp(SDValue Op, SelectionDAG &DAG) const;
  354   SDValue splitTernaryVectorOp(SDValue Op, SelectionDAG &DAG) const;
  355   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  358                           SelectionDAG &DAG) const override;
  361   SDNode *PostISelFolding(MachineSDNode *N, SelectionDAG &DAG) const override;
  365   SDNode *legalizeTargetIndependentNode(SDNode *Node, SelectionDAG &DAG) const;
  367   MachineSDNode *wrapAddr64Rsrc(SelectionDAG &DAG, const SDLoc &DL,
  369   MachineSDNode *buildRSRC(SelectionDAG &DAG, const SDLoc &DL, SDValue Ptr,
  375   SDValue copyToM0(SelectionDAG &DAG, SDValue Chain, const SDLoc &DL,
  383                                      const SelectionDAG &DAG,
  389   bool isCanonicalized(SelectionDAG &DAG, SDValue Op,
  394                                     const SelectionDAG &DAG,
lib/Target/ARC/ARCISelLowering.cpp
   38                                SDLoc dl, SelectionDAG &DAG,
  163 SDValue ARCTargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
  178                                                   SelectionDAG &DAG) const {
  197 SDValue ARCTargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
  210 SDValue ARCTargetLowering::LowerJumpTable(SDValue Op, SelectionDAG &DAG) const {
  225   SelectionDAG &DAG = CLI.DAG;
  372                                SDLoc dl, SelectionDAG &DAG,
  434     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  448     const SmallVectorImpl<ISD::InputArg> &Ins, SDLoc dl, SelectionDAG &DAG,
  609                                const SDLoc &dl, SelectionDAG &DAG) const {
  709 SDValue ARCTargetLowering::LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const {
  724                                               SelectionDAG &DAG) const {
  733 static SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) {
  747 SDValue ARCTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
lib/Target/ARC/ARCISelLowering.h
   66   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   84                              SDLoc dl, SelectionDAG &DAG,
   87   SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
   88   SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
   89   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
   90   SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
   91   SDValue LowerSIGN_EXTEND_INREG(SDValue Op, SelectionDAG &DAG) const;
   92   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
   98                                const SDLoc &dl, SelectionDAG &DAG,
  107                       SelectionDAG &DAG) const override;
lib/Target/ARM/ARMISelDAGToDAG.cpp
  351   for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(),
 1460 static inline SDValue getAL(SelectionDAG *CurDAG, const SDLoc &dl) {
 4296                                              SelectionDAG *CurDAG,
lib/Target/ARM/ARMISelLowering.cpp
 1790 static bool isS16(const SDValue &Op, SelectionDAG &DAG) {
 1928     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals, bool isThisReturn,
 2008                                             SelectionDAG &DAG,
 2020 void ARMTargetLowering::PassF64ArgInRegs(const SDLoc &dl, SelectionDAG &DAG,
 2052   SelectionDAG &DAG                     = CLI.DAG;
 2556     const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG,
 2687                                     const SDLoc &DL, SelectionDAG &DAG) {
 2724                                const SDLoc &dl, SelectionDAG &DAG) const {
 2957 static SDValue LowerWRITE_REGISTER(SDValue Op, SelectionDAG &DAG) {
 2980                                              SelectionDAG &DAG) const {
 3022                                              SelectionDAG &DAG) const {
 3077                                                SelectionDAG &DAG) const {
 3122                                                 SelectionDAG &DAG) const {
 3178                                                  SelectionDAG &DAG) const {
 3219                                         SelectionDAG &DAG,
 3270 ARMTargetLowering::LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const {
 3318                                      const GlobalValue *GV, SelectionDAG &DAG,
 3424                                               SelectionDAG &DAG) const {
 3437                                                  SelectionDAG &DAG) const {
 3503                                                     SelectionDAG &DAG) const {
 3528                                                      SelectionDAG &DAG) const {
 3560 ARMTargetLowering::LowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const {
 3569 ARMTargetLowering::LowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const {
 3576                                                       SelectionDAG &DAG) const {
 3583     SDValue Op, SelectionDAG &DAG, const ARMSubtarget *Subtarget) const {
 3625 ARMTargetLowering::LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG,
 3754 static SDValue LowerATOMIC_FENCE(SDValue Op, SelectionDAG &DAG,
 3791 static SDValue LowerPREFETCH(SDValue Op, SelectionDAG &DAG,
 3818 static SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) {
 3835                                                 SelectionDAG &DAG,
 3877 int ARMTargetLowering::StoreByValRegs(CCState &CCInfo, SelectionDAG &DAG,
 3931 void ARMTargetLowering::VarArgStyleRegisters(CCState &CCInfo, SelectionDAG &DAG,
 3954     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 4182                                      SDValue &ARMcc, SelectionDAG &DAG,
 4323                                      SelectionDAG &DAG, const SDLoc &dl) const {
 4336 ARMTargetLowering::duplicateCmp(SDValue Cmp, SelectionDAG &DAG) const {
 4359 ARMTargetLowering::getARMXALUOOp(SDValue Op, SelectionDAG &DAG,
 4429 ARMTargetLowering::LowerSignedALUO(SDValue Op, SelectionDAG &DAG) const {
 4452                                               SelectionDAG &DAG) {
 4465                                               SelectionDAG &DAG) {
 4476                                              SelectionDAG &DAG) const {
 4512 static SDValue LowerSADDSUBSAT(SDValue Op, SelectionDAG &DAG,
 4541 SDValue ARMTargetLowering::LowerSELECT(SDValue Op, SelectionDAG &DAG) const {
 4662                                    SDValue Cmp, SelectionDAG &DAG) const {
 4879 SDValue ARMTargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
 5078 static SDValue bitcastf32Toi32(SDValue Op, SelectionDAG &DAG) {
 5090 static void expandf64Toi32(SDValue Op, SelectionDAG &DAG,
 5122 ARMTargetLowering::OptimizeVFPBrcond(SDValue Op, SelectionDAG &DAG) const {
 5172 SDValue ARMTargetLowering::LowerBRCOND(SDValue Op, SelectionDAG &DAG) const {
 5209 SDValue ARMTargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
 5292 SDValue ARMTargetLowering::LowerBR_JT(SDValue Op, SelectionDAG &DAG) const {
 5328 static SDValue LowerVectorFP_TO_INT(SDValue Op, SelectionDAG &DAG) {
 5359 SDValue ARMTargetLowering::LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const {
 5379 static SDValue LowerVectorINT_TO_FP(SDValue Op, SelectionDAG &DAG) {
 5424 SDValue ARMTargetLowering::LowerINT_TO_FP(SDValue Op, SelectionDAG &DAG) const {
 5444 SDValue ARMTargetLowering::LowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) const {
 5526 SDValue ARMTargetLowering::LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const{
 5550 SDValue ARMTargetLowering::LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const {
 5584                                 SelectionDAG &DAG) {
 5609                                                 SelectionDAG &DAG) {
 5656 static SDValue ExpandBITCAST(SDNode *N, SelectionDAG &DAG,
 5778 static SDValue getZeroVector(EVT VT, SelectionDAG &DAG, const SDLoc &dl) {
 5790                                                 SelectionDAG &DAG) const {
 5834                                                SelectionDAG &DAG) const {
 5871                                             SelectionDAG &DAG) const {
 5889 static SDValue LowerCTTZ(SDNode *N, SelectionDAG &DAG,
 5945 static SDValue LowerCTPOP(SDNode *N, SelectionDAG &DAG,
 6031 static SDValue LowerShift(SDNode *N, SelectionDAG &DAG,
 6074 static SDValue Expand64BitShift(SDNode *N, SelectionDAG &DAG,
 6156 static SDValue LowerVSETCC(SDValue Op, SelectionDAG &DAG,
 6336 static SDValue LowerSETCCCARRY(SDValue Op, SelectionDAG &DAG) {
 6370                                  unsigned SplatBitSize, SelectionDAG &DAG,
 6509 SDValue ARMTargetLowering::LowerConstantFP(SDValue Op, SelectionDAG &DAG,
 7014 static SDValue IsSingleInstrConstant(SDValue N, SelectionDAG &DAG,
 7031 static SDValue LowerBUILD_VECTOR_i1(SDValue Op, SelectionDAG &DAG,
 7093 SDValue ARMTargetLowering::LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG,
 7332                                               SelectionDAG &DAG) const {
 7615                                       SDValue RHS, SelectionDAG &DAG,
 7674                                        SelectionDAG &DAG) {
 7694                                                       SelectionDAG &DAG) {
 7724                                     SelectionDAG &DAG) {
 7758 static SDValue LowerVECTOR_SHUFFLE_i1(SDValue Op, SelectionDAG &DAG,
 7798 static SDValue LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG,
 7995 static SDValue LowerINSERT_VECTOR_ELT_i1(SDValue Op, SelectionDAG &DAG,
 8017                                                   SelectionDAG &DAG) const {
 8058 static SDValue LowerEXTRACT_VECTOR_ELT_i1(SDValue Op, SelectionDAG &DAG,
 8076 static SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG,
 8097 static SDValue LowerCONCAT_VECTORS_i1(SDValue Op, SelectionDAG &DAG,
 8149 static SDValue LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG,
 8174 static SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, SelectionDAG &DAG,
 8214 static bool isExtendedBUILD_VECTOR(SDNode *N, SelectionDAG &DAG,
 8267 static bool isSignExtended(SDNode *N, SelectionDAG &DAG) {
 8277 static bool isZeroExtended(SDNode *N, SelectionDAG &DAG) {
 8305 static SDValue AddRequiredExtensionForVMULL(SDValue N, SelectionDAG &DAG,
 8327 static SDValue SkipLoadExtensionForVMULL(LoadSDNode *LD, SelectionDAG& DAG) {
 8351 static SDValue SkipExtensionForVMULL(SDNode *N, SelectionDAG &DAG) {
 8401 static bool isAddSubSExt(SDNode *N, SelectionDAG &DAG) {
 8412 static bool isAddSubZExt(SDNode *N, SelectionDAG &DAG) {
 8423 static SDValue LowerMUL(SDValue Op, SelectionDAG &DAG) {
 8499                               SelectionDAG &DAG) {
 8530                                SelectionDAG &DAG) {
 8568 static SDValue LowerSDIV(SDValue Op, SelectionDAG &DAG,
 8604 static SDValue LowerUDIV(SDValue Op, SelectionDAG &DAG,
 8681 static SDValue LowerADDSUBCARRY(SDValue Op, SelectionDAG &DAG) {
 8725 SDValue ARMTargetLowering::LowerFSINCOS(SDValue Op, SelectionDAG &DAG) const {
 8800 SDValue ARMTargetLowering::LowerWindowsDIVLibCall(SDValue Op, SelectionDAG &DAG,
 8843                                  SelectionDAG &DAG,
 8880 SDValue ARMTargetLowering::LowerDIV_Windows(SDValue Op, SelectionDAG &DAG,
 8892 static SDValue WinDBZCheckDenominator(SelectionDAG &DAG, SDNode *N, SDValue InChain) {
 8906     SDValue Op, SelectionDAG &DAG, bool Signed,
 8928 static SDValue LowerPredicateLoad(SDValue Op, SelectionDAG &DAG) {
 8958 static SDValue LowerPredicateStore(SDValue Op, SelectionDAG &DAG) {
 8987 static SDValue LowerMLOAD(SDValue Op, SelectionDAG &DAG) {
 9018 static SDValue LowerAtomicLoadStore(SDValue Op, SelectionDAG &DAG) {
 9030                                     SelectionDAG &DAG,
 9051 static SDValue createGPRPairNode(SelectionDAG &DAG, SDValue V) {
 9071                                        SelectionDAG &DAG) {
 9097                           SelectionDAG &DAG) {
 9148 SDValue ARMTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 9243                                  SelectionDAG &DAG) {
 9277                                            SelectionDAG &DAG) const {
10837                                        SelectionDAG &DAG) {
10911   SelectionDAG &DAG = DCI.DAG;
10972   SelectionDAG &DAG = DCI.DAG;
11012   SelectionDAG &DAG = DCI.DAG;
11106   SelectionDAG &DAG = DCI.DAG;
11180   SelectionDAG &DAG = DCI.DAG;
11338   SelectionDAG &DAG = DCI.DAG;
11426     SelectionDAG &DAG = DCI.DAG;
11442 static SDValue PerformUMLALCombine(SDNode *N, SelectionDAG &DAG,
11467   SelectionDAG &DAG(DCI.DAG);
11501     SelectionDAG &DAG = DCI.DAG;
11529   SelectionDAG &DAG = DCI.DAG;
11726   SelectionDAG &DAG = DCI.DAG;
11797   SelectionDAG &DAG = DCI.DAG;
11825   SelectionDAG &DAG = DCI.DAG;
11947   SelectionDAG &DAG = DCI.DAG;
12016   SelectionDAG &DAG = DCI.DAG;
12096   SelectionDAG &DAG = DCI.DAG;
12128   SelectionDAG &DAG = DCI.DAG;
12323   SelectionDAG &DAG = DCI.DAG;
12420   SelectionDAG &DAG = DCI.DAG;
12589     SelectionDAG &DAG = DCI.DAG;
12616 static SDValue PerformVMOVDRRCombine(SDNode *N, SelectionDAG &DAG) {
12655   SelectionDAG &DAG = DCI.DAG;
12734   SelectionDAG &DAG = DCI.DAG;
12801   SelectionDAG &DAG = DCI.DAG;
12817 static SDValue PerformVECTOR_SHUFFLECombine(SDNode *N, SelectionDAG &DAG) {
12874   SelectionDAG &DAG = DCI.DAG;
13101   SelectionDAG &DAG = DCI.DAG;
13213   SelectionDAG &DAG = DCI.DAG;
13254                                              SelectionDAG &DAG) {
13339                                                  SelectionDAG &DAG) {
13415     SelectionDAG  &DAG = DCI.DAG;
13438     SelectionDAG &DAG = DCI.DAG;
13474 static SDValue PerformVCVTCombine(SDNode *N, SelectionDAG &DAG,
13531 static SDValue PerformVDIVCombine(SDNode *N, SelectionDAG &DAG,
13582 static SDValue PerformIntrinsicCombine(SDNode *N, SelectionDAG &DAG) {
13744   SelectionDAG &DAG = DCI.DAG;
13829 static SDValue PerformSplittingToWideningLoad(SDNode *N, SelectionDAG &DAG) {
13893 static SDValue PerformExtendCombine(SDNode *N, SelectionDAG &DAG,
13943 SDValue ARMTargetLowering::PerformCMOVToBFICombine(SDNode *CMOV, SelectionDAG &DAG) const {
14142   SelectionDAG &DAG = DCI.DAG;
14200 ARMTargetLowering::PerformBRCONDCombine(SDNode *N, SelectionDAG &DAG) const {
14240 ARMTargetLowering::PerformCMOVCombine(SDNode *N, SelectionDAG &DAG) const {
15126                                       SelectionDAG &DAG) {
15185                                      SelectionDAG &DAG) {
15210                                       SelectionDAG &DAG) {
15260                                              SelectionDAG &DAG) const {
15309                                                    SelectionDAG &DAG) const {
15381                                                       const SelectionDAG &DAG,
15754                                                      SelectionDAG &DAG) const {
15957 SDValue ARMTargetLowering::LowerDivRem(SDValue Op, SelectionDAG &DAG) const {
16017 SDValue ARMTargetLowering::LowerREM(SDNode *N, SelectionDAG &DAG) const {
16061 ARMTargetLowering::LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const {
16100 SDValue ARMTargetLowering::LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const {
16147 SDValue ARMTargetLowering::LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const {
16175                                  SelectionDAG &DAG) const {
16602 bool ARMTargetLowering::shouldExpandShift(SelectionDAG &DAG, SDNode *N) const {
lib/Target/ARM/ARMISelLowering.h
  304     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  309                             SelectionDAG &DAG) const override;
  331     SDValue PerformCMOVCombine(SDNode *N, SelectionDAG &DAG) const;
  332     SDValue PerformBRCONDCombine(SDNode *N, SelectionDAG &DAG) const;
  333     SDValue PerformCMOVToBFICombine(SDNode *N, SelectionDAG &DAG) const;
  401                                    SelectionDAG &DAG) const override;
  408                                     SelectionDAG &DAG) const override;
  412                                        const SelectionDAG &DAG,
  440                                       SelectionDAG &DAG) const override;
  579                           const SelectionDAG &DAG) const override {
  599     bool shouldExpandShift(SelectionDAG &DAG, SDNode *N) const override;
  657     std::pair<SDValue, SDValue> getARMXALUOOp(SDValue Op, SelectionDAG &DAG, SDValue &ARMcc) const;
  661     void PassF64ArgInRegs(const SDLoc &dl, SelectionDAG &DAG, SDValue Chain,
  668                                  SDValue &Root, SelectionDAG &DAG,
  676                              const SDLoc &dl, SelectionDAG &DAG,
  679     SDValue LowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const;
  680     SDValue LowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const;
  681     SDValue LowerEH_SJLJ_SETUP_DISPATCH(SDValue Op, SelectionDAG &DAG) const;
  682     SDValue LowerINTRINSIC_VOID(SDValue Op, SelectionDAG &DAG,
  684     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG,
  686     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  687     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  688     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  689     SDValue LowerGlobalAddressDarwin(SDValue Op, SelectionDAG &DAG) const;
  690     SDValue LowerGlobalAddressELF(SDValue Op, SelectionDAG &DAG) const;
  691     SDValue LowerGlobalAddressWindows(SDValue Op, SelectionDAG &DAG) const;
  692     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  694                                             SelectionDAG &DAG) const;
  696                                  SelectionDAG &DAG,
  698     SDValue LowerGlobalTLSAddressDarwin(SDValue Op, SelectionDAG &DAG) const;
  699     SDValue LowerGlobalTLSAddressWindows(SDValue Op, SelectionDAG &DAG) const;
  700     SDValue LowerGLOBAL_OFFSET_TABLE(SDValue Op, SelectionDAG &DAG) const;
  701     SDValue LowerBR_JT(SDValue Op, SelectionDAG &DAG) const;
  702     SDValue LowerSignedALUO(SDValue Op, SelectionDAG &DAG) const;
  703     SDValue LowerUnsignedALUO(SDValue Op, SelectionDAG &DAG) const;
  704     SDValue LowerSELECT(SDValue Op, SelectionDAG &DAG) const;
  705     SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
  706     SDValue LowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
  707     SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
  708     SDValue LowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) const;
  709     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  710     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  711     SDValue LowerShiftRightParts(SDValue Op, SelectionDAG &DAG) const;
  712     SDValue LowerShiftLeftParts(SDValue Op, SelectionDAG &DAG) const;
  713     SDValue LowerFLT_ROUNDS_(SDValue Op, SelectionDAG &DAG) const;
  714     SDValue LowerConstantFP(SDValue Op, SelectionDAG &DAG,
  716     SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG,
  718     SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  719     SDValue LowerFSINCOS(SDValue Op, SelectionDAG &DAG) const;
  720     SDValue LowerDivRem(SDValue Op, SelectionDAG &DAG) const;
  721     SDValue LowerDIV_Windows(SDValue Op, SelectionDAG &DAG, bool Signed) const;
  722     void ExpandDIV_Windows(SDValue Op, SelectionDAG &DAG, bool Signed,
  724     SDValue LowerWindowsDIVLibCall(SDValue Op, SelectionDAG &DAG, bool Signed,
  726     SDValue LowerREM(SDNode *N, SelectionDAG &DAG) const;
  727     SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
  728     SDValue LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const;
  729     SDValue LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const;
  730     SDValue LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const;
  731     SDValue LowerINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
  733                   SelectionDAG &DAG) const;
  738     SDValue BuildSDIVPow2(SDNode *N, const APInt &Divisor, SelectionDAG &DAG,
  752     SDValue ReconstructShuffle(SDValue Op, SelectionDAG &DAG) const;
  757                             const SDLoc &dl, SelectionDAG &DAG,
  774                          const SDLoc &dl, SelectionDAG &DAG,
  777     int StoreByValRegs(CCState &CCInfo, SelectionDAG &DAG, const SDLoc &dl,
  782     void VarArgStyleRegisters(CCState &CCInfo, SelectionDAG &DAG,
  801         const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG,
  812                         const SDLoc &dl, SelectionDAG &DAG) const override;
  824                     SelectionDAG &DAG) const;
  826                       SDValue &ARMcc, SelectionDAG &DAG, const SDLoc &dl) const;
  827     SDValue getVFPCmp(SDValue LHS, SDValue RHS, SelectionDAG &DAG,
  829     SDValue duplicateCmp(SDValue Cmp, SelectionDAG &DAG) const;
  831     SDValue OptimizeVFPBrcond(SDValue Op, SelectionDAG &DAG) const;
lib/Target/ARM/ARMSelectionDAGInfo.cpp
   24     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
  128     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
  242     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
  250     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
lib/Target/ARM/ARMSelectionDAGInfo.h
   40   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
   48   EmitTargetCodeForMemmove(SelectionDAG &DAG, const SDLoc &dl, SDValue Chain,
   55   SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &dl,
   60   SDValue EmitSpecializedLibcall(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/AVR/AVRISelLowering.cpp
  278 SDValue AVRTargetLowering::LowerShifts(SDValue Op, SelectionDAG &DAG) const {
  339 SDValue AVRTargetLowering::LowerDivRem(SDValue Op, SelectionDAG &DAG) const {
  399                                               SelectionDAG &DAG) const {
  412                                              SelectionDAG &DAG) const {
  444                                      SDValue &AVRcc, SelectionDAG &DAG,
  619 SDValue AVRTargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
  634 SDValue AVRTargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
  651 SDValue AVRTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
  668 SDValue AVRTargetLowering::LowerVASTART(SDValue Op, SelectionDAG &DAG) const {
  683 SDValue AVRTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
  717                                            SelectionDAG &DAG) const {
  775                                                   SelectionDAG &DAG) const {
  832                                                    SelectionDAG &DAG) const {
 1051     const SmallVectorImpl<ISD::InputArg> &Ins, const SDLoc &dl, SelectionDAG &DAG,
 1147   SelectionDAG &DAG = CLI.DAG;
 1313     const SmallVectorImpl<ISD::InputArg> &Ins, const SDLoc &dl, SelectionDAG &DAG,
 1374                                const SDLoc &dl, SelectionDAG &DAG) const {
 1905                                                      SelectionDAG &DAG) const {
lib/Target/AVR/AVRISelLowering.h
   86   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   89                           SelectionDAG &DAG) const override;
   97                                  SelectionDAG &DAG) const override;
  101                                   SelectionDAG &DAG) const override;
  126                                     SelectionDAG &DAG) const override;
  138                     SelectionDAG &DAG, SDLoc dl) const;
  139   SDValue LowerShifts(SDValue Op, SelectionDAG &DAG) const;
  140   SDValue LowerDivRem(SDValue Op, SelectionDAG &DAG) const;
  141   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  142   SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  143   SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
  144   SDValue LowerINLINEASM(SDValue Op, SelectionDAG &DAG) const;
  145   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
  146   SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
  147   SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  159                       SelectionDAG &DAG) const override;
  163                                const SDLoc &dl, SelectionDAG &DAG,
  170                           const SDLoc &dl, SelectionDAG &DAG,
lib/Target/BPF/BPFISelDAGToDAG.cpp
   77   void PreprocessLoad(SDNode *Node, SelectionDAG::allnodes_iterator &I);
   79   void PreprocessTrunc(SDNode *Node, SelectionDAG::allnodes_iterator &I);
  244                                      SelectionDAG::allnodes_iterator &I) {
  327   for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(),
  466                                       SelectionDAG::allnodes_iterator &I) {
lib/Target/BPF/BPFISelLowering.cpp
   39 static void fail(const SDLoc &DL, SelectionDAG &DAG, const Twine &Msg) {
   45 static void fail(const SDLoc &DL, SelectionDAG &DAG, const char *Msg,
  190 SDValue BPFTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
  209     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  277   SelectionDAG &DAG = CLI.DAG;
  411                                const SDLoc &DL, SelectionDAG &DAG) const {
  457     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  498 SDValue BPFTargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
  513 SDValue BPFTargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
  552                                               SelectionDAG &DAG) const {
lib/Target/BPF/BPFISelLowering.h
   40   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   72   SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
   73   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
   74   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
   80                           const SDLoc &DL, SelectionDAG &DAG,
   94                                const SDLoc &DL, SelectionDAG &DAG,
  100                       SelectionDAG &DAG) const override;
lib/Target/BPF/BPFSelectionDAGInfo.cpp
   21     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
lib/Target/BPF/BPFSelectionDAGInfo.h
   22   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
  978   SelectionDAG &DAG = *CurDAG;
 1026   SelectionDAG &DAG = *CurDAG;
 1090   SelectionDAG &DAG = *CurDAG;
 1155   SelectionDAG &DAG = *CurDAG;
lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
  655   void print(raw_ostream &OS, const SelectionDAG &G) const;
  667   LLVM_DUMP_METHOD void print(raw_ostream &OS, const SelectionDAG &G) const;
  704   void print(raw_ostream &OS, const SelectionDAG &G) const;
  709 void OpRef::print(raw_ostream &OS, const SelectionDAG &G) const {
  732 void NodeTemplate::print(raw_ostream &OS, const SelectionDAG &G) const {
  746 void ResultStack::print(raw_ostream &OS, const SelectionDAG &G) const {
  796 static const HexagonTargetLowering &getHexagonLowering(SelectionDAG &G) {
  799 static const HexagonSubtarget &getHexagonSubtarget(SelectionDAG &G) {
  807     SelectionDAG &DAG;
  811     HvxSelector(HexagonDAGToDAGISel &HS, SelectionDAG &G)
 1335   struct Deleter : public SelectionDAG::DAGNodeDeletedListener {
 1337     Deleter(SelectionDAG &D, T &C)
lib/Target/Hexagon/HexagonISelLowering.cpp
  155 HexagonTargetLowering::LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG)
  167                                          SelectionDAG &DAG, const SDLoc &dl) {
  196                                    const SDLoc &dl, SelectionDAG &DAG) const {
  263     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
  316   SelectionDAG &DAG                     = CLI.DAG;
  547       SelectionDAG &DAG) const {
  575 HexagonTargetLowering::LowerINLINEASM(SDValue Op, SelectionDAG &DAG) const {
  624                                              SelectionDAG &DAG) const {
  639                                                      SelectionDAG &DAG) const {
  647       SelectionDAG &DAG) const {
  662                                                SelectionDAG &DAG) const {
  694     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  799 HexagonTargetLowering::LowerVASTART(SDValue Op, SelectionDAG &DAG) const {
  810 SDValue HexagonTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
  870 HexagonTargetLowering::LowerVSELECT(SDValue Op, SelectionDAG &DAG) const {
  917 HexagonTargetLowering::LowerConstantPool(SDValue Op, SelectionDAG &DAG) const {
  953 HexagonTargetLowering::LowerJumpTable(SDValue Op, SelectionDAG &DAG) const {
  966 HexagonTargetLowering::LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const {
  992 HexagonTargetLowering::LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const {
 1009 HexagonTargetLowering::LowerATOMIC_FENCE(SDValue Op, SelectionDAG& DAG) const {
 1015 HexagonTargetLowering::LowerGLOBALADDRESS(SDValue Op, SelectionDAG &DAG) const {
 1049 HexagonTargetLowering::LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const {
 1065 HexagonTargetLowering::LowerGLOBAL_OFFSET_TABLE(SDValue Op, SelectionDAG &DAG)
 1074 HexagonTargetLowering::GetDynamicTLSAddr(SelectionDAG &DAG, SDValue Chain,
 1112       SelectionDAG &DAG) const {
 1154       SelectionDAG &DAG) const {
 1176       SelectionDAG &DAG) const {
 1213       SelectionDAG &DAG) const {
 1910 HexagonTargetLowering::LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG)
 2037 HexagonTargetLowering::getVectorShiftByInt(SDValue Op, SelectionDAG &DAG)
 2063 HexagonTargetLowering::LowerVECTOR_SHIFT(SDValue Op, SelectionDAG &DAG) const {
 2068 HexagonTargetLowering::LowerROTL(SDValue Op, SelectionDAG &DAG) const {
 2075 HexagonTargetLowering::LowerBITCAST(SDValue Op, SelectionDAG &DAG) const {
 2094       MVT VecTy, SelectionDAG &DAG,
 2124                                      MVT VecTy, SelectionDAG &DAG) const {
 2207                                      MVT VecTy, SelectionDAG &DAG) const {
 2269                                      SelectionDAG &DAG) const {
 2368                                     SelectionDAG &DAG) const {
 2433                                        SelectionDAG &DAG) const {
 2442                                          SelectionDAG &DAG) const {
 2450 HexagonTargetLowering::getZero(const SDLoc &dl, MVT Ty, SelectionDAG &DAG)
 2468 HexagonTargetLowering::LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const {
 2523                                            SelectionDAG &DAG) const {
 2588                                                SelectionDAG &DAG) const {
 2596                                               SelectionDAG &DAG) const {
 2603                                               SelectionDAG &DAG) const {
 2610                                              SelectionDAG &DAG) const {
 2630 HexagonTargetLowering::LowerLoad(SDValue Op, SelectionDAG &DAG) const {
 2640 HexagonTargetLowering::LowerStore(SDValue Op, SelectionDAG &DAG) const {
 2655 HexagonTargetLowering::LowerUnalignedLoad(SDValue Op, SelectionDAG &DAG)
 2741 HexagonTargetLowering::LowerUAddSubO(SDValue Op, SelectionDAG &DAG) const {
 2778 HexagonTargetLowering::LowerAddSubCarry(SDValue Op, SelectionDAG &DAG) const {
 2796 HexagonTargetLowering::LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const {
 2823 HexagonTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 2889                                              SelectionDAG &DAG) const {
 2902                                           SelectionDAG &DAG) const {
 2965                                                 SelectionDAG &DAG) const {
 3123                                  SelectionDAG& DAG) const {
lib/Target/Hexagon/HexagonISelLowering.h
  119         const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG& DAG) const;
  150     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  152                                SelectionDAG &DAG) const override;
  154                             SelectionDAG &DAG) const override;
  158     SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  159     SDValue LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG) const;
  160     SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  161     SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const;
  162     SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  163     SDValue LowerINSERT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const;
  164     SDValue LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
  165     SDValue LowerVECTOR_SHIFT(SDValue Op, SelectionDAG &DAG) const;
  166     SDValue LowerROTL(SDValue Op, SelectionDAG &DAG) const;
  167     SDValue LowerBITCAST(SDValue Op, SelectionDAG &DAG) const;
  168     SDValue LowerANY_EXTEND(SDValue Op, SelectionDAG &DAG) const;
  169     SDValue LowerSIGN_EXTEND(SDValue Op, SelectionDAG &DAG) const;
  170     SDValue LowerZERO_EXTEND(SDValue Op, SelectionDAG &DAG) const;
  171     SDValue LowerLoad(SDValue Op, SelectionDAG &DAG) const;
  172     SDValue LowerStore(SDValue Op, SelectionDAG &DAG) const;
  173     SDValue LowerUnalignedLoad(SDValue Op, SelectionDAG &DAG) const;
  174     SDValue LowerUAddSubO(SDValue Op, SelectionDAG &DAG) const;
  175     SDValue LowerAddSubCarry(SDValue Op, SelectionDAG &DAG) const;
  177     SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
  178     SDValue LowerINLINEASM(SDValue Op, SelectionDAG &DAG) const;
  179     SDValue LowerPREFETCH(SDValue Op, SelectionDAG &DAG) const;
  180     SDValue LowerREADCYCLECOUNTER(SDValue Op, SelectionDAG &DAG) const;
  181     SDValue LowerEH_LABEL(SDValue Op, SelectionDAG &DAG) const;
  182     SDValue LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const;
  186                          const SDLoc &dl, SelectionDAG &DAG,
  188     SDValue LowerGLOBALADDRESS(SDValue Op, SelectionDAG &DAG) const;
  189     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  190     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  192         SelectionDAG &DAG) const;
  194         SelectionDAG &DAG) const;
  196         SelectionDAG &DAG) const;
  197     SDValue GetDynamicTLSAddr(SelectionDAG &DAG, SDValue Chain,
  200     SDValue LowerGLOBAL_OFFSET_TABLE(SDValue Op, SelectionDAG &DAG) const;
  207                             const SDLoc &dl, SelectionDAG &DAG,
  212     SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
  213     SDValue LowerVSELECT(SDValue Op, SelectionDAG &DAG) const;
  214     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  215     SDValue LowerATOMIC_FENCE(SDValue Op, SelectionDAG& DAG) const;
  216     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  226                         const SDLoc &dl, SelectionDAG &DAG) const override;
  249     SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  250     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  251     SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
  264                                     SelectionDAG &DAG) const override;
  280     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  281     SDValue LowerINTRINSIC_VOID(SDValue Op, SelectionDAG &DAG) const;
  312     SDValue getPICJumpTableRelocBase(SDValue Table, SelectionDAG &DAG)
  341                                  SelectionDAG &DAG,
  344                           SelectionDAG &DAG) const;
  346                           SelectionDAG &DAG) const;
  348                           MVT ValTy, MVT ResTy, SelectionDAG &DAG) const;
  350                          const SDLoc &dl, MVT ValTy, SelectionDAG &DAG) const;
  352                             SelectionDAG &DAG) const;
  354                               SelectionDAG &DAG) const;
  355     SDValue getVectorShiftByInt(SDValue Op, SelectionDAG &DAG) const;
  363                      ArrayRef<SDValue> Ops, SelectionDAG &DAG) const {
  367     SDValue getZero(const SDLoc &dl, MVT Ty, SelectionDAG &DAG) const;
  373                    const SDLoc &dl, SelectionDAG &DAG) const;
  402                    SelectionDAG &DAG) const;
  403     VectorPair opSplit(SDValue Vec, const SDLoc &dl, SelectionDAG &DAG) const;
  404     SDValue opCastElem(SDValue Vec, MVT ElemTy, SelectionDAG &DAG) const;
  409                                SelectionDAG &DAG) const;
  410     SDValue getIndexInWord32(SDValue Idx, MVT ElemTy, SelectionDAG &DAG) const;
  412                            ArrayRef<int> Mask, SelectionDAG &DAG) const;
  415                               MVT VecTy, SelectionDAG &DAG) const;
  417                                MVT VecTy, SelectionDAG &DAG) const;
  420                                 SelectionDAG &DAG) const;
  422                                  MVT ResTy, SelectionDAG &DAG) const;
  424                                   MVT ResTy, SelectionDAG &DAG) const;
  426                                 const SDLoc &dl, SelectionDAG &DAG) const;
  428                                  const SDLoc &dl, SelectionDAG &DAG) const;
  430                                    MVT ResTy, SelectionDAG &DAG) const;
  432                                     MVT ResTy, SelectionDAG &DAG) const;
  434                                   const SDLoc &dl, SelectionDAG &DAG) const;
  436                                    const SDLoc &dl, SelectionDAG &DAG) const;
  438                                 bool ZeroExt, SelectionDAG &DAG) const;
  440     SDValue LowerHvxBuildVector(SDValue Op, SelectionDAG &DAG) const;
  441     SDValue LowerHvxConcatVectors(SDValue Op, SelectionDAG &DAG) const;
  442     SDValue LowerHvxExtractElement(SDValue Op, SelectionDAG &DAG) const;
  443     SDValue LowerHvxInsertElement(SDValue Op, SelectionDAG &DAG) const;
  444     SDValue LowerHvxExtractSubvector(SDValue Op, SelectionDAG &DAG) const;
  445     SDValue LowerHvxInsertSubvector(SDValue Op, SelectionDAG &DAG) const;
  447     SDValue LowerHvxAnyExt(SDValue Op, SelectionDAG &DAG) const;
  448     SDValue LowerHvxSignExt(SDValue Op, SelectionDAG &DAG) const;
  449     SDValue LowerHvxZeroExt(SDValue Op, SelectionDAG &DAG) const;
  450     SDValue LowerHvxCttz(SDValue Op, SelectionDAG &DAG) const;
  451     SDValue LowerHvxMul(SDValue Op, SelectionDAG &DAG) const;
  452     SDValue LowerHvxMulh(SDValue Op, SelectionDAG &DAG) const;
  453     SDValue LowerHvxSetCC(SDValue Op, SelectionDAG &DAG) const;
  454     SDValue LowerHvxExtend(SDValue Op, SelectionDAG &DAG) const;
  455     SDValue LowerHvxShift(SDValue Op, SelectionDAG &DAG) const;
  457     SDValue SplitHvxPairOp(SDValue Op, SelectionDAG &DAG) const;
  458     SDValue SplitHvxMemOp(SDValue Op, SelectionDAG &DAG) const;
  465     SDValue LowerHvxOperation(SDValue Op, SelectionDAG &DAG) const;
lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
  202                               const SDLoc &dl, SelectionDAG &DAG) const {
  244                                   SelectionDAG &DAG) const {
  253                               SelectionDAG &DAG) const {
  260                                SelectionDAG &DAG) const {
  281                                           SelectionDAG &DAG) const {
  297                                         SelectionDAG &DAG) const {
  314                                       SelectionDAG &DAG) const {
  345                                          SelectionDAG &DAG) const {
  496       unsigned BitBytes, bool ZeroFill, SelectionDAG &DAG) const {
  586                                           SelectionDAG &DAG) const {
  658       const SDLoc &dl, MVT ResTy, SelectionDAG &DAG) const {
  682       const SDLoc &dl, MVT ResTy, SelectionDAG &DAG) const {
  701       SDValue ValV, const SDLoc &dl, SelectionDAG &DAG) const {
  746       SDValue ValV, const SDLoc &dl, SelectionDAG &DAG) const {
  762       const SDLoc &dl, MVT ResTy, SelectionDAG &DAG) const {
  807       const SDLoc &dl, MVT ResTy, SelectionDAG &DAG) const {
  871       SDValue IdxV, const SDLoc &dl, SelectionDAG &DAG) const {
  958       SDValue IdxV, const SDLoc &dl, SelectionDAG &DAG) const {
 1003       MVT ResTy, bool ZeroExt, SelectionDAG &DAG) const {
 1019 HexagonTargetLowering::LowerHvxBuildVector(SDValue Op, SelectionDAG &DAG)
 1044 HexagonTargetLowering::LowerHvxConcatVectors(SDValue Op, SelectionDAG &DAG)
 1134 HexagonTargetLowering::LowerHvxExtractElement(SDValue Op, SelectionDAG &DAG)
 1148 HexagonTargetLowering::LowerHvxInsertElement(SDValue Op, SelectionDAG &DAG)
 1162 HexagonTargetLowering::LowerHvxExtractSubvector(SDValue Op, SelectionDAG &DAG)
 1181 HexagonTargetLowering::LowerHvxInsertSubvector(SDValue Op, SelectionDAG &DAG)
 1198 HexagonTargetLowering::LowerHvxAnyExt(SDValue Op, SelectionDAG &DAG) const {
 1212 HexagonTargetLowering::LowerHvxSignExt(SDValue Op, SelectionDAG &DAG) const {
 1222 HexagonTargetLowering::LowerHvxZeroExt(SDValue Op, SelectionDAG &DAG) const {
 1232 HexagonTargetLowering::LowerHvxCttz(SDValue Op, SelectionDAG &DAG) const {
 1267 HexagonTargetLowering::LowerHvxMul(SDValue Op, SelectionDAG &DAG) const {
 1321 HexagonTargetLowering::LowerHvxMulh(SDValue Op, SelectionDAG &DAG) const {
 1427 HexagonTargetLowering::LowerHvxExtend(SDValue Op, SelectionDAG &DAG) const {
 1435 HexagonTargetLowering::LowerHvxShift(SDValue Op, SelectionDAG &DAG) const {
 1442 HexagonTargetLowering::SplitHvxPairOp(SDValue Op, SelectionDAG &DAG) const {
 1475 HexagonTargetLowering::SplitHvxMemOp(SDValue Op, SelectionDAG &DAG) const {
 1518 HexagonTargetLowering::LowerHvxOperation(SDValue Op, SelectionDAG &DAG) const {
lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp
   20     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
lib/Target/Hexagon/HexagonSelectionDAGInfo.h
   24   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/Lanai/LanaiISelLowering.cpp
  176                                             SelectionDAG &DAG) const {
  286     SelectionDAG &DAG) const {
  399     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  411   SelectionDAG &DAG = CLI.DAG;
  440     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  538                                  const SDLoc &DL, SelectionDAG &DAG) const {
  601     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  777     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  802                                         SDValue &RHS, SelectionDAG &DAG) {
  866 SDValue LanaiTargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
  883 SDValue LanaiTargetLowering::LowerMUL(SDValue Op, SelectionDAG &DAG) const {
  969 SDValue LanaiTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
  984                                             SelectionDAG &DAG) const {
 1002 SDValue LanaiTargetLowering::LowerVASTART(SDValue Op, SelectionDAG &DAG) const {
 1018                                                      SelectionDAG &DAG) const {
 1053                                              SelectionDAG &DAG) const {
 1076                                             SelectionDAG &DAG) const {
 1126                                                SelectionDAG &DAG) const {
 1159                                                 SelectionDAG &DAG) const {
 1193                                                SelectionDAG &DAG) const {
 1209                                             SelectionDAG &DAG) const {
 1236                                             SelectionDAG &DAG) const {
 1285                                             SelectionDAG &DAG) const {
 1349                                        SelectionDAG &DAG) {
 1421   SelectionDAG &DAG = DCI.DAG;
 1490     const SelectionDAG &DAG, unsigned Depth) const {
lib/Target/Lanai/LanaiISelLowering.h
   72   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   78   SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
   79   SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
   80   SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
   81   SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
   82   SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
   83   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
   84   SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
   85   SDValue LowerMUL(SDValue Op, SelectionDAG &DAG) const;
   86   SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
   87   SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
   88   SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
   89   SDValue LowerSHL_PARTS(SDValue Op, SelectionDAG &DAG) const;
   90   SDValue LowerSRL_PARTS(SDValue Op, SelectionDAG &DAG) const;
   91   SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  103                                     SelectionDAG &DAG) const override;
  109                                      const SelectionDAG &DAG,
  119                          const SDLoc &dl, SelectionDAG &DAG,
  125                             const SDLoc &DL, SelectionDAG &DAG,
  131                           const SDLoc &DL, SelectionDAG &DAG,
  140                                const SDLoc &DL, SelectionDAG &DAG,
  146                       SelectionDAG &DAG) const override;
lib/Target/Lanai/LanaiSelectionDAGInfo.cpp
   22     SelectionDAG & /*DAG*/, const SDLoc & /*dl*/, SDValue /*Chain*/,
lib/Target/Lanai/LanaiSelectionDAGInfo.h
   25   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/MSP430/MSP430ISelLowering.cpp
  335                                              SelectionDAG &DAG) const {
  554     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  572   SelectionDAG &DAG                     = CLI.DAG;
  605     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  723                                   const SDLoc &dl, SelectionDAG &DAG) const {
  793     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  923     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  944                                           SelectionDAG &DAG) const {
  997                                                  SelectionDAG &DAG) const {
 1008                                                   SelectionDAG &DAG) const {
 1018                                                 SelectionDAG &DAG) const {
 1028                        ISD::CondCode CC, const SDLoc &dl, SelectionDAG &DAG) {
 1113 SDValue MSP430TargetLowering::LowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
 1128 SDValue MSP430TargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
 1205                                              SelectionDAG &DAG) const {
 1223                                                SelectionDAG &DAG) const {
 1236 MSP430TargetLowering::getReturnAddressFrameIndex(SelectionDAG &DAG) const {
 1254                                               SelectionDAG &DAG) const {
 1281                                              SelectionDAG &DAG) const {
 1297                                            SelectionDAG &DAG) const {
 1313                                              SelectionDAG &DAG) const {
 1327                                                       SelectionDAG &DAG) const {
lib/Target/MSP430/MSP430ISelLowering.h
   83     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   89     SDValue LowerShifts(SDValue Op, SelectionDAG &DAG) const;
   90     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
   91     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
   92     SDValue LowerExternalSymbol(SDValue Op, SelectionDAG &DAG) const;
   93     SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
   94     SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
   95     SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
   96     SDValue LowerSIGN_EXTEND(SDValue Op, SelectionDAG &DAG) const;
   97     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
   98     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
   99     SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  100     SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
  101     SDValue getReturnAddressFrameIndex(SelectionDAG &DAG) const;
  142                            const SDLoc &dl, SelectionDAG &DAG,
  148                               const SDLoc &dl, SelectionDAG &DAG,
  154                             const SDLoc &dl, SelectionDAG &DAG,
  160                          const SDLoc &dl, SelectionDAG &DAG,
  175                         const SDLoc &dl, SelectionDAG &DAG) const override;
  181                                     SelectionDAG &DAG) const override;
lib/Target/Mips/Mips16ISelLowering.cpp
  417   SelectionDAG &DAG = CLI.DAG;
lib/Target/Mips/MipsISelLowering.cpp
  146 SDValue MipsTargetLowering::getGlobalReg(SelectionDAG &DAG, EVT Ty) const {
  152                                           SelectionDAG &DAG,
  158                                           SelectionDAG &DAG,
  164                                           SelectionDAG &DAG,
  170                                           SelectionDAG &DAG,
  176                                           SelectionDAG &DAG,
  567 static SDValue performDivRemCombine(SDNode *N, SelectionDAG &DAG,
  644 static SDValue createFPCmp(SelectionDAG &DAG, const SDValue &Op) {
  666 static SDValue createCMovFP(SelectionDAG &DAG, SDValue Cond, SDValue True,
  676 static SDValue performSELECTCombine(SDNode *N, SelectionDAG &DAG,
  755 static SDValue performCMovFPCombine(SDNode *N, SelectionDAG &DAG,
  782 static SDValue performANDCombine(SDNode *N, SelectionDAG &DAG,
  864 static SDValue performORCombine(SDNode *N, SelectionDAG &DAG,
  962 static SDValue performMADD_MSUBCombine(SDNode *ROOTNode, SelectionDAG &CurDAG,
 1055 static SDValue performSUBCombine(SDNode *N, SelectionDAG &DAG,
 1070 static SDValue performADDCombine(SDNode *N, SelectionDAG &DAG,
 1102 static SDValue performSHLCombine(SDNode *N, SelectionDAG &DAG,
 1155   SelectionDAG &DAG = DCI.DAG;
 1201                                           SelectionDAG &DAG) const {
 1212                                        SelectionDAG &DAG) const {
 1217 LowerOperation(SDValue Op, SelectionDAG &DAG) const
 1901 SDValue MipsTargetLowering::lowerBRCOND(SDValue Op, SelectionDAG &DAG) const {
 1926 lowerSELECT(SDValue Op, SelectionDAG &DAG) const
 1939 SDValue MipsTargetLowering::lowerSETCC(SDValue Op, SelectionDAG &DAG) const {
 1954                                                SelectionDAG &DAG) const {
 2001                                               SelectionDAG &DAG) const {
 2013 lowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const
 2095 lowerJumpTable(SDValue Op, SelectionDAG &DAG) const
 2108 lowerConstantPool(SDValue Op, SelectionDAG &DAG) const
 2130 SDValue MipsTargetLowering::lowerVASTART(SDValue Op, SelectionDAG &DAG) const {
 2145 SDValue MipsTargetLowering::lowerVAARG(SDValue Op, SelectionDAG &DAG) const {
 2203 static SDValue lowerFCOPYSIGN32(SDValue Op, SelectionDAG &DAG,
 2250 static SDValue lowerFCOPYSIGN64(SDValue Op, SelectionDAG &DAG,
 2301 MipsTargetLowering::lowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) const {
 2308 static SDValue lowerFABS32(SDValue Op, SelectionDAG &DAG,
 2345 static SDValue lowerFABS64(SDValue Op, SelectionDAG &DAG,
 2366 SDValue MipsTargetLowering::lowerFABS(SDValue Op, SelectionDAG &DAG) const {
 2374 lowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const {
 2392                                             SelectionDAG &DAG) const {
 2418 SDValue MipsTargetLowering::lowerEH_RETURN(SDValue Op, SelectionDAG &DAG)
 2443                                               SelectionDAG &DAG) const {
 2453                                                 SelectionDAG &DAG) const {
 2483 SDValue MipsTargetLowering::lowerShiftRightParts(SDValue Op, SelectionDAG &DAG,
 2534 static SDValue createLoadLR(unsigned Opc, SelectionDAG &DAG, LoadSDNode *LD,
 2552 SDValue MipsTargetLowering::lowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 2616 static SDValue createStoreLR(unsigned Opc, SelectionDAG &DAG, StoreSDNode *SD,
 2633 static SDValue lowerUnalignedIntStore(StoreSDNode *SD, SelectionDAG &DAG,
 2662 static SDValue lowerFP_TO_SINT_STORE(StoreSDNode *SD, SelectionDAG &DAG,
 2678 SDValue MipsTargetLowering::lowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 2692                                               SelectionDAG &DAG) const {
 2703                                             SelectionDAG &DAG) const {
 2890                                            SelectionDAG &DAG) const {
 3018   SelectionDAG &DAG                     = CLI.DAG;
 3340     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 3406                                       SelectionDAG &DAG) {
 3467     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 3639                                          SelectionDAG &DAG) const {
 3653                                 const SDLoc &DL, SelectionDAG &DAG) const {
 4023                                                      SelectionDAG &DAG) const {
 4175     SelectionDAG &DAG, const ISD::ArgFlagsTy &Flags,
 4230     MachineFrameInfo &MFI, SelectionDAG &DAG, SDValue Arg, unsigned FirstReg,
 4324                                          SelectionDAG &DAG,
lib/Target/Mips/MipsISelLowering.h
  321                                SelectionDAG &DAG) const override;
  324     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  330                             SelectionDAG &DAG) const override;
  385     SDValue getGlobalReg(SelectionDAG &DAG, EVT Ty) const;
  392     SDValue getAddrLocal(NodeTy *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG,
  411     SDValue getAddrGlobal(NodeTy *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG,
  425                                   SelectionDAG &DAG, unsigned HiFlag,
  444                           SelectionDAG &DAG) const {
  461                           SelectionDAG &DAG) const {
  488                          SelectionDAG &DAG, bool IsN64) const {
  507     SDValue lowerLOAD(SDValue Op, SelectionDAG &DAG) const;
  508     SDValue lowerSTORE(SDValue Op, SelectionDAG &DAG) const;
  517     SDValue getTargetNode(GlobalAddressSDNode *N, EVT Ty, SelectionDAG &DAG,
  521     SDValue getTargetNode(ExternalSymbolSDNode *N, EVT Ty, SelectionDAG &DAG,
  525     SDValue getTargetNode(BlockAddressSDNode *N, EVT Ty, SelectionDAG &DAG,
  529     SDValue getTargetNode(JumpTableSDNode *N, EVT Ty, SelectionDAG &DAG,
  533     SDValue getTargetNode(ConstantPoolSDNode *N, EVT Ty, SelectionDAG &DAG,
  540                             const SDLoc &dl, SelectionDAG &DAG,
  545     SDValue lowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
  546     SDValue lowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  547     SDValue lowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  548     SDValue lowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  549     SDValue lowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  550     SDValue lowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
  551     SDValue lowerSELECT(SDValue Op, SelectionDAG &DAG) const;
  552     SDValue lowerSETCC(SDValue Op, SelectionDAG &DAG) const;
  553     SDValue lowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  554     SDValue lowerVAARG(SDValue Op, SelectionDAG &DAG) const;
  555     SDValue lowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) const;
  556     SDValue lowerFABS(SDValue Op, SelectionDAG &DAG) const;
  557     SDValue lowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  558     SDValue lowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  559     SDValue lowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const;
  560     SDValue lowerATOMIC_FENCE(SDValue Op, SelectionDAG& DAG) const;
  561     SDValue lowerShiftLeftParts(SDValue Op, SelectionDAG& DAG) const;
  562     SDValue lowerShiftRightParts(SDValue Op, SelectionDAG& DAG,
  564     SDValue lowerEH_DWARF_CFA(SDValue Op, SelectionDAG &DAG) const;
  565     SDValue lowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG) const;
  578                        std::vector<SDValue> &OutChains, SelectionDAG &DAG,
  589                       MachineFrameInfo &MFI, SelectionDAG &DAG, SDValue Arg,
  598                          const SDLoc &DL, SelectionDAG &DAG,
  604                          const SDLoc &dl, SelectionDAG &DAG,
  609                            SelectionDAG &DAG) const;
  622                         const SDLoc &dl, SelectionDAG &DAG) const override;
  625                                  const SDLoc &DL, SelectionDAG &DAG) const;
  653                                       SelectionDAG &DAG) const override;
lib/Target/Mips/MipsSEISelLowering.cpp
  408 SDValue MipsSETargetLowering::lowerSELECT(SDValue Op, SelectionDAG &DAG) const {
  449                                              SelectionDAG &DAG) const {
  481 static SDValue performANDCombine(SDNode *N, SelectionDAG &DAG,
  596 static SDValue performORCombine(SDNode *N, SelectionDAG &DAG,
  717                                                SelectionDAG &DAG,
  793                             EVT ShiftTy, SelectionDAG &DAG) {
  828 static SDValue performMULCombine(SDNode *N, SelectionDAG &DAG,
  845                                       SelectionDAG &DAG,
  869 static SDValue performSHLCombine(SDNode *N, SelectionDAG &DAG,
  892 static SDValue performSRACombine(SDNode *N, SelectionDAG &DAG,
  938 static SDValue performSRLCombine(SDNode *N, SelectionDAG &DAG,
  967 static SDValue performSETCCCombine(SDNode *N, SelectionDAG &DAG) {
  980 static SDValue performVSELECTCombine(SDNode *N, SelectionDAG &DAG) {
  997 static SDValue performXORCombine(SDNode *N, SelectionDAG &DAG,
 1026   SelectionDAG &DAG = DCI.DAG;
 1173 SDValue MipsSETargetLowering::lowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 1202 SDValue MipsSETargetLowering::lowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 1233                                            SelectionDAG &DAG) const {
 1264                                           SelectionDAG &DAG) const {
 1286 static SDValue initAccumulator(SDValue In, const SDLoc &DL, SelectionDAG &DAG) {
 1294 static SDValue extractLOHI(SDValue Op, const SDLoc &DL, SelectionDAG &DAG) {
 1312 static SDValue lowerDSPIntr(SDValue Op, SelectionDAG &DAG, unsigned Opc) {
 1361 static SDValue lowerMSACopyIntr(SDValue Op, SelectionDAG &DAG, unsigned Opc) {
 1374 static SDValue lowerMSASplatZExt(SDValue Op, unsigned OpNr, SelectionDAG &DAG) {
 1418 static SDValue lowerMSASplatImm(SDValue Op, unsigned ImmOp, SelectionDAG &DAG,
 1428                                    bool BigEndian, SelectionDAG &DAG) {
 1463 static SDValue lowerMSABinaryBitImmIntr(SDValue Op, SelectionDAG &DAG,
 1507 static SDValue truncateVecElts(SDValue Op, SelectionDAG &DAG) {
 1520 static SDValue lowerMSABitClear(SDValue Op, SelectionDAG &DAG) {
 1530 static SDValue lowerMSABitClearImm(SDValue Op, SelectionDAG &DAG) {
 1541                                                       SelectionDAG &DAG) const {
 2293 static SDValue lowerMSALoadIntr(SDValue Op, SelectionDAG &DAG, unsigned Intr,
 2314                                                      SelectionDAG &DAG) const {
 2367 static SDValue lowerMSAStoreIntr(SDValue Op, SelectionDAG &DAG, unsigned Intr,
 2389                                                   SelectionDAG &DAG) const {
 2410 lowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const {
 2460                                                 SelectionDAG &DAG) const {
 2985                                                   SelectionDAG &DAG) const {
lib/Target/Mips/MipsSEISelLowering.h
   48     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   74     SDValue lowerLOAD(SDValue Op, SelectionDAG &DAG) const;
   75     SDValue lowerSTORE(SDValue Op, SelectionDAG &DAG) const;
   76     SDValue lowerBITCAST(SDValue Op, SelectionDAG &DAG) const;
   79                         SelectionDAG &DAG) const;
   81     SDValue lowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
   82     SDValue lowerINTRINSIC_W_CHAIN(SDValue Op, SelectionDAG &DAG) const;
   83     SDValue lowerINTRINSIC_VOID(SDValue Op, SelectionDAG &DAG) const;
   84     SDValue lowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
   85     SDValue lowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
   88     SDValue lowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
   89     SDValue lowerSELECT(SDValue Op, SelectionDAG &DAG) const;
lib/Target/NVPTX/NVPTXISelLowering.cpp
 1200 SDValue NVPTXTargetLowering::getSqrtEstimate(SDValue Operand, SelectionDAG &DAG,
 1250 NVPTXTargetLowering::LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const {
 1424   SelectionDAG &DAG = CLI.DAG;
 1889 NVPTXTargetLowering::LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG) const {
 1918                                                SelectionDAG &DAG) const {
 1935                                                      SelectionDAG &DAG) const {
 1962                                                   SelectionDAG &DAG) const {
 2023                                                  SelectionDAG &DAG) const {
 2077 SDValue NVPTXTargetLowering::LowerFROUND(SDValue Op, SelectionDAG &DAG) const {
 2097                                            SelectionDAG &DAG) const {
 2138                                            SelectionDAG &DAG) const {
 2172 NVPTXTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 2208 SDValue NVPTXTargetLowering::LowerSelect(SDValue Op, SelectionDAG &DAG) const {
 2224 SDValue NVPTXTargetLowering::LowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 2248 SDValue NVPTXTargetLowering::LowerLOADi1(SDValue Op, SelectionDAG &DAG) const {
 2266 SDValue NVPTXTargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 2287 NVPTXTargetLowering::LowerSTOREVector(SDValue Op, SelectionDAG &DAG) const {
 2410 SDValue NVPTXTargetLowering::LowerSTOREi1(SDValue Op, SelectionDAG &DAG) const {
 2426 NVPTXTargetLowering::getParamSymbol(SelectionDAG &DAG, int idx, EVT v) const {
 2465     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 2664                                  const SDLoc &dl, SelectionDAG &DAG) const {
 2746     SelectionDAG &DAG) const {
 4346   SelectionDAG  &DAG = DCI.DAG;
 4548   SelectionDAG &DAG = DCI.DAG;
 4779 static void ReplaceLoadVector(SDNode *N, SelectionDAG &DAG,
 4909 static void ReplaceINTRINSIC_W_CHAIN(SDNode *N, SelectionDAG &DAG,
 5048     SDNode *N, SmallVectorImpl<SDValue> &Results, SelectionDAG &DAG) const {
lib/Target/NVPTX/NVPTXISelLowering.h
  444   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  446   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  486                                const SDLoc &dl, SelectionDAG &DAG,
  500                       SelectionDAG &DAG) const override;
  504                                     SelectionDAG &DAG) const override;
  532   SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
  553   SDValue getParamSymbol(SelectionDAG &DAG, int idx, EVT) const;
  555   SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  556   SDValue LowerCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG) const;
  557   SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  559   SDValue LowerFROUND(SDValue Op, SelectionDAG &DAG) const;
  560   SDValue LowerFROUND32(SDValue Op, SelectionDAG &DAG) const;
  561   SDValue LowerFROUND64(SDValue Op, SelectionDAG &DAG) const;
  563   SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG) const;
  564   SDValue LowerLOADi1(SDValue Op, SelectionDAG &DAG) const;
  566   SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
  567   SDValue LowerSTOREi1(SDValue Op, SelectionDAG &DAG) const;
  568   SDValue LowerSTOREVector(SDValue Op, SelectionDAG &DAG) const;
  570   SDValue LowerShiftRightParts(SDValue Op, SelectionDAG &DAG) const;
  571   SDValue LowerShiftLeftParts(SDValue Op, SelectionDAG &DAG) const;
  573   SDValue LowerSelect(SDValue Op, SelectionDAG &DAG) const;
  576                           SelectionDAG &DAG) const override;
lib/Target/PowerPC/PPCISelDAGToDAG.cpp
  887 static SDNode *selectI64ImmDirect(SelectionDAG *CurDAG, const SDLoc &dl,
  972 static SDNode *selectI64Imm(SelectionDAG *CurDAG, const SDLoc &dl,
 1032 static unsigned allUsesTruncate(SelectionDAG *CurDAG, SDNode *N) {
 1089 static SDNode *selectI64Imm(SelectionDAG *CurDAG, SDNode *N) {
 2396   SelectionDAG *CurDAG;
 2399   BitPermutationSelector(SelectionDAG *DAG)
 2452   SelectionDAG *CurDAG;
 2495   IntegerCompareEliminator(SelectionDAG *DAG,
 3552 static bool allUsesExtend(SDValue Compare, SelectionDAG *CurDAG) {
 4207 static bool mayUseP9Setb(SDNode *N, const ISD::CondCode &CC, SelectionDAG *DAG,
 5525   SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_end();
 6217   SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_end();
 6374   SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_end();
lib/Target/PowerPC/PPCISelLowering.cpp
  127 static SDValue widenVec(SelectionDAG &DAG, SDValue Vec, const SDLoc &dl);
 1469                                SelectionDAG &DAG) {
 1500                                SelectionDAG &DAG) {
 1537                                SelectionDAG &DAG) {
 1605                              unsigned ShuffleKind, SelectionDAG &DAG) {
 1630                              unsigned ShuffleKind, SelectionDAG &DAG) {
 1720                               unsigned ShuffleKind, SelectionDAG &DAG) {
 1749                              SelectionDAG &DAG) {
 2091                                          SelectionDAG &DAG) {
 2104 SDValue PPC::get_VSPLTI_elt(SDNode *N, unsigned ByteSize, SelectionDAG &DAG) {
 2261                                                SelectionDAG &DAG) const {
 2282                                             SDValue &Index, SelectionDAG &DAG,
 2332 static void fixupFuncForFI(SelectionDAG &DAG, int FrameIdx, EVT VT) {
 2370                                             SelectionDAG &DAG,
 2469                                                 SelectionDAG &DAG) const {
 2546                                                   SelectionDAG &DAG) const {
 2663                              SelectionDAG &DAG) {
 2686 static void setUsesTOCBasePtr(SelectionDAG &DAG) {
 2690 SDValue PPCTargetLowering::getTOCEntry(SelectionDAG &DAG, const SDLoc &dl,
 2706                                              SelectionDAG &DAG) const {
 2753                                                     SelectionDAG &DAG) const {
 2783 SDValue PPCTargetLowering::LowerJumpTable(SDValue Op, SelectionDAG &DAG) const {
 2811                                              SelectionDAG &DAG) const {
 2839                                               SelectionDAG &DAG) const {
 2936                                               SelectionDAG &DAG) const {
 2975 SDValue PPCTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
 3029 SDValue PPCTargetLowering::LowerVAARG(SDValue Op, SelectionDAG &DAG) const {
 3128 SDValue PPCTargetLowering::LowerVACOPY(SDValue Op, SelectionDAG &DAG) const {
 3140                                                   SelectionDAG &DAG) const {
 3145                                                 SelectionDAG &DAG) const {
 3180 SDValue PPCTargetLowering::LowerVASTART(SDValue Op, SelectionDAG &DAG) const {
 3405     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 3422     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 3677                                              EVT ObjectVT, SelectionDAG &DAG,
 3693     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 4105     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 4464 static int CalculateTailCallSPDiff(SelectionDAG& DAG, bool isTailCall,
 4636                                     SelectionDAG& DAG) const {
 4714                                                      SelectionDAG& DAG) const {
 4747 static SDNode *isBLACompatibleAddress(SDValue Op, SelectionDAG &DAG) {
 4777     SelectionDAG &DAG, SDValue Chain,
 4793 static SDValue EmitTailCallStoreFPAndRetAddr(SelectionDAG &DAG, SDValue Chain,
 4829 CalculateTailCallArgDest(SelectionDAG &DAG, MachineFunction &MF, bool isPPC64,
 4848     SelectionDAG &DAG, int SPDiff, SDValue Chain, SDValue &LROpOut,
 4876                                          SelectionDAG &DAG, const SDLoc &dl) {
 4886     SelectionDAG &DAG, MachineFunction &MF, SDValue Chain, SDValue Arg,
 4909 PrepareTailCall(SelectionDAG &DAG, SDValue &InFlag, SDValue &Chain,
 4947 PrepareCall(SelectionDAG &DAG, SDValue &Callee, SDValue &InFlag, SDValue &Chain,
 5156     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 5219     bool isPatchPoint, bool hasNest, SelectionDAG &DAG,
 5338   SelectionDAG &DAG                     = CLI.DAG;
 5417     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 5651     SelectionDAG &DAG, const SDLoc &dl) const {
 5670     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 6331     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 6787     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 6891                                const SDLoc &dl, SelectionDAG &DAG) const {
 6972                                                 SelectionDAG &DAG) const {
 6988                                              SelectionDAG &DAG) const {
 7015 SDValue PPCTargetLowering::getReturnAddrFrameIndex(SelectionDAG &DAG) const {
 7038 PPCTargetLowering::getFramePointerFrameIndex(SelectionDAG & DAG) const {
 7061                                                    SelectionDAG &DAG) const {
 7081                                                      SelectionDAG &DAG) const {
 7092                                                SelectionDAG &DAG) const {
 7100                                                 SelectionDAG &DAG) const {
 7106 SDValue PPCTargetLowering::LowerLOAD(SDValue Op, SelectionDAG &DAG) const {
 7131 SDValue PPCTargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
 7154 SDValue PPCTargetLowering::LowerTRUNCATE(SDValue Op, SelectionDAG &DAG) const {
 7164                                                SelectionDAG &DAG) const {
 7220 SDValue PPCTargetLowering::LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const {
 7346                                                SelectionDAG &DAG,
 7409                                                     SelectionDAG &DAG,
 7440 SDValue PPCTargetLowering::LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG,
 7507                                             SelectionDAG &DAG,
 7553                                         SelectionDAG &DAG) const {
 7602                                                     SelectionDAG &DAG,
 7630 static SDValue widenVec(SelectionDAG &DAG, SDValue Vec, const SDLoc &dl) {
 7650 SDValue PPCTargetLowering::LowerINT_TO_FPVector(SDValue Op, SelectionDAG &DAG,
 7698                                           SelectionDAG &DAG) const {
 7955                                             SelectionDAG &DAG) const {
 8017 SDValue PPCTargetLowering::LowerSHL_PARTS(SDValue Op, SelectionDAG &DAG) const {
 8046 SDValue PPCTargetLowering::LowerSRL_PARTS(SDValue Op, SelectionDAG &DAG) const {
 8075 SDValue PPCTargetLowering::LowerSRA_PARTS(SDValue Op, SelectionDAG &DAG) const {
 8111                            SelectionDAG &DAG, const SDLoc &dl) {
 8132 static SDValue BuildIntrinsicOp(unsigned IID, SDValue Op, SelectionDAG &DAG,
 8142                                 SelectionDAG &DAG, const SDLoc &dl,
 8152                                 SDValue Op2, SelectionDAG &DAG, const SDLoc &dl,
 8162                            SelectionDAG &DAG, const SDLoc &dl) {
 8228 SDValue PPCTargetLowering::LowerBITCAST(SDValue Op, SelectionDAG &DAG) const {
 8262                                              SelectionDAG &DAG) const {
 8589                                       SDValue RHS, SelectionDAG &DAG,
 8667                                            SelectionDAG &DAG) const {
 8768                                            SelectionDAG &DAG) const {
 8881                                                SelectionDAG &DAG) const {
 9443                                                    SelectionDAG &DAG) const {
 9520                                                SelectionDAG &DAG) const {
 9541 SDValue PPCTargetLowering::LowerREM(SDValue Op, SelectionDAG &DAG) const {
 9554 SDValue PPCTargetLowering::LowerBSWAP(SDValue Op, SelectionDAG &DAG) const {
 9573                                                 SelectionDAG &DAG) const {
 9607                                                  SelectionDAG &DAG) const {
 9623                                                   SelectionDAG &DAG) const {
 9652                                                    SelectionDAG &DAG) const {
 9712                                            SelectionDAG &DAG) const {
 9800                                             SelectionDAG &DAG) const {
 9925 SDValue PPCTargetLowering::LowerMUL(SDValue Op, SelectionDAG &DAG) const {
 9996 SDValue PPCTargetLowering::LowerABS(SDValue Op, SelectionDAG &DAG) const {
10035 SDValue PPCTargetLowering::LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const {
10112 SDValue PPCTargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
10188                                            SelectionDAG &DAG) const {
11645 SDValue PPCTargetLowering::getSqrtEstimate(SDValue Operand, SelectionDAG &DAG,
11667 SDValue PPCTargetLowering::getRecipEstimate(SDValue Operand, SelectionDAG &DAG,
11710                                      int64_t& Offset, SelectionDAG &DAG) {
11723                             SelectionDAG &DAG) {
11763                             SelectionDAG &DAG) {
11874 static bool findConsecutiveLoad(LoadSDNode *LD, SelectionDAG &DAG) {
11942                                      bool Swap, SDLoc &DL, SelectionDAG &DAG) {
11977   SelectionDAG &DAG = DCI.DAG;
12017   SelectionDAG &DAG = DCI.DAG;
12298   SelectionDAG &DAG = DCI.DAG;
12599       SelectionDAG &DAG = DCI.DAG;
12631   SelectionDAG &DAG = DCI.DAG;
12712 static SDValue combineBVOfConsecutiveLoads(SDNode *N, SelectionDAG &DAG) {
12802 static SDValue addShuffleForVecExtend(SDNode *N, SelectionDAG &DAG,
12836 static SDValue combineBVOfVecSExt(SDNode *N, SelectionDAG &DAG) {
12935   SelectionDAG &DAG = DCI.DAG;
13022   SelectionDAG &DAG = DCI.DAG;
13121   SelectionDAG &DAG = DCI.DAG;
13189   SelectionDAG &DAG = DCI.DAG;
13255   SelectionDAG &DAG = DCI.DAG;
13329   SelectionDAG &DAG = DCI.DAG;
13366   SelectionDAG &DAG = DCI.DAG;
14095                                  SelectionDAG &DAG,
14130                                                       const SelectionDAG &DAG,
14395                                                      SelectionDAG &DAG) const {
14506                                            SelectionDAG &DAG) const {
14541                                           SelectionDAG &DAG) const {
15101                                   SelectionDAG &DAG) {
15180 static SDValue combineADDToADDZE(SDNode *N, SelectionDAG &DAG,
15323   SelectionDAG &DAG = DCI.DAG;
15479   SelectionDAG &DAG = DCI.DAG;
15520   SelectionDAG &DAG = DCI.DAG;
lib/Target/PowerPC/PPCISelLowering.h
  512                               SelectionDAG &DAG);
  517                               SelectionDAG &DAG);
  522                               SelectionDAG &DAG);
  527                             unsigned ShuffleKind, SelectionDAG &DAG);
  532                             unsigned ShuffleKind, SelectionDAG &DAG);
  537                              unsigned ShuffleKind, SelectionDAG &DAG);
  567                             SelectionDAG &DAG);
  588                                         SelectionDAG &DAG);
  594     SDValue get_VSPLTI_elt(SDNode *N, unsigned ByteSize, SelectionDAG &DAG);
  690                                    SelectionDAG &DAG) const override;
  695                                 SelectionDAG &DAG) const;
  702                              SelectionDAG &DAG,
  711                              SelectionDAG &DAG,
  717                                  SelectionDAG &DAG) const;
  723     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  729                             SelectionDAG &DAG) const override;
  736     SDValue BuildSDIVPow2(SDNode *N, const APInt &Divisor, SelectionDAG &DAG,
  745                                        const SelectionDAG &DAG,
  803                                       SelectionDAG &DAG) const override;
  954                                      SelectionDAG &DAG) const override;
  989                              SelectionDAG &DAG,
  992                          SelectionDAG &DAG) const;
  995                                 SelectionDAG &DAG, const SDLoc &dl) const;
  996     SDValue LowerFP_TO_INTDirectMove(SDValue Op, SelectionDAG &DAG,
 1000     SDValue LowerINT_TO_FPDirectMove(SDValue Op, SelectionDAG &DAG,
 1003     SDValue LowerINT_TO_FPVector(SDValue Op, SelectionDAG &DAG,
 1006     SDValue LowerTRUNCATEVector(SDValue Op, SelectionDAG &DAG) const;
 1008     SDValue getFramePointerFrameIndex(SelectionDAG & DAG) const;
 1009     SDValue getReturnAddrFrameIndex(SelectionDAG & DAG) const;
 1016                                       SelectionDAG& DAG) const;
 1026                                     SelectionDAG& DAG) const;
 1028     SDValue EmitTailCallLoadFPAndRetAddr(SelectionDAG &DAG, int SPDiff,
 1033     SDValue getTOCEntry(SelectionDAG &DAG, const SDLoc &dl, SDValue GA) const;
 1035     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
 1036     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
 1037     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
 1038     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
 1039     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
 1040     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
 1041     SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
 1042     SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
 1043     SDValue LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
 1044     SDValue LowerADJUST_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
 1045     SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
 1046     SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) const;
 1047     SDValue LowerVACOPY(SDValue Op, SelectionDAG &DAG) const;
 1048     SDValue LowerSTACKRESTORE(SDValue Op, SelectionDAG &DAG) const;
 1049     SDValue LowerGET_DYNAMIC_AREA_OFFSET(SDValue Op, SelectionDAG &DAG) const;
 1050     SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
 1051     SDValue LowerEH_DWARF_CFA(SDValue Op, SelectionDAG &DAG) const;
 1052     SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG) const;
 1053     SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
 1054     SDValue LowerTRUNCATE(SDValue Op, SelectionDAG &DAG) const;
 1055     SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
 1056     SDValue LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG,
 1058     SDValue LowerINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
 1059     SDValue LowerFLT_ROUNDS_(SDValue Op, SelectionDAG &DAG) const;
 1060     SDValue LowerSHL_PARTS(SDValue Op, SelectionDAG &DAG) const;
 1061     SDValue LowerSRL_PARTS(SDValue Op, SelectionDAG &DAG) const;
 1062     SDValue LowerSRA_PARTS(SDValue Op, SelectionDAG &DAG) const;
 1063     SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
 1064     SDValue LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
 1065     SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
 1066     SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
 1067     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
 1068     SDValue LowerINTRINSIC_VOID(SDValue Op, SelectionDAG &DAG) const;
 1069     SDValue LowerREM(SDValue Op, SelectionDAG &DAG) const;
 1070     SDValue LowerBSWAP(SDValue Op, SelectionDAG &DAG) const;
 1071     SDValue LowerATOMIC_CMP_SWAP(SDValue Op, SelectionDAG &DAG) const;
 1072     SDValue LowerSCALAR_TO_VECTOR(SDValue Op, SelectionDAG &DAG) const;
 1073     SDValue LowerSIGN_EXTEND_INREG(SDValue Op, SelectionDAG &DAG) const;
 1074     SDValue LowerMUL(SDValue Op, SelectionDAG &DAG) const;
 1075     SDValue LowerABS(SDValue Op, SelectionDAG &DAG) const;
 1076     SDValue LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const;
 1078     SDValue LowerVectorLoad(SDValue Op, SelectionDAG &DAG) const;
 1079     SDValue LowerVectorStore(SDValue Op, SelectionDAG &DAG) const;
 1084                             const SDLoc &dl, SelectionDAG &DAG,
 1088                        bool hasNest, SelectionDAG &DAG,
 1099                          const SDLoc &dl, SelectionDAG &DAG,
 1113                         const SDLoc &dl, SelectionDAG &DAG) const override;
 1116                               SelectionDAG &DAG, SDValue ArgVal,
 1122         SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const;
 1126         SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const;
 1130         SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const;
 1134                                        ISD::ArgFlagsTy Flags, SelectionDAG &DAG,
 1143                              const SDLoc &dl, SelectionDAG &DAG,
 1152                              const SDLoc &dl, SelectionDAG &DAG,
 1161                              const SDLoc &dl, SelectionDAG &DAG,
 1170                           const SDLoc &dl, SelectionDAG &DAG,
 1174     SDValue lowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const;
 1175     SDValue lowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const;
 1176     SDValue LowerBITCAST(SDValue Op, SelectionDAG &DAG) const;
 1200     SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
 1203     SDValue getRecipEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
 1215     SDValue lowerToVINSERTH(ShuffleVectorSDNode *N, SelectionDAG &DAG) const;
 1220     SDValue lowerToVINSERTB(ShuffleVectorSDNode *N, SelectionDAG &DAG) const;
lib/Target/RISCV/RISCVISelDAGToDAG.cpp
   66 static SDNode *selectImm(SelectionDAG *CurDAG, const SDLoc &DL, int64_t Imm,
  204   SelectionDAG::allnodes_iterator Position(CurDAG->getRoot().getNode());
lib/Target/RISCV/RISCVISelLowering.cpp
  369                                             SelectionDAG &DAG) const {
  410                              SelectionDAG &DAG, unsigned Flags) {
  415                              SelectionDAG &DAG, unsigned Flags) {
  421                              SelectionDAG &DAG, unsigned Flags) {
  427 SDValue RISCVTargetLowering::getAddr(NodeTy *N, SelectionDAG &DAG,
  468                                                 SelectionDAG &DAG) const {
  490                                                SelectionDAG &DAG) const {
  497                                                SelectionDAG &DAG) const {
  504                                               SelectionDAG &DAG,
  545                                                SelectionDAG &DAG) const {
  577                                                    SelectionDAG &DAG) const {
  613 SDValue RISCVTargetLowering::lowerSELECT(SDValue Op, SelectionDAG &DAG) const {
  653 SDValue RISCVTargetLowering::lowerVASTART(SDValue Op, SelectionDAG &DAG) const {
  669                                             SelectionDAG &DAG) const {
  692                                              SelectionDAG &DAG) const {
  722                                                  SelectionDAG &DAG) const {
  760 SDValue RISCVTargetLowering::lowerShiftRightParts(SDValue Op, SelectionDAG &DAG,
  838 static SDValue customLegalizeToWOp(SDNode *N, SelectionDAG &DAG) {
  850 static SDValue customLegalizeToWOpWithSExt(SDNode *N, SelectionDAG &DAG) {
  862                                              SelectionDAG &DAG) const {
  925   SelectionDAG &DAG = DCI.DAG;
 1069     SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
 1667 static SDValue convertLocVTToValVT(SelectionDAG &DAG, SDValue Val,
 1687 static SDValue unpackFromRegLoc(SelectionDAG &DAG, SDValue Chain,
 1720 static SDValue convertValVTToLocVT(SelectionDAG &DAG, SDValue Val,
 1742 static SDValue unpackFromMemLoc(SelectionDAG &DAG, SDValue Chain,
 1770 static SDValue unpackF64OnRV32DSoftABI(SelectionDAG &DAG, SDValue Chain,
 1868     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 2089   SelectionDAG &DAG = CLI.DAG;
 2382                                  const SDLoc &DL, SelectionDAG &DAG) const {
 2685     SelectionDAG &DAG) const {
lib/Target/RISCV/RISCVISelLowering.h
   81   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   83                           SelectionDAG &DAG) const override;
   89                                            const SelectionDAG &DAG,
  105                                     SelectionDAG &DAG) const override;
  130   bool shouldExpandShift(SelectionDAG &DAG, SDNode *N) const override {
  161                                const SDLoc &DL, SelectionDAG &DAG,
  170                       SelectionDAG &DAG) const override;
  179   SDValue getAddr(NodeTy *N, SelectionDAG &DAG, bool IsLocal = true) const;
  181   SDValue getStaticTLSAddr(GlobalAddressSDNode *N, SelectionDAG &DAG,
  183   SDValue getDynamicTLSAddr(GlobalAddressSDNode *N, SelectionDAG &DAG) const;
  186   SDValue lowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  187   SDValue lowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  188   SDValue lowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  189   SDValue lowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  190   SDValue lowerSELECT(SDValue Op, SelectionDAG &DAG) const;
  191   SDValue lowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  192   SDValue lowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  193   SDValue lowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  194   SDValue lowerShiftLeftParts(SDValue Op, SelectionDAG &DAG) const;
  195   SDValue lowerShiftRightParts(SDValue Op, SelectionDAG &DAG, bool IsSRA) const;
lib/Target/Sparc/SparcISelLowering.cpp
  201                                  const SDLoc &DL, SelectionDAG &DAG) const {
  212                                     const SDLoc &DL, SelectionDAG &DAG) const {
  297                                     const SDLoc &DL, SelectionDAG &DAG) const {
  372     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  386     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  581     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  694 static bool hasReturnsTwiceAttr(SelectionDAG &DAG, SDValue Callee,
  719   SelectionDAG &DAG                     = CLI.DAG;
 1095   SelectionDAG &DAG = CLI.DAG;
 1859                                  const SelectionDAG &DAG,
 1901                                              SelectionDAG &DAG) const {
 1931                                           SelectionDAG &DAG) const {
 1941 SDValue SparcTargetLowering::makeAddress(SDValue Op, SelectionDAG &DAG) const {
 2001                                                 SelectionDAG &DAG) const {
 2006                                                SelectionDAG &DAG) const {
 2011                                                SelectionDAG &DAG) const {
 2016                                                    SelectionDAG &DAG) const {
 2123                                                   SelectionDAG &DAG) const {
 2147 SparcTargetLowering::LowerF128Op(SDValue Op, SelectionDAG &DAG,
 2201                                               SelectionDAG &DAG) const {
 2297 LowerF128_FPEXTEND(SDValue Op, SelectionDAG &DAG,
 2313 LowerF128_FPROUND(SDValue Op, SelectionDAG &DAG,
 2330 static SDValue LowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG,
 2359 static SDValue LowerSINT_TO_FP(SDValue Op, SelectionDAG &DAG,
 2387 static SDValue LowerFP_TO_UINT(SDValue Op, SelectionDAG &DAG,
 2408 static SDValue LowerUINT_TO_FP(SDValue Op, SelectionDAG &DAG,
 2427 static SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG,
 2464 static SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG,
 2500 static SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG,
 2520 static SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) {
 2543 static SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG,
 2607 static SDValue getFLUSHW(SDValue Op, SelectionDAG &DAG) {
 2614 static SDValue getFRAMEADDR(uint64_t depth, SDValue Op, SelectionDAG &DAG,
 2647 static SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG,
 2656 static SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG,
 2691 static SDValue LowerF64Op(SDValue SrcReg64, const SDLoc &dl, SelectionDAG &DAG,
 2725 static SDValue LowerF128Load(SDValue Op, SelectionDAG &DAG)
 2768 static SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG)
 2780 static SDValue LowerF128Store(SDValue Op, SelectionDAG &DAG) {
 2816 static SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG)
 2838 static SDValue LowerFNEGorFABS(SDValue Op, SelectionDAG &DAG, bool isV9) {
 2881 static SDValue LowerADDC_ADDE_SUBC_SUBE(SDValue Op, SelectionDAG &DAG) {
 2932 static SDValue LowerUMULO_SMULO(SDValue Op, SelectionDAG &DAG,
 2980 static SDValue LowerATOMIC_LOAD_STORE(SDValue Op, SelectionDAG &DAG) {
 2990                                                      SelectionDAG &DAG) const {
 3003 LowerOperation(SDValue Op, SelectionDAG &DAG) const {
 3066                                                     SelectionDAG &DAG) const {
 3226                              SelectionDAG &DAG) const {
 3336                                              SelectionDAG &DAG) const {
lib/Target/Sparc/SparcISelLowering.h
   57     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   67                                        const SelectionDAG &DAG,
   83                                       SelectionDAG &DAG) const override;
  129                          const SDLoc &dl, SelectionDAG &DAG,
  134                                     const SDLoc &dl, SelectionDAG &DAG,
  139                                     const SDLoc &dl, SelectionDAG &DAG,
  153                         const SDLoc &dl, SelectionDAG &DAG) const override;
  158                            const SDLoc &DL, SelectionDAG &DAG) const;
  163                            const SDLoc &DL, SelectionDAG &DAG) const;
  165     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  166     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  167     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  168     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  170     SDValue withTargetFlags(SDValue Op, unsigned TF, SelectionDAG &DAG) const;
  172                          SelectionDAG &DAG) const;
  173     SDValue makeAddress(SDValue Op, SelectionDAG &DAG) const;
  176                                  const SDLoc &DL, SelectionDAG &DAG) const;
  177     SDValue LowerF128Op(SDValue Op, SelectionDAG &DAG,
  181                              const SDLoc &DL, SelectionDAG &DAG) const;
  183     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  188                                    SelectionDAG &DAG) const;
  209                             SelectionDAG &DAG) const override;
lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
   74   void dump(const llvm::SelectionDAG *DAG) {
  609 static void insertDAGNode(SelectionDAG *DAG, SDNode *Pos, SDValue N) {
 1241                                         SDValue StoredVal, SelectionDAG *CurDAG,
 1890   for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(),
lib/Target/SystemZ/SystemZISelLowering.cpp
 1154                              SelectionDAG &DAG) const {
 1240 static SDValue convertLocVTToValVT(SelectionDAG &DAG, const SDLoc &DL,
 1269 static SDValue convertValVTToLocVT(SelectionDAG &DAG, const SDLoc &DL,
 1296     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 1461   SelectionDAG &DAG = CLI.DAG;
 1662                                    const SDLoc &DL, SelectionDAG &DAG) const {
 1895 static SDNode *emitIntrinsicWithCCAndChain(SelectionDAG &DAG, SDValue Op,
 1915 static SDNode *emitIntrinsicWithCC(SelectionDAG &DAG, SDValue Op,
 1958 static void adjustZeroCmp(SelectionDAG &DAG, const SDLoc &DL, Comparison &C) {
 1978 static void adjustSubwordCmp(SelectionDAG &DAG, const SDLoc &DL,
 2142 static void adjustForSubtraction(SelectionDAG &DAG, const SDLoc &DL,
 2208 static void adjustICmpTruncate(SelectionDAG &DAG, const SDLoc &DL,
 2339 static void adjustForTestUnderMask(SelectionDAG &DAG, const SDLoc &DL,
 2430 static void adjustForRedundantAnd(SelectionDAG &DAG, const SDLoc &DL,
 2448 static Comparison getIntrinsicCmp(SelectionDAG &DAG, unsigned Opcode,
 2481 static Comparison getCmp(SelectionDAG &DAG, SDValue CmpOp0, SDValue CmpOp1,
 2536 static SDValue emitCmp(SelectionDAG &DAG, const SDLoc &DL, Comparison &C) {
 2565 static void lowerMUL_LOHI32(SelectionDAG &DAG, const SDLoc &DL, unsigned Extend,
 2581 static void lowerGR128Binary(SelectionDAG &DAG, const SDLoc &DL, EVT VT,
 2593 static SDValue emitSETCC(SelectionDAG &DAG, const SDLoc &DL, SDValue CCReg,
 2649 static SDValue expandV4F32ToV2F64(SelectionDAG &DAG, int Start, const SDLoc &DL,
 2658 SDValue SystemZTargetLowering::getVectorCmp(SelectionDAG &DAG, unsigned Opcode,
 2680 SDValue SystemZTargetLowering::lowerVectorSETCC(SelectionDAG &DAG,
 2737                                           SelectionDAG &DAG) const {
 2751 SDValue SystemZTargetLowering::lowerBR_CC(SDValue Op, SelectionDAG &DAG) const {
 2779 static SDValue getAbsolute(SelectionDAG &DAG, const SDLoc &DL, SDValue Op,
 2789                                               SelectionDAG &DAG) const {
 2822                                                   SelectionDAG &DAG) const {
 2860                                                  SelectionDAG &DAG,
 2907                                                   SelectionDAG &DAG) const {
 2926                                                      SelectionDAG &DAG) const {
 3015                                                  SelectionDAG &DAG) const {
 3027                                               SelectionDAG &DAG) const {
 3037                                                  SelectionDAG &DAG) const {
 3054                                               SelectionDAG &DAG) const {
 3082                                                SelectionDAG &DAG) const {
 3105                                             SelectionDAG &DAG) const {
 3155                                             SelectionDAG &DAG) const {
 3191                                            SelectionDAG &DAG) const {
 3206 lowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const {
 3272     SDValue Op, SelectionDAG &DAG) const {
 3279                                               SelectionDAG &DAG) const {
 3327                                               SelectionDAG &DAG) const {
 3346                                             SelectionDAG &DAG) const {
 3368                                             SelectionDAG &DAG) const {
 3380 SDValue SystemZTargetLowering::lowerOR(SDValue Op, SelectionDAG &DAG) const {
 3437                                           SelectionDAG &DAG) const {
 3494                                                 SelectionDAG &DAG) const {
 3547                                           SelectionDAG &DAG) const {
 3621                                                  SelectionDAG &DAG) const {
 3643                                                 SelectionDAG &DAG) const {
 3652                                                  SelectionDAG &DAG) const {
 3668                                                    SelectionDAG &DAG,
 3742                                                     SelectionDAG &DAG) const {
 3777                                                     SelectionDAG &DAG) const {
 3861                                               SelectionDAG &DAG) const {
 3869                                                  SelectionDAG &DAG) const {
 3893                                              SelectionDAG &DAG) const {
 3911 static SDValue getCCResult(SelectionDAG &DAG, SDValue CCReg) {
 3920                                               SelectionDAG &DAG) const {
 3935                                                SelectionDAG &DAG) const {
 4232 static SDValue getPermuteNode(SelectionDAG &DAG, const SDLoc &DL,
 4261 static SDValue getGeneralPermuteNode(SelectionDAG &DAG, const SDLoc &DL,
 4291   SDValue getNode(SelectionDAG &, const SDLoc &);
 4379 SDValue GeneralShuffle::getNode(SelectionDAG &DAG, const SDLoc &DL) {
 4467 static SDValue buildScalarToVector(SelectionDAG &DAG, const SDLoc &DL, EVT VT,
 4483 static SDValue buildMergeScalars(SelectionDAG &DAG, const SDLoc &DL, EVT VT,
 4499 static SDValue joinDwords(SelectionDAG &DAG, const SDLoc &DL, SDValue Op0,
 4520 static SDValue tryBuildVectorShuffle(SelectionDAG &DAG,
 4579 SystemZTargetLowering::buildVector(SelectionDAG &DAG, const SDLoc &DL, EVT VT,
 4723                                                  SelectionDAG &DAG) const {
 4753                                                    SelectionDAG &DAG) const {
 4786                                                      SelectionDAG &DAG) const {
 4795                                                       SelectionDAG &DAG) const {
 4827                                                SelectionDAG &DAG) const {
 4852 SystemZTargetLowering::lowerExtendVectorInreg(SDValue Op, SelectionDAG &DAG,
 4868 SDValue SystemZTargetLowering::lowerShift(SDValue Op, SelectionDAG &DAG,
 4926                                               SelectionDAG &DAG) const {
 5046 static SDValue lowerI128ToGR128(SelectionDAG &DAG, SDValue In) {
 5057 static SDValue lowerGR128ToI128(SelectionDAG &DAG, SDValue In) {
 5069                                              SelectionDAG &DAG) const {
 5125                                           SelectionDAG &DAG) const {
 5271   SelectionDAG &DAG = DCI.DAG;
 5410   SelectionDAG &DAG = DCI.DAG;
 5439   SelectionDAG &DAG = DCI.DAG;
 5460   SelectionDAG &DAG = DCI.DAG;
 5487   SelectionDAG &DAG = DCI.DAG;
 5521   SelectionDAG &DAG = DCI.DAG;
 5586   SelectionDAG &DAG = DCI.DAG;
 5647   SelectionDAG &DAG = DCI.DAG;
 5686   SelectionDAG &DAG = DCI.DAG;
 5727   SelectionDAG &DAG = DCI.DAG;
 5747   SelectionDAG &DAG = DCI.DAG;
 5798   SelectionDAG &DAG = DCI.DAG;
 5839   SelectionDAG &DAG = DCI.DAG;
 6044   SelectionDAG &DAG = DCI.DAG;
 6068   SelectionDAG &DAG = DCI.DAG;
 6133   SelectionDAG &DAG = DCI.DAG;
 6284                                   const SelectionDAG &DAG, unsigned Depth,
 6300                                                      const SelectionDAG &DAG,
 6392                                         const SelectionDAG &DAG, unsigned Depth,
 6416     SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
lib/Target/SystemZ/SystemZISelLowering.h
  433                                     SelectionDAG &DAG) const override;
  479   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  481                              SelectionDAG &DAG) const override;
  483                           SelectionDAG &DAG) const override;
  490                                const SDLoc &DL, SelectionDAG &DAG,
  502                       SelectionDAG &DAG) const override;
  510                                      const SelectionDAG &DAG,
  516                                            const SelectionDAG &DAG,
  531   SDValue getVectorCmp(SelectionDAG &DAG, unsigned Opcode,
  534   SDValue lowerVectorSETCC(SelectionDAG &DAG, const SDLoc &DL,
  537   SDValue lowerSETCC(SDValue Op, SelectionDAG &DAG) const;
  538   SDValue lowerBR_CC(SDValue Op, SelectionDAG &DAG) const;
  539   SDValue lowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const;
  541                              SelectionDAG &DAG) const;
  543                             SelectionDAG &DAG, unsigned Opcode,
  545   SDValue lowerThreadPointer(const SDLoc &DL, SelectionDAG &DAG) const;
  547                                 SelectionDAG &DAG) const;
  549                             SelectionDAG &DAG) const;
  550   SDValue lowerJumpTable(JumpTableSDNode *JT, SelectionDAG &DAG) const;
  551   SDValue lowerConstantPool(ConstantPoolSDNode *CP, SelectionDAG &DAG) const;
  552   SDValue lowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  553   SDValue lowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  554   SDValue lowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  555   SDValue lowerVACOPY(SDValue Op, SelectionDAG &DAG) const;
  556   SDValue lowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
  557   SDValue lowerGET_DYNAMIC_AREA_OFFSET(SDValue Op, SelectionDAG &DAG) const;
  558   SDValue lowerSMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
  559   SDValue lowerUMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
  560   SDValue lowerSDIVREM(SDValue Op, SelectionDAG &DAG) const;
  561   SDValue lowerUDIVREM(SDValue Op, SelectionDAG &DAG) const;
  562   SDValue lowerXALUO(SDValue Op, SelectionDAG &DAG) const;
  563   SDValue lowerADDSUBCARRY(SDValue Op, SelectionDAG &DAG) const;
  564   SDValue lowerBITCAST(SDValue Op, SelectionDAG &DAG) const;
  565   SDValue lowerOR(SDValue Op, SelectionDAG &DAG) const;
  566   SDValue lowerCTPOP(SDValue Op, SelectionDAG &DAG) const;
  567   SDValue lowerATOMIC_FENCE(SDValue Op, SelectionDAG &DAG) const;
  568   SDValue lowerATOMIC_LOAD(SDValue Op, SelectionDAG &DAG) const;
  569   SDValue lowerATOMIC_STORE(SDValue Op, SelectionDAG &DAG) const;
  570   SDValue lowerATOMIC_LOAD_OP(SDValue Op, SelectionDAG &DAG,
  572   SDValue lowerATOMIC_LOAD_SUB(SDValue Op, SelectionDAG &DAG) const;
  573   SDValue lowerATOMIC_CMP_SWAP(SDValue Op, SelectionDAG &DAG) const;
  574   SDValue lowerSTACKSAVE(SDValue Op, SelectionDAG &DAG) const;
  575   SDValue lowerSTACKRESTORE(SDValue Op, SelectionDAG &DAG) const;
  576   SDValue lowerPREFETCH(SDValue Op, SelectionDAG &DAG) const;
  577   SDValue lowerINTRINSIC_W_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  578   SDValue lowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  580   SDValue buildVector(SelectionDAG &DAG, const SDLoc &DL, EVT VT,
  582   SDValue lowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  583   SDValue lowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
  584   SDValue lowerSCALAR_TO_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  585   SDValue lowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  586   SDValue lowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
  587   SDValue lowerExtendVectorInreg(SDValue Op, SelectionDAG &DAG,
  589   SDValue lowerShift(SDValue Op, SelectionDAG &DAG, unsigned ByScalar) const;
lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp
   25 static SDValue emitMemMem(SelectionDAG &DAG, const SDLoc &DL, unsigned Sequence,
   49     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dst, SDValue Src,
   64 static SDValue memsetStore(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
   76     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dst,
  145 static SDValue emitCLC(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
  170                               SelectionDAG &DAG) {
  180     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src1,
  195     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src,
  221     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dest,
  231     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src1,
  248 static std::pair<SDValue, SDValue> getBoundedStrlen(SelectionDAG &DAG,
  262     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src,
  269     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src,
lib/Target/SystemZ/SystemZSelectionDAGInfo.h
   26   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &DL,
   33   SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &DL,
   39   EmitTargetCodeForMemcmp(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
   45   EmitTargetCodeForMemchr(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
   50       SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dest,
   55   EmitTargetCodeForStrcmp(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
   61   EmitTargetCodeForStrlen(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
   66   EmitTargetCodeForStrnlen(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  618 static void fail(const SDLoc &DL, SelectionDAG &DAG, const char *Msg) {
  641   SelectionDAG &DAG = CLI.DAG;
  863     SelectionDAG &DAG) const {
  892     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
  954     SDNode *N, SmallVectorImpl<SDValue> &Results, SelectionDAG &DAG) const {
  973                                                   SelectionDAG &DAG) const {
 1022                                                   SelectionDAG &DAG) const {
 1048                                                    SelectionDAG &DAG) const {
 1054                                                    SelectionDAG &DAG) const {
 1075                                                   SelectionDAG &DAG) const {
 1090                                                       SelectionDAG &DAG) const {
 1136                                                SelectionDAG &DAG) const {
 1147                                                   SelectionDAG &DAG) const {
 1157                                               SelectionDAG &DAG) const {
 1184                                                 SelectionDAG &DAG) const {
 1198                                                   SelectionDAG &DAG) const {
 1252                                                   SelectionDAG &DAG) const {
 1291                                                      SelectionDAG &DAG) const {
 1450                                                SelectionDAG &DAG) const {
 1477                                                     SelectionDAG &DAG) const {
 1487 static SDValue unrollVectorShift(SDValue Op, SelectionDAG &DAG) {
 1513                                               SelectionDAG &DAG) const {
lib/Target/WebAssembly/WebAssemblyISelLowering.h
   82                       SelectionDAG &DAG) const override;
   86                                const SDLoc &DL, SelectionDAG &DAG,
   90                           SelectionDAG &DAG) const override;
   97   SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
   98   SDValue LowerFrameIndex(SDValue Op, SelectionDAG &DAG) const;
   99   SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  100   SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  101   SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  102   SDValue LowerExternalSymbol(SDValue Op, SelectionDAG &DAG) const;
  103   SDValue LowerBR_JT(SDValue Op, SelectionDAG &DAG) const;
  104   SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
  105   SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  106   SDValue LowerCopyToReg(SDValue Op, SelectionDAG &DAG) const;
  107   SDValue LowerIntrinsic(SDValue Op, SelectionDAG &DAG) const;
  108   SDValue LowerSIGN_EXTEND_INREG(SDValue Op, SelectionDAG &DAG) const;
  109   SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
  110   SDValue LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const;
  111   SDValue LowerAccessVectorElement(SDValue Op, SelectionDAG &DAG) const;
  112   SDValue LowerShift(SDValue Op, SelectionDAG &DAG) const;
lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp
   22     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dst, SDValue Src,
   37     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Op1, SDValue Op2,
   46     SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dst, SDValue Val,
lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.h
   25   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
   31   SDValue EmitTargetCodeForMemmove(SelectionDAG &DAG, const SDLoc &dl,
   36   SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &DL,
lib/Target/X86/X86ISelDAGToDAG.cpp
  108     void dump(SelectionDAG *DAG = nullptr) {
  717 static void moveBelowOrigChain(SelectionDAG *CurDAG, SDValue Load,
  790   for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(),
 1159   SelectionDAG::allnodes_iterator Position = CurDAG->allnodes_end();
 1548 static void insertDAGNode(SelectionDAG &DAG, SDValue Pos, SDValue N) {
 1566 static bool foldMaskAndShiftToExtract(SelectionDAG &DAG, SDValue N,
 1610 static bool foldMaskedShiftToScaledMask(SelectionDAG &DAG, SDValue N,
 1702 static bool foldMaskAndShiftToScale(SelectionDAG &DAG, SDValue N,
 1789 static bool foldMaskedShiftToBEXTR(SelectionDAG &DAG, SDValue N,
 2808                                         SDValue StoredVal, SelectionDAG *CurDAG,
lib/Target/X86/X86ISelLowering.cpp
  100 static void errorUnsupported(SelectionDAG &DAG, const SDLoc &dl,
 1916 SDValue X86TargetLowering::emitStackGuardXorFP(SelectionDAG &DAG, SDValue Val,
 2231                                                     SelectionDAG &DAG) const {
 2409                                const SDLoc &Dl, SelectionDAG &DAG) {
 2440     const SDLoc &Dl, SelectionDAG &DAG, SDValue &Arg,
 2469                                const SDLoc &dl, SelectionDAG &DAG) const {
 2734                                 SDValue &Root, SelectionDAG &DAG,
 2786                                SelectionDAG &DAG) {
 2823     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals,
 2953                                          SelectionDAG &DAG, const SDLoc &dl) {
 3012                                     const SDLoc &dl, SelectionDAG &DAG,
 3176     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 3539                                             SelectionDAG &DAG,
 3557     SelectionDAG &DAG, SDValue &OutRetAddr, SDValue Chain, bool IsTailCall,
 3570 static SDValue EmitTailCallStoreRetAddr(SelectionDAG &DAG, MachineFunction &MF,
 3589 static SDValue getMOVL(SelectionDAG &DAG, const SDLoc &dl, MVT VT, SDValue V1,
 3602   SelectionDAG &DAG                     = CLI.DAG;
 4187                                                SelectionDAG& DAG) const {
 4306     const SmallVectorImpl<ISD::InputArg> &Ins, SelectionDAG &DAG) const {
 4578 SDValue X86TargetLowering::getReturnAddressFrameIndex(SelectionDAG &DAG) const {
 4687                                SelectionDAG &DAG) {
 5009                                                 const SelectionDAG &DAG,
 5027                                          const SelectionDAG &DAG) const {
 5094         SelectionDAG &DAG) const {
 5145 bool X86TargetLowering::shouldExpandShift(SelectionDAG &DAG,
 5361 static SDValue getConstVector(ArrayRef<int> Values, MVT VT, SelectionDAG &DAG,
 5392                               MVT VT, SelectionDAG &DAG, const SDLoc &dl) {
 5434                              SelectionDAG &DAG, const SDLoc &dl) {
 5458 static SDValue extractSubVector(SDValue Vec, unsigned IdxVal, SelectionDAG &DAG,
 5490                                    SelectionDAG &DAG, const SDLoc &dl) {
 5498                                    SelectionDAG &DAG, const SDLoc &dl) {
 5504                                SelectionDAG &DAG, const SDLoc &dl,
 5534                                   SelectionDAG &DAG, const SDLoc &dl) {
 5542                               const X86Subtarget &Subtarget, SelectionDAG &DAG,
 5556                               const X86Subtarget &Subtarget, SelectionDAG &DAG,
 5609 SDValue SplitOpsAndApply(SelectionDAG &DAG, const X86Subtarget &Subtarget,
 5650 static SDValue insert1BitVector(SDValue Op, SelectionDAG &DAG,
 5797 static SDValue concatSubVectors(SDValue V1, SDValue V2, SelectionDAG &DAG,
 5812 static SDValue getOnesVector(EVT VT, SelectionDAG &DAG, const SDLoc &dl) {
 5839                               SDValue In, SelectionDAG &DAG) {
 5866 static SDValue IsNOT(SDValue V, SelectionDAG &DAG) {
 5892 static SDValue getUnpackl(SelectionDAG &DAG, const SDLoc &dl, MVT VT,
 5900 static SDValue getUnpackh(SelectionDAG &DAG, const SDLoc &dl, MVT VT,
 5914                                            SelectionDAG &DAG) {
 6846                                    SelectionDAG &DAG, unsigned Depth,
 6855                                SelectionDAG &DAG, unsigned Depth,
 7284                                    SelectionDAG &DAG, unsigned Depth,
 7305                                    SelectionDAG &DAG, unsigned Depth = 0,
 7320 static SDValue getShuffleScalarElt(SDNode *N, unsigned Index, SelectionDAG &DAG,
 7412                                         SelectionDAG &DAG,
 7454                                      SelectionDAG &DAG,
 7519                                      SelectionDAG &DAG,
 7530 static SDValue LowerBuildVectorv4x32(SDValue Op, SelectionDAG &DAG,
 7658                          SelectionDAG &DAG, const TargetLowering &TLI,
 7670                                       SelectionDAG &DAG) {
 7791                                         const SDLoc &DL, SelectionDAG &DAG,
 8054                                          SelectionDAG &DAG,
 8157                                            SelectionDAG &DAG) {
 8409 static SDValue buildFromShuffleMostly(SDValue Op, SelectionDAG &DAG) {
 8481 static SDValue ConvertI1VectorToInteger(SDValue Op, SelectionDAG &DAG) {
 8496 static SDValue LowerBUILD_VECTORvXi1(SDValue Op, SelectionDAG &DAG,
 8595                                   SelectionDAG &DAG,
 8709                                      const SDLoc &DL, SelectionDAG &DAG,
 8750                              const X86Subtarget &Subtarget, SelectionDAG &DAG,
 8878                                  SelectionDAG &DAG,
 8907                                        SelectionDAG &DAG) {
 8940 static bool isHopBuildVector(const BuildVectorSDNode *BV, SelectionDAG &DAG,
 9028                                     SelectionDAG &DAG, unsigned HOpcode,
 9067                                    SelectionDAG &DAG) {
 9187                                        SelectionDAG &DAG) {
 9256 static SDValue materializeVectorConstant(SDValue Op, SelectionDAG &DAG,
 9282                                      SDLoc &DL, SelectionDAG &DAG,
 9538 LowerBUILD_VECTORAsVariablePermute(SDValue V, SelectionDAG &DAG,
 9583 X86TargetLowering::LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const {
 9951 static SDValue LowerAVXCONCAT_VECTORS(SDValue Op, SelectionDAG &DAG,
10011                                        SelectionDAG & DAG) {
10090                                    SelectionDAG &DAG) {
10423                                           SelectionDAG &DAG) {
10542                                       SelectionDAG &DAG) {
10592                            const X86Subtarget &Subtarget, SelectionDAG &DAG,
10599                                     SDValue &V2, SelectionDAG &DAG,
10622                                         const SDLoc &DL, SelectionDAG &DAG,
10708                                      SelectionDAG &DAG) {
10772                                      SelectionDAG &DAG,
10829                                        SelectionDAG &DAG,
10879                                     SDValue V1, SDValue V2, SelectionDAG &DAG,
10899                                      SelectionDAG &DAG) {
10952                                       SelectionDAG &DAG) {
10973                                     SelectionDAG &DAG);
11037                                    SelectionDAG &DAG) {
11191                                              SelectionDAG &DAG,
11230                                              SelectionDAG &DAG) {
11292     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
11383     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
11537                                         SelectionDAG &DAG) {
11594                                     SelectionDAG &DAG) {
11614     const APInt &Zeroable, const X86Subtarget &Subtarget, SelectionDAG &DAG) {
11763                                    SelectionDAG &DAG) {
11919                                      const APInt &Zeroable, SelectionDAG &DAG) {
11946     ArrayRef<int> Mask, const X86Subtarget &Subtarget, SelectionDAG &DAG) {
12109     SelectionDAG &DAG) {
12226                                               SelectionDAG &DAG) {
12265     SelectionDAG &DAG) {
12363                                             SelectionDAG &DAG) {
12436                                              SelectionDAG &DAG) {
12492                                        SelectionDAG &DAG) {
12683                                    ArrayRef<int> Mask, SelectionDAG &DAG) {
12770                                       SelectionDAG &DAG) {
12795     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
12911                                  SelectionDAG &DAG) {
12995                                  SelectionDAG &DAG) {
13092                                       SDValue V2, SelectionDAG &DAG) {
13180                                  SelectionDAG &DAG) {
13276                                  SelectionDAG &DAG) {
13403     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
13899     const APInt &Zeroable, SelectionDAG &DAG, bool &V1InUse, bool &V2InUse) {
13963                                  SelectionDAG &DAG) {
14150                                      SDValue V2, SelectionDAG &DAG) {
14171                                  SelectionDAG &DAG) {
14487                                   SelectionDAG &DAG) {
14514                                     SelectionDAG &DAG) {
14641                                           SelectionDAG &DAG) {
14699     SelectionDAG &DAG, const X86Subtarget &Subtarget) {
14761     SelectionDAG &DAG, const X86Subtarget &Subtarget) {
14815                                   SelectionDAG &DAG) {
14916     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
15137                                      SelectionDAG &DAG, bool UseConcat = false) {
15177                                          SelectionDAG &DAG) {
15302     const X86Subtarget &Subtarget, SelectionDAG &DAG) {
15515                                       SelectionDAG &DAG) {
15542                                              SelectionDAG &DAG) {
15578                                  SelectionDAG &DAG) {
15686                                  SelectionDAG &DAG) {
15784                                  SelectionDAG &DAG) {
15883                                  SelectionDAG &DAG) {
15994                                   SelectionDAG &DAG) {
16094                                  SelectionDAG &DAG) {
16192                                   SelectionDAG &DAG) {
16257                                   SelectionDAG &DAG) {
16357                                  SelectionDAG &DAG) {
16411                                   SelectionDAG &DAG) {
16464                                  SelectionDAG &DAG) {
16527                                   SelectionDAG &DAG) {
16596                                   SelectionDAG &DAG) {
16649                                  SelectionDAG &DAG) {
16719                                   SelectionDAG &DAG) {
16769                                          SelectionDAG &DAG) {
16850                                 SelectionDAG &DAG) {
17043                                   SelectionDAG &DAG) {
17180                                            SelectionDAG &DAG) {
17195 SDValue X86TargetLowering::LowerVSELECT(SDValue Op, SelectionDAG &DAG) const {
17281 static SDValue LowerEXTRACT_VECTOR_ELT_SSE4(SDValue Op, SelectionDAG &DAG) {
17325 static SDValue ExtractBitFromMaskVector(SDValue Op, SelectionDAG &DAG,
17373                                            SelectionDAG &DAG) const {
17518 static SDValue InsertBitToMaskVector(SDValue Op, SelectionDAG &DAG,
17546                                                   SelectionDAG &DAG) const {
17681                                      SelectionDAG &DAG) {
17719                                      SelectionDAG &DAG) {
17726                                       SelectionDAG &DAG) {
17787 X86TargetLowering::LowerConstantPool(SDValue Op, SelectionDAG &DAG) const {
17809 SDValue X86TargetLowering::LowerJumpTable(SDValue Op, SelectionDAG &DAG) const {
17831                                                SelectionDAG &DAG) const {
17836 X86TargetLowering::LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const {
17858 SDValue X86TargetLowering::LowerGlobalOrExternal(SDValue Op, SelectionDAG &DAG,
17930 X86TargetLowering::LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const {
17935 GetTLSADDR(SelectionDAG &DAG, SDValue Chain, GlobalAddressSDNode *GA,
17967 LowerToTLSGeneralDynamicModel32(GlobalAddressSDNode *GA, SelectionDAG &DAG,
17981 LowerToTLSGeneralDynamicModel64(GlobalAddressSDNode *GA, SelectionDAG &DAG,
17988                                            SelectionDAG &DAG,
18027 static SDValue LowerToTLSExecModel(GlobalAddressSDNode *GA, SelectionDAG &DAG,
18082 X86TargetLowering::LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const {
18229 static SDValue LowerShiftParts(SDValue Op, SelectionDAG &DAG) {
18277                                 SelectionDAG &DAG) {
18328 static SDValue LowerI64IntToFP_AVX512DQ(SDValue Op, SelectionDAG &DAG,
18379 static SDValue vectorizeExtractedCast(SDValue Cast, SelectionDAG &DAG,
18419                                            SelectionDAG &DAG) const {
18474                                      SelectionDAG &DAG) const {
18533 static bool shouldUseHorizontalOp(bool IsSingleSource, SelectionDAG &DAG,
18541 static SDValue LowerUINT_TO_FP_i64(SDValue Op, SelectionDAG &DAG,
18606 static SDValue LowerUINT_TO_FP_i32(SDValue Op, SelectionDAG &DAG,
18643 static SDValue lowerUINT_TO_FP_v2i32(SDValue Op, SelectionDAG &DAG,
18679 static SDValue lowerUINT_TO_FP_vXi32(SDValue Op, SelectionDAG &DAG,
18773 static SDValue lowerUINT_TO_FP_vec(SDValue Op, SelectionDAG &DAG,
18792                                            SelectionDAG &DAG) const {
18904 X86TargetLowering::FP_TO_INTHelper(SDValue Op, SelectionDAG &DAG,
19028 static SDValue LowerAVXExtend(SDValue Op, SelectionDAG &DAG,
19097                                    const SDLoc &dl, SelectionDAG &DAG) {
19111                                       SelectionDAG &DAG) {
19168                                 SelectionDAG &DAG) {
19185                                       const SDLoc &DL, SelectionDAG &DAG,
19289 static SDValue LowerTruncateVecI1(SDValue Op, SelectionDAG &DAG,
19365 SDValue X86TargetLowering::LowerTRUNCATE(SDValue Op, SelectionDAG &DAG) const {
19514 SDValue X86TargetLowering::LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const {
19607 SDValue X86TargetLowering::LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const {
19625 SDValue X86TargetLowering::LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const {
19645 static SDValue LowerSTRICT_FP_ROUND(SDValue Op, SelectionDAG &DAG) {
19654 static SDValue lowerAddSubToHorizontalOp(SDValue Op, SelectionDAG &DAG,
19726 SDValue X86TargetLowering::lowerFaddFsub(SDValue Op, SelectionDAG &DAG) const {
19740 static SDValue LowerFABSorFNEG(SDValue Op, SelectionDAG &DAG) {
19779   const fltSemantics &Sem = SelectionDAG::EVTToAPFloatSemantics(VT);
19800 static SDValue LowerFCOPYSIGN(SDValue Op, SelectionDAG &DAG) {
19822   const fltSemantics &Sem = SelectionDAG::EVTToAPFloatSemantics(VT);
19867 static SDValue LowerFGETSIGN(SDValue Op, SelectionDAG &DAG) {
19887                         SelectionDAG &DAG) {
19961                                       SelectionDAG &DAG, SDValue &X86CC) {
20019                         SelectionDAG &DAG, const X86Subtarget &Subtarget) {
20135                                    const SDLoc &dl, SelectionDAG &DAG) const {
20189                                                  SelectionDAG &DAG) const {
20215 bool X86TargetLowering::isFsqrtCheap(SDValue Op, SelectionDAG &DAG) const {
20230                                            SelectionDAG &DAG, int Enabled,
20262 SDValue X86TargetLowering::getRecipEstimate(SDValue Op, SelectionDAG &DAG,
20306                                  SelectionDAG &DAG,
20364                             const SDLoc &dl, SelectionDAG &DAG,
20489 static SDValue Lower256IntVSETCC(SDValue Op, SelectionDAG &DAG) {
20517 static SDValue LowerIntVSETCC_AVX512(SDValue Op, SelectionDAG &DAG) {
20543 static SDValue incDecVectorConstant(SDValue V, SelectionDAG &DAG, bool IsInc) {
20576                                     SelectionDAG &DAG) {
20627                            SelectionDAG &DAG) {
20944                               const SDLoc &dl, SelectionDAG &DAG,
21002                                              SelectionDAG &DAG,
21057 SDValue X86TargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
21090 SDValue X86TargetLowering::LowerSETCCCARRY(SDValue Op, SelectionDAG &DAG) const {
21116 getX86XALUOOp(X86::CondCode &Cond, SDValue Op, SelectionDAG &DAG) {
21161 static SDValue LowerXALUO(SDValue Op, SelectionDAG &DAG) {
21191 static bool isTruncWithZeroHighBitsInput(SDValue V, SelectionDAG &DAG) {
21201 SDValue X86TargetLowering::LowerSELECT(SDValue Op, SelectionDAG &DAG) const {
21520                                      SelectionDAG &DAG) {
21576                                SelectionDAG &DAG) {
21593                                         SelectionDAG &DAG) {
21704                                 SelectionDAG &DAG) {
21761 static SDValue splitVectorStore(StoreSDNode *Store, SelectionDAG &DAG) {
21797                                     SelectionDAG &DAG) {
21831                           SelectionDAG &DAG) {
21909                                  SelectionDAG &DAG) {
21965 SDValue X86TargetLowering::LowerBRCOND(SDValue Op, SelectionDAG &DAG) const {
22192                                            SelectionDAG &DAG) const {
22275 SDValue X86TargetLowering::LowerVASTART(SDValue Op, SelectionDAG &DAG) const {
22332 SDValue X86TargetLowering::LowerVAARG(SDValue Op, SelectionDAG &DAG) const {
22392                            SelectionDAG &DAG) {
22437                                           SelectionDAG &DAG) {
22518                                    SelectionDAG &DAG) {
22586                            const X86Subtarget &Subtarget, SelectionDAG &DAG,
22627                   SelectionDAG &DAG) {
22653                                     SelectionDAG &DAG) {
22699 static SDValue recoverFramePointer(SelectionDAG &DAG, const Function *Fn,
22738                                                    SelectionDAG &DAG) const {
23671 static SDValue getAVX2GatherNode(unsigned Opc, SDValue Op, SelectionDAG &DAG,
23699 static SDValue getGatherNode(SDValue Op, SelectionDAG &DAG,
23736 static SDValue getScatterNode(unsigned Opc, SDValue Op, SelectionDAG &DAG,
23766 static SDValue getPrefetchNode(unsigned Opc, SDValue Op, SelectionDAG &DAG,
23797                                         SelectionDAG &DAG,
23852                                     SelectionDAG &DAG,
23873                                      SelectionDAG &DAG) {
23881 static SDValue MarkEHRegistrationNode(SDValue Op, SelectionDAG &DAG) {
23899 static SDValue MarkEHGuard(SDValue Op, SelectionDAG &DAG) {
23921                 SelectionDAG &DAG) {
23935                       MachineMemOperand *MMO, SelectionDAG &DAG) {
23945                                       SelectionDAG &DAG) {
24180                                            SelectionDAG &DAG) const {
24207                                                  SelectionDAG &DAG) const {
24212 SDValue X86TargetLowering::LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const {
24284                                                      SelectionDAG &DAG) const {
24308 SDValue X86TargetLowering::LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const {
24335                                                SelectionDAG &DAG) const {
24353                                                 SelectionDAG &DAG) const {
24360                                                        SelectionDAG &DAG) const {
24366 static SDValue LowerADJUST_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) {
24371                                                 SelectionDAG &DAG) const {
24519                                             SelectionDAG &DAG) const {
24587 static SDValue LowerVectorIntUnary(SDValue Op, SelectionDAG &DAG) {
24608 static SDValue Lower256IntUnary(SDValue Op, SelectionDAG &DAG) {
24616 static SDValue Lower512IntUnary(SDValue Op, SelectionDAG &DAG) {
24629 static SDValue LowerVectorCTLZ_AVX512CDI(SDValue Op, SelectionDAG &DAG,
24661                                        SelectionDAG &DAG) {
24743                                SelectionDAG &DAG) {
24764                          SelectionDAG &DAG) {
24803                          SelectionDAG &DAG) {
24825 static SDValue split256IntArith(SDValue Op, SelectionDAG &DAG) {
24854 static SDValue split512IntArith(SDValue Op, SelectionDAG &DAG) {
24881 static SDValue lowerAddSub(SDValue Op, SelectionDAG &DAG,
24897 static SDValue LowerADDSAT_SUBSAT(SDValue Op, SelectionDAG &DAG,
24946                         SelectionDAG &DAG) {
24979 static SDValue LowerMINMAX(SDValue Op, SelectionDAG &DAG) {
25019                         SelectionDAG &DAG) {
25164                          SelectionDAG &DAG) {
25383 SDValue X86TargetLowering::LowerWin64_i128OP(SDValue Op, SelectionDAG &DAG) const {
25486 static SDValue LowerScalarImmediateShift(SDValue Op, SelectionDAG &DAG,
25610 static SDValue LowerScalarVariableShift(SDValue Op, SelectionDAG &DAG,
25700                                        SelectionDAG &DAG) {
25762                           SelectionDAG &DAG) {
26243                            SelectionDAG &DAG) {
26605 static SDValue emitLockedStackOp(SelectionDAG &DAG,
26667                                  SelectionDAG &DAG) {
26690                              SelectionDAG &DAG) {
26728 static SDValue getPMOVMSKB(const SDLoc &DL, SDValue V, SelectionDAG &DAG,
26757                             SelectionDAG &DAG) {
26840                                       SelectionDAG &DAG) {
26904                                         SelectionDAG &DAG) {
26950                                 SelectionDAG &DAG) {
26994                           SelectionDAG &DAG) {
27000 static SDValue LowerBITREVERSE_XOP(SDValue Op, SelectionDAG &DAG) {
27046                                SelectionDAG &DAG) {
27103 static SDValue lowerAtomicArithWithLOCK(SDValue N, SelectionDAG &DAG,
27135 static SDValue lowerAtomicArith(SDValue N, SelectionDAG &DAG,
27199 static SDValue LowerATOMIC_STORE(SDValue Op, SelectionDAG &DAG,
27250 static SDValue LowerADDSUBCARRY(SDValue Op, SelectionDAG &DAG) {
27280                             SelectionDAG &DAG) {
27335 static SDValue ExtendToType(SDValue InOp, MVT NVT, SelectionDAG &DAG,
27385                              SelectionDAG &DAG) {
27451                           SelectionDAG &DAG) {
27520                            SelectionDAG &DAG) {
27561                             SelectionDAG &DAG) {
27611                                                     SelectionDAG &DAG) const {
27632                                                   SelectionDAG &DAG) const {
27652 SDValue X86TargetLowering::LowerF128Call(SDValue Op, SelectionDAG &DAG,
27660 SDValue X86TargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
27792                                               SelectionDAG &DAG) const {
27819                                            SelectionDAG &DAG) const {
31484                                                       const SelectionDAG &DAG,
31668     SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
31816                               SDValue &V1, const SDLoc &DL, SelectionDAG &DAG,
32068                                SelectionDAG &DAG, const X86Subtarget &Subtarget,
32134     const SDLoc &DL, SelectionDAG &DAG, const X86Subtarget &Subtarget,
32276     bool HasVariableMask, bool AllowVariableMask, SelectionDAG &DAG,
32291                                       bool AllowVariableMask, SelectionDAG &DAG,
32814     bool HasVariableMask, bool AllowVariableMask, SelectionDAG &DAG,
32916                                            SelectionDAG &DAG,
33027     bool HasVariableMask, bool AllowVariableMask, SelectionDAG &DAG,
33243 static SDValue combineX86ShufflesRecursively(SDValue Op, SelectionDAG &DAG,
33300                              SelectionDAG &DAG) {
33427 static SDValue combineTargetShuffle(SDValue N, SelectionDAG &DAG,
33836                              SelectionDAG &DAG, SDValue &Opnd0, SDValue &Opnd1,
33897                                         SelectionDAG &DAG) {
33940                                                 SelectionDAG &DAG) {
33974 static SDValue combineShuffleOfConcatUndef(SDNode *N, SelectionDAG &DAG,
34017 static SDValue foldShuffleOfHorizOp(SDNode *N, SelectionDAG &DAG) {
34106 static SDValue narrowShuffle(ShuffleVectorSDNode *Shuf, SelectionDAG &DAG) {
34136 static SDValue combineShuffle(SDNode *N, SelectionDAG &DAG,
34994     SelectionDAG &DAG, unsigned Depth) const {
35064 XFormVExtractWithShuffleIntoLoad(SDNode *N, SelectionDAG &DAG,
35192 static SDValue signExtendBitcastSrcVector(SelectionDAG &DAG, EVT SExtVT,
35214 static SDValue combineBitcastvxi1(SelectionDAG &DAG, EVT VT, SDValue Src,
35314 static SDValue combinevXi1ConstantToInteger(SDValue Op, SelectionDAG &DAG) {
35331 static SDValue combineCastedMaskArithmetic(SDNode *N, SelectionDAG &DAG,
35387 static SDValue createMMXBuildVector(BuildVectorSDNode *BV, SelectionDAG &DAG,
35458 static SDValue combineBitcast(SDNode *N, SelectionDAG &DAG,
35715 static SDValue createPSADBW(SelectionDAG &DAG, const SDValue &Zext0,
35745 static SDValue combineHorizontalMinMaxResult(SDNode *Extract, SelectionDAG &DAG,
35823                                                 SelectionDAG &DAG,
35952 static SDValue combineBasicSADPattern(SDNode *Extract, SelectionDAG &DAG,
36035 static SDValue combineExtractWithShuffle(SDNode *N, SelectionDAG &DAG,
36167 static SDValue scalarizeExtEltFP(SDNode *ExtElt, SelectionDAG &DAG) {
36265 static SDValue combineReductionToHorizontal(SDNode *ExtElt, SelectionDAG &DAG,
36378 static SDValue combineExtractVectorElt(SDNode *N, SelectionDAG &DAG,
36517 combineVSelectWithAllOnesOrZeros(SDNode *N, SelectionDAG &DAG,
36630 static SDValue narrowVectorSelect(SDNode *N, SelectionDAG &DAG,
36659 static SDValue combineSelectOfTwoConstants(SDNode *N, SelectionDAG &DAG) {
36727 static SDValue combineVSelectToBLENDV(SDNode *N, SelectionDAG &DAG,
36805 static SDValue combineSelect(SDNode *N, SelectionDAG &DAG,
37248                                        SelectionDAG &DAG,
37513 static SDValue combineCarryThroughADD(SDValue EFLAGS, SelectionDAG &DAG) {
37565                                   SelectionDAG &DAG,
37577 static SDValue combineCMov(SDNode *N, SelectionDAG &DAG,
37800 static bool canReduceVMulWidth(SDNode *N, SelectionDAG &DAG, ShrinkMode &Mode) {
37862 static SDValue reduceVMULWidth(SDNode *N, SelectionDAG &DAG,
37930 static SDValue combineMulSpecial(uint64_t MulAmt, SDNode *N, SelectionDAG &DAG,
38018 static SDValue combineMulToPMADDWD(SDNode *N, SelectionDAG &DAG,
38066 static SDValue combineMulToPMULDQ(SDNode *N, SelectionDAG &DAG,
38110 static SDValue combineMul(SDNode *N, SelectionDAG &DAG,
38252 static SDValue combineShiftLeft(SDNode *N, SelectionDAG &DAG) {
38311 static SDValue combineShiftRightArithmetic(SDNode *N, SelectionDAG &DAG) {
38364 static SDValue combineShiftRightLogical(SDNode *N, SelectionDAG &DAG,
38413 static SDValue combineVectorPack(SDNode *N, SelectionDAG &DAG,
38513 static SDValue combineVectorShiftVar(SDNode *N, SelectionDAG &DAG,
38546 static SDValue combineVectorShiftImm(SDNode *N, SelectionDAG &DAG,
38624 static SDValue combineVectorInsert(SDNode *N, SelectionDAG &DAG,
38649 static SDValue combineCompareEqual(SDNode *N, SelectionDAG &DAG,
38752 static SDValue combineANDXORWithAllOnesIntoANDNP(SDNode *N, SelectionDAG &DAG) {
38783 static SDValue PromoteMaskArithmetic(SDNode *N, SelectionDAG &DAG,
38849 static SDValue convertIntLogicToFPLogic(SDNode *N, SelectionDAG &DAG,
38885 static SDValue combineAndMaskToShift(SDNode *N, SelectionDAG &DAG,
38959 static SDValue combineAndLoadToBZHI(SDNode *Node, SelectionDAG &DAG,
39039 static SDValue combineParity(SDNode *N, SelectionDAG &DAG,
39110 static SDValue combineScalarAndWithMaskSetcc(SDNode *N, SelectionDAG &DAG,
39169 static SDValue combineAnd(SDNode *N, SelectionDAG &DAG,
39289 static SDValue canonicalizeBitSelect(SDNode *N, SelectionDAG &DAG,
39386     SelectionDAG &DAG, const X86Subtarget &Subtarget) {
39438 static SDValue combineLogicBlendIntoPBLENDV(SDNode *N, SelectionDAG &DAG,
39490                                           SelectionDAG &DAG) {
39511 static SDValue combineOrCmpEqZeroToCtlzSrl(SDNode *N, SelectionDAG &DAG,
39590 static SDValue combineOr(SDNode *N, SelectionDAG &DAG,
39771 static SDValue foldXorTruncShiftIntoCmp(SDNode *N, SelectionDAG &DAG) {
39826 static SDValue foldVectorXorShiftIntoCmp(SDNode *N, SelectionDAG &DAG,
39880 static SDValue detectUSatPattern(SDValue In, EVT VT, SelectionDAG &DAG,
39962                                       SelectionDAG &DAG,
40066 static SDValue detectAVGPattern(SDValue In, EVT VT, SelectionDAG &DAG,
40202 static SDValue combineLoad(SDNode *N, SelectionDAG &DAG,
40303                                          SelectionDAG &DAG, SDValue &Addr,
40328 reduceMaskedLoadToScalarLoad(MaskedLoadSDNode *ML, SelectionDAG &DAG,
40355 combineMaskedLoadConstantMask(MaskedLoadSDNode *ML, SelectionDAG &DAG,
40402 static SDValue combineMaskedLoad(SDNode *N, SelectionDAG &DAG,
40428                                               SelectionDAG &DAG) {
40450 static SDValue combineMaskedStore(SDNode *N, SelectionDAG &DAG,
40488 static SDValue combineStore(SDNode *N, SelectionDAG &DAG,
40762 static bool isHorizontalBinOp(SDValue &LHS, SDValue &RHS, SelectionDAG &DAG,
40913 static SDValue combineFaddFsub(SDNode *N, SelectionDAG &DAG,
40936 static SDValue combineTruncatedArithmetic(SDNode *N, SelectionDAG &DAG,
41033                                                  SelectionDAG &DAG) {
41047                                                  SelectionDAG &DAG) {
41061 static SDValue combineVectorTruncation(SDNode *N, SelectionDAG &DAG,
41109                                                SelectionDAG &DAG,
41170                             SelectionDAG &DAG, const X86Subtarget &Subtarget) {
41223 static SDValue detectPMADDUBSW(SDValue In, EVT VT, SelectionDAG &DAG,
41354 static SDValue combineTruncate(SDNode *N, SelectionDAG &DAG,
41395 static SDValue combineVTRUNC(SDNode *N, SelectionDAG &DAG) {
41417 static SDValue isFNEG(SelectionDAG &DAG, SDNode *N, unsigned Depth = 0) {
41422   if (Depth > SelectionDAG::MaxRecursionDepth)
41541 static SDValue combineFneg(SDNode *N, SelectionDAG &DAG,
41591 char X86TargetLowering::isNegatibleForFree(SDValue Op, SelectionDAG &DAG,
41600   if (Depth > SelectionDAG::MaxRecursionDepth)
41634 SDValue X86TargetLowering::getNegatedExpression(SDValue Op, SelectionDAG &DAG,
41686 static SDValue lowerX86FPLogicOp(SDNode *N, SelectionDAG &DAG,
41715 static SDValue foldXor1SetCC(SDNode *N, SelectionDAG &DAG) {
41730 static SDValue combineXor(SDNode *N, SelectionDAG &DAG,
41760 static SDValue combineBEXTR(SDNode *N, SelectionDAG &DAG,
41799 static SDValue getNullFPConstForNullVal(SDValue V, SelectionDAG &DAG,
41810 static SDValue combineFAndFNotToFAndn(SDNode *N, SelectionDAG &DAG,
41842 static SDValue combineFAnd(SDNode *N, SelectionDAG &DAG,
41859 static SDValue combineFAndn(SDNode *N, SelectionDAG &DAG,
41873 static SDValue combineFOr(SDNode *N, SelectionDAG &DAG,
41892 static SDValue combineFMinFMax(SDNode *N, SelectionDAG &DAG) {
41912 static SDValue combineFMinNumFMaxNum(SDNode *N, SelectionDAG &DAG,
41977 static SDValue combineX86INT_TO_FP(SDNode *N, SelectionDAG &DAG,
42019 static SDValue combineCVTP2I_CVTTP2I(SDNode *N, SelectionDAG &DAG,
42055 static SDValue combineAndnp(SDNode *N, SelectionDAG &DAG,
42083 static SDValue combineBT(SDNode *N, SelectionDAG &DAG,
42098 static SDValue combineSextInRegCmov(SDNode *N, SelectionDAG &DAG) {
42159 static SDValue combineSignExtendInReg(SDNode *N, SelectionDAG &DAG,
42201 static SDValue promoteExtBeforeAdd(SDNode *Ext, SelectionDAG &DAG,
42273 static SDValue combineToExtendCMOV(SDNode *Extend, SelectionDAG &DAG) {
42321 combineToExtendBoolVectorInReg(SDNode *N, SelectionDAG &DAG,
42409 static SDValue combineExtSetcc(SDNode *N, SelectionDAG &DAG,
42450 static SDValue combineSext(SDNode *N, SelectionDAG &DAG,
42490 static SDValue combineFMA(SDNode *N, SelectionDAG &DAG,
42552 static SDValue combineFMADDSUB(SDNode *N, SelectionDAG &DAG,
42574 static SDValue combineZext(SDNode *N, SelectionDAG &DAG,
42649 static SDValue combineVectorSizedSetCCEquality(SDNode *SetCC, SelectionDAG &DAG,
42815 static SDValue combineSetCC(SDNode *N, SelectionDAG &DAG,
42896 static SDValue combineMOVMSK(SDNode *N, SelectionDAG &DAG,
42943 static SDValue combineX86GatherScatter(SDNode *N, SelectionDAG &DAG,
42957 static SDValue combineGatherScatter(SDNode *N, SelectionDAG &DAG,
43069 static SDValue combineX86SetCC(SDNode *N, SelectionDAG &DAG,
43083 static SDValue combineBrCond(SDNode *N, SelectionDAG &DAG,
43102                                                   SelectionDAG &DAG) {
43149 static SDValue combineToFPTruncExtElt(SDNode *N, SelectionDAG &DAG) {
43181 static SDValue combineUIntToFP(SDNode *N, SelectionDAG &DAG,
43209 static SDValue combineSIntToFP(SDNode *N, SelectionDAG &DAG,
43355 static SDValue combineCMP(SDNode *N, SelectionDAG &DAG) {
43443 static SDValue combineX86AddSub(SDNode *N, SelectionDAG &DAG,
43477 static SDValue combineSBB(SDNode *N, SelectionDAG &DAG) {
43499 static SDValue combineADC(SDNode *N, SelectionDAG &DAG,
43535 static SDValue combineAddOrSubToADCOrSBB(SDNode *N, SelectionDAG &DAG) {
43691 static SDValue combineLoopMAddPattern(SDNode *N, SelectionDAG &DAG,
43754 static SDValue combineLoopSADPattern(SDNode *N, SelectionDAG &DAG,
43829 static SDValue matchPMADDWD(SelectionDAG &DAG, SDValue Op0, SDValue Op1,
43941 static SDValue matchPMADDWD_2(SelectionDAG &DAG, SDValue N0, SDValue N1,
44059 static SDValue combineAdd(SDNode *N, SelectionDAG &DAG,
44118 static SDValue combineSubToSubus(SDNode *N, SelectionDAG &DAG,
44205 static SDValue combineSub(SDNode *N, SelectionDAG &DAG,
44250 static SDValue combineVectorCompare(SDNode *N, SelectionDAG &DAG,
44269                                       ArrayRef<SDValue> Ops, SelectionDAG &DAG,
44379 static SDValue combineConcatVectors(SDNode *N, SelectionDAG &DAG,
44400 static SDValue combineInsertSubvector(SDNode *N, SelectionDAG &DAG,
44526 static SDValue narrowExtractedVectorSelect(SDNode *Ext, SelectionDAG &DAG) {
44578 static SDValue combineExtractSubvector(SDNode *N, SelectionDAG &DAG,
44749 static SDValue combineScalarToVector(SDNode *N, SelectionDAG &DAG) {
44786 static SDValue combinePMULDQ(SDNode *N, SelectionDAG &DAG,
44838 static SDValue combineExtInVec(SDNode *N, SelectionDAG &DAG,
44877 static SDValue combineKSHIFT(SDNode *N, SelectionDAG &DAG,
44893   SelectionDAG &DAG = DCI.DAG;
45087                                                   SelectionDAG &DAG) const {
45588     SelectionDAG &DAG) const {
45616                                                      SelectionDAG &DAG) const {
lib/Target/X86/X86ISelLowering.h
  719                                      SelectionDAG &DAG) const override;
  762     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  770                                SelectionDAG &DAG) const override;
  776                             SelectionDAG &DAG) const override;
  808     char isNegatibleForFree(SDValue Op, SelectionDAG &DAG, bool LegalOperations,
  812     SDValue getNegatedExpression(SDValue Op, SelectionDAG &DAG,
  830                           const SelectionDAG &DAG) const override;
  869         SelectionDAG &DAG) const override;
  894     bool shouldExpandShift(SelectionDAG &DAG, SDNode *N) const override;
  917                                        const SelectionDAG &DAG,
  923                                              const SelectionDAG &DAG,
  942         SelectionDAG &DAG, unsigned Depth) const override;
  948     SDValue getReturnAddressFrameIndex(SelectionDAG &DAG) const;
  968                                       SelectionDAG &DAG) const override;
  986                                         SelectionDAG &DAG) const override;
 1160                                  const SelectionDAG &DAG,
 1197     SDValue emitStackGuardXorFP(SelectionDAG &DAG, SDValue Val,
 1207                       SelectionDAG &DAG) const;
 1250                                    SDValue Addr, SelectionDAG &DAG)
 1281                             const SDLoc &dl, SelectionDAG &DAG,
 1286                              const SDLoc &dl, SelectionDAG &DAG,
 1290                              const SDLoc &dl, SelectionDAG &DAG,
 1307                                            SelectionDAG& DAG) const;
 1308     SDValue EmitTailCallLoadRetAddr(SelectionDAG &DAG, SDValue &OutRetAddr,
 1314                                          SelectionDAG &DAG) const;
 1318     SDValue FP_TO_INTHelper(SDValue Op, SelectionDAG &DAG, bool isSigned) const;
 1320     SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
 1321     SDValue LowerVSELECT(SDValue Op, SelectionDAG &DAG) const;
 1322     SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
 1323     SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
 1327     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
 1328     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
 1329     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
 1330     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
 1331     SDValue LowerExternalSymbol(SDValue Op, SelectionDAG &DAG) const;
 1335     SDValue LowerGlobalOrExternal(SDValue Op, SelectionDAG &DAG,
 1338     SDValue LowerSINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
 1339     SDValue LowerUINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
 1340     SDValue LowerTRUNCATE(SDValue Op, SelectionDAG &DAG) const;
 1341     SDValue LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const;
 1342     SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
 1343     SDValue LowerSETCCCARRY(SDValue Op, SelectionDAG &DAG) const;
 1344     SDValue LowerSELECT(SDValue Op, SelectionDAG &DAG) const;
 1345     SDValue LowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
 1346     SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
 1347     SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
 1348     SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
 1349     SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) const;
 1350     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
 1351     SDValue LowerADDROFRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
 1352     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
 1353     SDValue LowerFRAME_TO_ARGS_OFFSET(SDValue Op, SelectionDAG &DAG) const;
 1354     SDValue LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const;
 1355     SDValue lowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const;
 1356     SDValue lowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const;
 1357     SDValue lowerEH_SJLJ_SETUP_DISPATCH(SDValue Op, SelectionDAG &DAG) const;
 1358     SDValue LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
 1359     SDValue LowerFLT_ROUNDS_(SDValue Op, SelectionDAG &DAG) const;
 1360     SDValue LowerWin64_i128OP(SDValue Op, SelectionDAG &DAG) const;
 1361     SDValue LowerGC_TRANSITION_START(SDValue Op, SelectionDAG &DAG) const;
 1362     SDValue LowerGC_TRANSITION_END(SDValue Op, SelectionDAG &DAG) const;
 1363     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
 1364     SDValue lowerFaddFsub(SDValue Op, SelectionDAG &DAG) const;
 1365     SDValue LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const;
 1366     SDValue LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const;
 1368     SDValue LowerF128Call(SDValue Op, SelectionDAG &DAG,
 1374                          const SDLoc &dl, SelectionDAG &DAG,
 1382                         const SDLoc &dl, SelectionDAG &DAG) const override;
 1483                     SelectionDAG &DAG) const;
 1486     SDValue ConvertCmpIfNecessary(SDValue Cmp, SelectionDAG &DAG) const;
 1492                               SelectionDAG &DAG,
 1496     bool isFsqrtCheap(SDValue Operand, SelectionDAG &DAG) const override;
 1499     SDValue getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
 1504     SDValue getRecipEstimate(SDValue Operand, SelectionDAG &DAG, int Enabled,
 1510     SDValue BuildSDIVPow2(SDNode *N, const APInt &Divisor, SelectionDAG &DAG,
lib/Target/X86/X86InstrInfo.cpp
 5597 X86InstrInfo::unfoldMemoryOperand(SelectionDAG &DAG, SDNode *N,
lib/Target/X86/X86InstrInfo.h
  363   bool unfoldMemoryOperand(SelectionDAG &DAG, SDNode *N,
lib/Target/X86/X86SelectionDAGInfo.cpp
   27     SelectionDAG &DAG, ArrayRef<MCPhysReg> ClobberSet) const {
   47     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Val,
  186 static SDValue emitRepmovs(const X86Subtarget &Subtarget, SelectionDAG &DAG,
  208 static SDValue emitRepmovsB(const X86Subtarget &Subtarget, SelectionDAG &DAG,
  237     SelectionDAG &DAG, const X86Subtarget &Subtarget, const SDLoc &dl,
  293     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
lib/Target/X86/X86SelectionDAGInfo.h
   28   bool isBaseRegConflictPossible(SelectionDAG &DAG,
   34   SDValue EmitTargetCodeForMemset(SelectionDAG &DAG, const SDLoc &dl,
   39   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
lib/Target/XCore/XCoreISelDAGToDAG.cpp
  216 replaceInChain(SelectionDAG *CurDAG, SDValue Chain, SDValue Old, SDValue New)
lib/Target/XCore/XCoreISelLowering.cpp
  197 LowerOperation(SDValue Op, SelectionDAG &DAG) const {
  232                                              SelectionDAG &DAG) const {
  249                                                      SelectionDAG &DAG) const {
  278 LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const
  310 LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const
  321 LowerConstantPool(SDValue Op, SelectionDAG &DAG) const
  343 LowerBR_JT(SDValue Op, SelectionDAG &DAG) const
  368     SelectionDAG &DAG) const {
  403 static bool isWordAligned(SDValue Value, SelectionDAG &DAG)
  409 SDValue XCoreTargetLowering::LowerLOAD(SDValue Op, SelectionDAG &DAG) const {
  485 SDValue XCoreTargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
  539 LowerSMUL_LOHI(SDValue Op, SelectionDAG &DAG) const
  556 LowerUMUL_LOHI(SDValue Op, SelectionDAG &DAG) const
  632 TryExpandADDWithMul(SDNode *N, SelectionDAG &DAG) const
  692 ExpandADDSUB(SDNode *N, SelectionDAG &DAG) const
  734 LowerVAARG(SDValue Op, SelectionDAG &DAG) const
  759 LowerVASTART(SDValue Op, SelectionDAG &DAG) const
  772                                             SelectionDAG &DAG) const {
  788 LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const {
  807 LowerFRAME_TO_ARGS_OFFSET(SDValue Op, SelectionDAG &DAG) const {
  816 LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const {
  855 LowerADJUST_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const {
  860 LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const {
  914 LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const {
  931 LowerATOMIC_FENCE(SDValue Op, SelectionDAG &DAG) const {
  937 LowerATOMIC_LOAD(SDValue Op, SelectionDAG &DAG) const {
  968 LowerATOMIC_STORE(SDValue Op, SelectionDAG &DAG) const {
 1032   SelectionDAG &DAG                     = CLI.DAG;
 1062                                const SDLoc &dl, SelectionDAG &DAG,
 1111     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 1243     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 1262     SelectionDAG &DAG, SmallVectorImpl<SDValue> &InVals) const {
 1440                                  const SDLoc &dl, SelectionDAG &DAG) const {
 1591   SelectionDAG &DAG = DCI.DAG;
 1818                                                         const SelectionDAG &DAG,
lib/Target/XCore/XCoreISelLowering.h
  108     SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
  114                             SelectionDAG &DAG) const override;
  150                               const SDLoc &dl, SelectionDAG &DAG,
  158                            const SDLoc &dl, SelectionDAG &DAG,
  160     SDValue getReturnAddressFrameIndex(SelectionDAG &DAG) const;
  162                                     SelectionDAG &DAG) const;
  166                                                    SelectionDAG &DAG) const;
  169     SDValue LowerLOAD(SDValue Op, SelectionDAG &DAG) const;
  170     SDValue LowerSTORE(SDValue Op, SelectionDAG &DAG) const;
  171     SDValue LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const;
  172     SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
  173     SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
  174     SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
  175     SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
  176     SDValue LowerBR_JT(SDValue Op, SelectionDAG &DAG) const;
  177     SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) const;
  178     SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
  179     SDValue LowerUMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
  180     SDValue LowerSMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
  181     SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
  182     SDValue LowerFRAME_TO_ARGS_OFFSET(SDValue Op, SelectionDAG &DAG) const;
  183     SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
  184     SDValue LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
  185     SDValue LowerADJUST_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
  186     SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
  187     SDValue LowerATOMIC_FENCE(SDValue Op, SelectionDAG &DAG) const;
  188     SDValue LowerATOMIC_LOAD(SDValue Op, SelectionDAG &DAG) const;
  189     SDValue LowerATOMIC_STORE(SDValue Op, SelectionDAG &DAG) const;
  199     SDValue TryExpandADDWithMul(SDNode *Op, SelectionDAG &DAG) const;
  200     SDValue ExpandADDSUB(SDNode *Op, SelectionDAG &DAG) const;
  207                                        const SelectionDAG &DAG,
  213                          const SDLoc &dl, SelectionDAG &DAG,
  223                         const SDLoc &dl, SelectionDAG &DAG) const override;
lib/Target/XCore/XCoreSelectionDAGInfo.cpp
   19     SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Dst, SDValue Src,
lib/Target/XCore/XCoreSelectionDAGInfo.h
   24   SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl,
unittests/CodeGen/AArch64SelectionDAGTest.cpp
   65     DAG = std::make_unique<SelectionDAG>(*TM, CodeGenOpt::None);
   77   std::unique_ptr<SelectionDAG> DAG;
usr/include/c++/7.4.0/bits/unique_ptr.h
   68         default_delete(const default_delete<_Up>&) noexcept { }
   72       operator()(_Tp* __ptr) const
   74 	static_assert(!is_void<_Tp>::value,
   76 	static_assert(sizeof(_Tp)>0,
  122 	  using type = _Up*;
  137       using pointer = typename _Ptr<_Tp, _Dp>::type;
  161 	typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
  163       __uniq_ptr_impl<_Tp, _Dp> _M_t;
  166       using pointer	  = typename __uniq_ptr_impl<_Tp, _Dp>::pointer;
  167       using element_type  = _Tp;
  252 	unique_ptr(unique_ptr<_Up, _Ep>&& __u) noexcept
  297           __safe_conversion_up<_Up, _Ep>,
  301 	operator=(unique_ptr<_Up, _Ep>&& __u) noexcept
  811     { typedef unique_ptr<_Tp> __single_object; };
  823     inline typename _MakeUniq<_Tp>::__single_object
  825     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1645     { typedef _Tp&   type; };
 1650     : public __add_lvalue_reference_helper<_Tp>