| /llvm-project-15.0.7/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | LegalizeTypes.h | 137 SmallVector<SDNode*, 128> Worklist; 179 void NoteDeletion(SDNode *Old, SDNode *New) { in NoteDeletion() 210 SDNode *AnalyzeNewNode(SDNode *N); 338 SDValue PromoteIntRes_SHL(SDNode *N); 344 SDValue PromoteIntRes_SRA(SDNode *N); 345 SDValue PromoteIntRes_SRL(SDNode *N); 360 SDValue PromoteIntRes_ABS(SDNode *N); 400 SDValue PromoteIntOp_FIX(SDNode *N); 487 SDValue ExpandIntOp_BR_CC(SDNode *N); 489 SDValue ExpandIntOp_SETCC(SDNode *N); [all …]
|
| H A D | SelectionDAGPrinter.cpp | 37 return ((const SDNode *) Node)->getNumValues(); in numEdgeDestLabels() 62 SDNode *TargetNode = *I; in getEdgeTarget() 76 static std::string getNodeIdentifierLabel(const SDNode *Node, in getNodeIdentifierLabel() 103 static std::string getSimpleNodeLabel(const SDNode *Node, in getSimpleNodeLabel() 113 static std::string getNodeAttributes(const SDNode *N, in getNodeAttributes() 205 std::map<const SDNode *, std::string>::const_iterator I = in getGraphAttrs() 233 bool SelectionDAG::setSubgraphColorHelper(SDNode *N, const char *Color, DenseSet<SDNode *> &visited, in setSubgraphColorHelper() 267 DenseSet<SDNode *> visited; in setSubgraphColor() 289 SmallVector<SDNode *, 4> GluedNodes; in getGraphNodeLabel() 290 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) in getGraphNodeLabel() [all …]
|
| H A D | ScheduleDAGSDNodes.cpp | 110 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency() 226 SDNode *Base = Node; in ClusterNeighboringLoads() 239 SDNode *User = *I; in ClusterNeighboringLoads() 268 SmallVector<SDNode*, 4> Loads; in ClusterNeighboringLoads() 287 SDNode *Lead = Loads[0]; in ClusterNeighboringLoads() 293 SDNode *Load = Loads[I]; in ClusterNeighboringLoads() 312 SDNode *Node = &NI; in ClusterNodes() 369 SDNode *N = NI; in BuildSchedUnits() 386 for (SDNode *U : N->uses()) in BuildSchedUnits() 611 SDNode *N = SU->getNode(); in computeLatency() [all …]
|
| H A D | SDNodeDbgValue.h | 25 class SDNode; variable 42 SDNode *getSDNode() const { in getSDNode() 71 static SDDbgOperand fromNode(SDNode *Node, unsigned ResNo) { in fromNode() 105 SDNode *Node; ///< Valid for expressions. 114 SDDbgOperand(SDNode *N, unsigned R) : kind(SDNODE) { in SDDbgOperand() 145 SDNode **AdditionalDependencies; 194 SmallVector<SDNode *> getSDNodes() const { in getSDNodes() 195 SmallVector<SDNode *> Dependencies; in getSDNodes() 199 for (SDNode *Node : getAdditionalDependencies()) in getSDNodes() 204 ArrayRef<SDNode *> getAdditionalDependencies() const { in getAdditionalDependencies() [all …]
|
| H A D | LegalizeFloatTypes.cpp | 1375 void DAGTypeLegalizer::ExpandFloatRes_FCEIL(SDNode *N, in ExpandFloatRes_FCEIL() 1393 void DAGTypeLegalizer::ExpandFloatRes_FCOS(SDNode *N, in ExpandFloatRes_FCOS() 1411 void DAGTypeLegalizer::ExpandFloatRes_FEXP(SDNode *N, in ExpandFloatRes_FEXP() 1419 void DAGTypeLegalizer::ExpandFloatRes_FEXP2(SDNode *N, in ExpandFloatRes_FEXP2() 1435 void DAGTypeLegalizer::ExpandFloatRes_FLOG(SDNode *N, in ExpandFloatRes_FLOG() 1443 void DAGTypeLegalizer::ExpandFloatRes_FLOG2(SDNode *N, in ExpandFloatRes_FLOG2() 1537 void DAGTypeLegalizer::ExpandFloatRes_FPOW(SDNode *N, in ExpandFloatRes_FPOW() 1545 void DAGTypeLegalizer::ExpandFloatRes_FPOWI(SDNode *N, in ExpandFloatRes_FPOWI() 1561 void DAGTypeLegalizer::ExpandFloatRes_FREM(SDNode *N, in ExpandFloatRes_FREM() 1569 void DAGTypeLegalizer::ExpandFloatRes_FRINT(SDNode *N, in ExpandFloatRes_FRINT() [all …]
|
| H A D | InstrEmitter.h | 47 void EmitCopyFromReg(SDNode *Node, unsigned ResNo, 52 void CreateVirtualRegisters(SDNode *Node, 92 void EmitSubregNode(SDNode *Node, DenseMap<SDValue, Register> &VRBaseMap, 99 void EmitCopyToRegClassNode(SDNode *Node, 104 void EmitRegSequence(SDNode *Node, DenseMap<SDValue, Register> &VRBaseMap, 110 static unsigned CountResults(SDNode *Node); 140 void EmitNode(SDNode *Node, bool IsClone, bool IsCloned, in EmitNode() 161 void EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned, 163 void EmitSpecialNode(SDNode *Node, bool IsClone, bool IsCloned,
|
| H A D | ScheduleDAGFast.cpp | 210 SDNode *N = SU->getNode(); in CopyAndMoveSuccessors() 670 std::vector<SDNode*> Sequence; 671 DenseMap<SDNode*, SDNode*> GluedMap; // Cache glue to its user 673 void ScheduleNode(SDNode *N); 692 SDNode *GluedOpN = nullptr; in ScheduleNode() 695 SDNode *OpN = Op.getNode(); in ScheduleNode() 710 DenseMap<SDNode*, SDNode*>::iterator DI = GluedMap.find(OpN); in ScheduleNode() 726 static SDNode *findGluedUser(SDNode *N) { in findGluedUser() 735 SmallVector<SDNode*, 8> Glues; in Schedule() 738 SDNode *N = &Node; in Schedule() [all …]
|
| H A D | ScheduleDAGSDNodes.h | 65 static bool isPassiveNode(SDNode *Node) { in isPassiveNode() 86 SUnit *newSUnit(SDNode *N); 107 virtual void computeOperandLatency(SDNode *Def, SDNode *Use, 140 const SDNode *Node; 155 const SDNode *GetNode() const { in GetNode() 178 void ClusterNeighboringLoads(SDNode *Node);
|
| H A D | LegalizeVectorOps.cpp | 88 SDValue UnrollVSETCC(SDNode *Node); 105 SDValue ExpandSEXTINREG(SDNode *Node); 128 SDValue ExpandBSWAP(SDNode *Node); 132 SDValue ExpandVSELECT(SDNode *Node); 133 SDValue ExpandVP_SELECT(SDNode *Node); 134 SDValue ExpandVP_MERGE(SDNode *Node); 135 SDValue ExpandSELECT(SDNode *Node); 137 SDValue ExpandStore(SDNode *N); 138 SDValue ExpandFNEG(SDNode *Node); 1537 SDNode *N = Node; in ExpandFixedPointDiv() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/Hexagon/ |
| H A D | HexagonISelDAGToDAG.h | 82 SDNode *StoreInstrForLoadIntrinsic(MachineSDNode *LoadN, SDNode *IntN); 93 void SelectLoad(SDNode *N); 96 void SelectStore(SDNode *N); 97 void SelectSHL(SDNode *N); 106 void SelectVAlign(SDNode *N); 109 void SelectP2D(SDNode *N); 110 void SelectD2P(SDNode *N); 111 void SelectQ2V(SDNode *N); 112 void SelectV2Q(SDNode *N); 151 int getWeight(SDNode *N); [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/NVPTX/ |
| H A D | NVPTXISelDAGToDAG.h | 58 void Select(SDNode *N) override; 62 bool tryLoad(SDNode *N); 63 bool tryLoadVector(SDNode *N); 64 bool tryLDGLDU(SDNode *N); 65 bool tryStore(SDNode *N); 66 bool tryStoreVector(SDNode *N); 67 bool tryLoadParam(SDNode *N); 68 bool tryStoreRetval(SDNode *N); 69 bool tryStoreParam(SDNode *N); 73 bool tryBFE(SDNode *N); [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/X86/ |
| H A D | X86InstrFragmentsSIMD.td | 69 def X86pshufb : SDNode<"X86ISD::PSHUFB", 72 def X86psadbw : SDNode<"X86ISD::PSADBW", 82 def X86andnp : SDNode<"X86ISD::ANDNP", 88 def X86pextrb : SDNode<"X86ISD::PEXTRB", 91 def X86pextrw : SDNode<"X86ISD::PEXTRW", 94 def X86pinsrb : SDNode<"X86ISD::PINSRB", 97 def X86pinsrw : SDNode<"X86ISD::PINSRW", 132 def X86vfpext : SDNode<"X86ISD::VFPEXT", 407 def X86Movsd : SDNode<"X86ISD::MOVSD", 411 def X86Movss : SDNode<"X86ISD::MOVSS", [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUISelDAGToDAG.h | 56 static inline SDNode *packConstantV2I16(const SDNode *N, SelectionDAG &DAG, 72 static inline SDNode *packNegConstantV2I16(const SDNode *N, SelectionDAG &DAG) { in packNegConstantV2I16() 104 void Select(SDNode *N) override; 148 SDNode *glueCopyToOp(SDNode *N, SDValue NewChain, SDValue Glue) const; 149 SDNode *glueCopyToM0(SDNode *N, SDValue Val) const; 150 SDNode *glueCopyToM0LDSInit(SDNode *N) const; 252 void SelectAddcSubb(SDNode *N); 256 void SelectMUL_LOHI(SDNode *N); 262 void SelectS_BFE(SDNode *N); 264 void SelectBRCOND(SDNode *N); [all …]
|
| H A D | AMDGPUInstrInfo.td | 72 def callseq_start : SDNode<"ISD::CALLSEQ_START", 77 def callseq_end : SDNode<"ISD::CALLSEQ_END", 82 def AMDGPUcall : SDNode<"AMDGPUISD::CALL", 88 def AMDGPUtc_return: SDNode<"AMDGPUISD::TC_RETURN", 93 def AMDGPUtrap : SDNode<"AMDGPUISD::TRAP", 98 def AMDGPUconstdata_ptr : SDNode< 251 def AMDGPUstore_mskor : SDNode<"AMDGPUISD::STORE_MSKOR", 260 def AMDGPUround : SDNode<"ISD::FROUND", 266 def AMDGPUbfm : SDNode<"AMDGPUISD::BFM", SDTIntBinOp>; 313 def AMDGPUfdot2_impl : SDNode<"AMDGPUISD::FDOT2", [all …]
|
| H A D | SIISelLowering.h | 166 SDValue performUCharToFloatCombine(SDNode *N, 168 SDValue performSHLPtrCombine(SDNode *N, 180 SDValue performOrCombine(SDNode *N, DAGCombinerInfo &DCI) const; 201 const SDNode *N0, const SDNode *N1) const; 217 unsigned isCFIntrinsic(const SDNode *Intr) const; 242 bool shouldExpandVectorDynExt(SDNode *N) const; 312 bool isMemOpUniform(const SDNode *N) const; 313 bool isMemOpHasNoClobberedMemOperand(const SDNode *N) const; 427 SDNode *legalizeTargetIndependentNode(SDNode *Node, SelectionDAG &DAG) const; 465 bool isSDNodeSourceOfDivergence(const SDNode *N, [all …]
|
| H A D | AMDGPUISelLowering.h | 81 SDValue performLoadCombine(SDNode *N, DAGCombinerInfo &DCI) const; 89 SDValue performShlCombine(SDNode *N, DAGCombinerInfo &DCI) const; 90 SDValue performSraCombine(SDNode *N, DAGCombinerInfo &DCI) const; 91 SDValue performSrlCombine(SDNode *N, DAGCombinerInfo &DCI) const; 93 SDValue performMulCombine(SDNode *N, DAGCombinerInfo &DCI) const; 104 SDValue performRcpCombine(SDNode *N, DAGCombinerInfo &DCI) const; 158 static bool allUsesHaveSourceMods(const SDNode *N, 185 bool shouldReduceLoadWidth(SDNode *Load, 199 bool isSDNodeAlwaysUniform(const SDNode *N) const override; 224 void ReplaceNodeResults(SDNode * N, [all …]
|
| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | SelectionDAGISel.h | 101 virtual bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const; 107 static bool IsLegalToFold(SDValue N, SDNode *U, SDNode *Root, 223 void ReplaceUses(SDNode *F, SDNode *T) { in ReplaceUses() 229 void ReplaceNode(SDNode *F, SDNode *T) { in ReplaceNode() 284 SDNode *N, unsigned PredNo, in CheckNodePredicateWithOperands() 289 virtual bool CheckComplexPattern(SDNode *Root, SDNode *Parent, SDValue N, in CheckComplexPattern() 319 void Select_UNDEF(SDNode *N); 320 void CannotYetSelect(SDNode *N); 322 void Select_FREEZE(SDNode *N); 327 void Select_STACKMAP(SDNode *N); [all …]
|
| H A D | SelectionDAGNodes.h | 67 class SDNode; variable 258 using SimpleType = SDNode *; 281 SDNode *User = nullptr; 329 friend class SDNode; 361 using SimpleType = SDNode *; 455 class SDNode : public FoldingSetNode, public ilist_node<SDNode> { 477 friend class SDNode; 735 friend class SDNode; 893 static bool areOnlyUsersOf(ArrayRef<const SDNode *> Nodes, const SDNode *N); 2951 const SDNode *Node; [all …]
|
| H A D | SelectionDAG.h | 241 SDNode EntryNode; 317 virtual void NodeDeleted(SDNode *N, SDNode *E); 327 std::function<void(SDNode *, SDNode *)> Callback; 1547 SDNode *UpdateNodeOperands(SDNode *N, SDValue Op); 1555 SDNode *UpdateNodeOperands(SDNode *N, ArrayRef<SDValue> Ops); 1579 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT, 1581 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT, 1583 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT, 1597 SDNode *MorphNodeTo(SDNode *N, unsigned Opc, SDVTList VTs, 1603 SDNode *mutateStrictFPToFP(SDNode *Node); [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/VE/ |
| H A D | VVPInstrInfo.td | 16 // SDNode. 127 class vvp_commutative<SDNode RootOp> : 133 class vvp_fma_commutative<SDNode RootOp> : 140 def vvp_add : SDNode<"VEISD::VVP_ADD", SDTIntBinOpVVP>; 143 def vvp_sub : SDNode<"VEISD::VVP_SUB", SDTIntBinOpVVP>; 145 def vvp_mul : SDNode<"VEISD::VVP_MUL", SDTIntBinOpVVP>; 148 def vvp_sdiv : SDNode<"VEISD::VVP_SDIV", SDTIntBinOpVVP>; 154 def vvp_or : SDNode<"VEISD::VVP_OR", SDTIntBinOpVVP>; 181 def vvp_load : SDNode<"VEISD::VVP_LOAD", SDTLoadVVP, 183 def vvp_store : SDNode<"VEISD::VVP_STORE", SDTStoreVVP, [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/SystemZ/ |
| H A D | SystemZOperators.td | 253 def z_pcrel_offset : SDNode<"SystemZISD::PCREL_OFFSET", 264 def z_select_ccmask_1 : SDNode<"SystemZISD::SELECT_CCMASK", 285 def z_loadbswap : SDNode<"SystemZISD::LRV", SDTLoad, 289 def z_loadeswap : SDNode<"SystemZISD::VLER", SDTLoad, 297 def z_vector_insert : SDNode<"ISD::INSERT_VECTOR_ELT", 299 def z_vector_extract : SDNode<"ISD::EXTRACT_VECTOR_ELT", 364 def z_vstrc_cc : SDNode<"SystemZISD::VSTRC_CC", 366 def z_vstrcz_cc : SDNode<"SystemZISD::VSTRCZ_CC", 368 def z_vstrs_cc : SDNode<"SystemZISD::VSTRS_CC", 370 def z_vstrsz_cc : SDNode<"SystemZISD::VSTRSZ_CC", [all …]
|
| /llvm-project-15.0.7/llvm/include/llvm/Target/ |
| H A D | TargetSelectionDAG.td | 318 class SDNode<string opcode, SDTypeProfile typeprof, 521 def strict_fadd : SDNode<"ISD::STRICT_FADD", 523 def strict_fsub : SDNode<"ISD::STRICT_FSUB", 525 def strict_fmul : SDNode<"ISD::STRICT_FMUL", 527 def strict_fdiv : SDNode<"ISD::STRICT_FDIV", 529 def strict_frem : SDNode<"ISD::STRICT_FREM", 531 def strict_fma : SDNode<"ISD::STRICT_FMA", 771 SDNode Opcode = opc; 908 SDNode ImmNode = imm> 1590 multiclass ternary_atomic_op<SDNode atomic_op> { [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCVISelDAGToDAG.h | 43 void Select(SDNode *Node) override; 74 bool hasAllNBitUsers(SDNode *Node, unsigned Bits) const; 91 void addVectorLoadStoreOperands(SDNode *Node, unsigned SEWImm, 97 void selectVLSEG(SDNode *Node, bool IsMasked, bool IsStrided); 98 void selectVLSEGFF(SDNode *Node, bool IsMasked); 99 void selectVLXSEG(SDNode *Node, bool IsMasked, bool IsOrdered); 100 void selectVSSEG(SDNode *Node, bool IsMasked, bool IsStrided); 101 void selectVSXSEG(SDNode *Node, bool IsMasked, bool IsOrdered); 103 void selectVSETVLI(SDNode *Node); 131 bool doPeepholeSExtW(SDNode *Node); [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/M68k/ |
| H A D | M68kISelDAGToDAG.cpp | 184 bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const override; 200 void Select(SDNode *N) override; 217 std::pair<bool, SDNode *> selectNode(SDNode *Node); 219 bool SelectARI(SDNode *Parent, SDValue N, SDValue &Base); 220 bool SelectARIPI(SDNode *Parent, SDValue N, SDValue &Base); 221 bool SelectARIPD(SDNode *Parent, SDValue N, SDValue &Base); 225 bool SelectAL(SDNode *Parent, SDValue N, SDValue &Sym); 226 bool SelectPCD(SDNode *Parent, SDValue N, SDValue &Imm); 311 SDNode *getGlobalBaseReg(); 369 SDNode *M68kDAGToDAGISel::getGlobalBaseReg() { in getGlobalBaseReg() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/AVR/ |
| H A D | AVRISelDAGToDAG.cpp | 40 bool selectIndexedLoad(SDNode *N); 50 void Select(SDNode *N) override; 51 bool trySelect(SDNode *N); 53 template <unsigned NodeType> bool select(SDNode *N); 54 bool selectMultiplication(SDNode *N); 121 bool AVRDAGToDAGISel::selectIndexedLoad(SDNode *N) { in selectIndexedLoad() 159 SDNode *ResNode = in selectIndexedLoad() 371 SDNode *ResNode; in select() 466 SDNode *ResNode = in select() 536 void AVRDAGToDAGISel::Select(SDNode *N) { in Select() [all …]
|