Home
last modified time | relevance | path

Searched refs:SDNode (Results 1 – 25 of 211) sorted by relevance

123456789

/freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeTypes.h138 SmallVector<SDNode*, 128> Worklist;
180 void NoteDeletion(SDNode *Old, SDNode *New) { in NoteDeletion()
211 SDNode *AnalyzeNewNode(SDNode *N);
335 SDValue PromoteIntRes_SHL(SDNode *N);
341 SDValue PromoteIntRes_SRA(SDNode *N);
342 SDValue PromoteIntRes_SRL(SDNode *N);
356 SDValue PromoteIntRes_ABS(SDNode *N);
394 SDValue PromoteIntOp_FIX(SDNode *N);
477 SDValue ExpandIntOp_BR_CC(SDNode *N);
902 SDValue WidenVecRes_LOAD(SDNode* N);
[all …]
H A DSelectionDAGPrinter.cpp41 return ((const SDNode *) Node)->getNumValues(); in numEdgeDestLabels()
66 SDNode *TargetNode = *I; in getEdgeTarget()
80 static std::string getNodeIdentifierLabel(const SDNode *Node, in getNodeIdentifierLabel()
107 static std::string getSimpleNodeLabel(const SDNode *Node, in getSimpleNodeLabel()
117 static std::string getNodeAttributes(const SDNode *N, in getNodeAttributes()
209 std::map<const SDNode *, std::string>::const_iterator I = in getGraphAttrs()
237 bool SelectionDAG::setSubgraphColorHelper(SDNode *N, const char *Color, DenseSet<SDNode *> &visited, in setSubgraphColorHelper()
271 DenseSet<SDNode *> visited; in setSubgraphColor()
293 SmallVector<SDNode *, 4> GluedNodes; in getGraphNodeLabel()
294 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) in getGraphNodeLabel()
[all …]
H A DSDNodeDbgValue.h24 class SDNode; variable
41 SDNode *getSDNode() const { in getSDNode()
70 static SDDbgOperand fromNode(SDNode *Node, unsigned ResNo) { in fromNode()
104 SDNode *Node; ///< Valid for expressions.
113 SDDbgOperand(SDNode *N, unsigned R) : kind(SDNODE) { in SDDbgOperand()
144 SDNode **AdditionalDependencies;
193 SmallVector<SDNode *> getSDNodes() const { in getSDNodes()
194 SmallVector<SDNode *> Dependencies; in getSDNodes()
198 for (SDNode *Node : getAdditionalDependencies()) in getSDNodes()
203 ArrayRef<SDNode *> getAdditionalDependencies() const { in getAdditionalDependencies()
[all …]
H A DScheduleDAGSDNodes.cpp111 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency()
227 SDNode *Base = Node; in ClusterNeighboringLoads()
240 SDNode *User = *I; in ClusterNeighboringLoads()
269 SmallVector<SDNode*, 4> Loads; in ClusterNeighboringLoads()
276 SDNode *Load = O2SMap[Offset]; in ClusterNeighboringLoads()
288 SDNode *Lead = Loads[0]; in ClusterNeighboringLoads()
294 SDNode *Load = Loads[I]; in ClusterNeighboringLoads()
313 SDNode *Node = &NI; in ClusterNodes()
370 SDNode *N = NI; in BuildSchedUnits()
613 SDNode *N = SU->getNode(); in computeLatency()
[all …]
H A DLegalizeFloatTypes.cpp1354 void DAGTypeLegalizer::ExpandFloatRes_FCEIL(SDNode *N, in ExpandFloatRes_FCEIL()
1372 void DAGTypeLegalizer::ExpandFloatRes_FCOS(SDNode *N, in ExpandFloatRes_FCOS()
1390 void DAGTypeLegalizer::ExpandFloatRes_FEXP(SDNode *N, in ExpandFloatRes_FEXP()
1398 void DAGTypeLegalizer::ExpandFloatRes_FEXP2(SDNode *N, in ExpandFloatRes_FEXP2()
1414 void DAGTypeLegalizer::ExpandFloatRes_FLOG(SDNode *N, in ExpandFloatRes_FLOG()
1422 void DAGTypeLegalizer::ExpandFloatRes_FLOG2(SDNode *N, in ExpandFloatRes_FLOG2()
1516 void DAGTypeLegalizer::ExpandFloatRes_FPOW(SDNode *N, in ExpandFloatRes_FPOW()
1524 void DAGTypeLegalizer::ExpandFloatRes_FPOWI(SDNode *N, in ExpandFloatRes_FPOWI()
1540 void DAGTypeLegalizer::ExpandFloatRes_FREM(SDNode *N, in ExpandFloatRes_FREM()
1548 void DAGTypeLegalizer::ExpandFloatRes_FRINT(SDNode *N, in ExpandFloatRes_FRINT()
[all …]
H A DInstrEmitter.h47 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()
160 void EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned,
162 void EmitSpecialNode(SDNode *Node, bool IsClone, bool IsCloned,
H A DScheduleDAGFast.cpp214 SDNode *N = SU->getNode(); in CopyAndMoveSuccessors()
653 std::vector<SDNode*> Sequence;
654 DenseMap<SDNode*, SDNode*> GluedMap; // Cache glue to its user
656 void ScheduleNode(SDNode *N);
675 SDNode *GluedOpN = nullptr; in ScheduleNode()
678 SDNode *OpN = Op.getNode(); in ScheduleNode()
693 DenseMap<SDNode*, SDNode*>::iterator DI = GluedMap.find(OpN); in ScheduleNode()
709 static SDNode *findGluedUser(SDNode *N) { in findGluedUser()
718 SmallVector<SDNode*, 8> Glues; in Schedule()
721 SDNode *N = &Node; in Schedule()
[all …]
H A DLegalizeVectorOps.cpp91 SDValue UnrollVSETCC(SDNode *Node);
108 SDValue ExpandSEXTINREG(SDNode *Node);
131 SDValue ExpandBSWAP(SDNode *Node);
135 SDValue ExpandVSELECT(SDNode *Node);
136 SDValue ExpandSELECT(SDNode *Node);
138 SDValue ExpandStore(SDNode *N);
139 SDValue ExpandFNEG(SDNode *Node);
1342 void VectorLegalizer::ExpandFSUB(SDNode *Node, in ExpandFSUB()
1416 void VectorLegalizer::ExpandMULO(SDNode *Node, in ExpandMULO()
1428 SDNode *N = Node; in ExpandFixedPointDiv()
[all …]
H A DScheduleDAGSDNodes.h65 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);
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonISelDAGToDAG.h82 SDNode *StoreInstrForLoadIntrinsic(MachineSDNode *LoadN, SDNode *IntN);
93 void SelectLoad(SDNode *N);
96 void SelectStore(SDNode *N);
97 void SelectSHL(SDNode *N);
107 void SelectVAlign(SDNode *N);
110 void SelectP2D(SDNode *N);
111 void SelectD2P(SDNode *N);
112 void SelectQ2V(SDNode *N);
113 void SelectV2Q(SDNode *N);
152 int getWeight(SDNode *N);
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/NVPTX/
H A DNVPTXISelDAGToDAG.h58 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 …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrFragmentsSIMD.td69 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",
269 def X86vpcom : SDNode<"X86ISD::VPCOM",
411 def X86Movsd : SDNode<"X86ISD::MOVSD",
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSelectionDAGISel.h84 virtual void Select(SDNode *N) = 0;
99 virtual bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const;
105 static bool IsLegalToFold(SDValue N, SDNode *U, SDNode *Root,
221 void ReplaceUses(SDNode *F, SDNode *T) { in ReplaceUses()
227 void ReplaceNode(SDNode *F, SDNode *T) { in ReplaceNode()
282 SDNode *N, unsigned PredNo, in CheckNodePredicateWithOperands()
287 virtual bool CheckComplexPattern(SDNode *Root, SDNode *Parent, SDValue N, in CheckComplexPattern()
317 void Select_UNDEF(SDNode *N);
318 void CannotYetSelect(SDNode *N);
320 void Select_FREEZE(SDNode *N);
[all …]
H A DSelectionDAGNodes.h67 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;
720 friend class SDNode;
880 static bool areOnlyUsersOf(ArrayRef<const SDNode *> Nodes, const SDNode *N);
2604 const SDNode *Node;
[all …]
H A DSelectionDAG.h237 SDNode EntryNode;
305 virtual void NodeDeleted(SDNode *N, SDNode *E);
315 std::function<void(SDNode *, SDNode *)> Callback;
1374 SDNode *UpdateNodeOperands(SDNode *N, SDValue Op);
1382 SDNode *UpdateNodeOperands(SDNode *N, ArrayRef<SDValue> Ops);
1406 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1408 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1410 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1424 SDNode *MorphNodeTo(SDNode *N, unsigned Opc, SDVTList VTs,
1430 SDNode *mutateStrictFPToFP(SDNode *Node);
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUInstrInfo.td72 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<
254 def AMDGPUstore_mskor : SDNode<"AMDGPUISD::STORE_MSKOR",
263 def AMDGPUround : SDNode<"ISD::FROUND",
269 def AMDGPUbfm : SDNode<"AMDGPUISD::BFM", SDTIntBinOp>;
309 def AMDGPUfdot2_impl : SDNode<"AMDGPUISD::FDOT2",
[all …]
H A DSIISelLowering.h156 SDValue performUCharToFloatCombine(SDNode *N,
158 SDValue performSHLPtrCombine(SDNode *N,
169 SDValue performAndCombine(SDNode *N, DAGCombinerInfo &DCI) const;
170 SDValue performOrCombine(SDNode *N, DAGCombinerInfo &DCI) const;
171 SDValue performXorCombine(SDNode *N, DAGCombinerInfo &DCI) const;
191 const SDNode *N0, const SDNode *N1) const;
206 unsigned isCFIntrinsic(const SDNode *Intr) const;
295 bool isMemOpUniform(const SDNode *N) const;
296 bool isMemOpHasNoClobberedMemOperand(const SDNode *N) const;
402 SDNode *legalizeTargetIndependentNode(SDNode *Node, SelectionDAG &DAG) const;
[all …]
H A DAMDGPUISelLowering.h75 SDValue performLoadCombine(SDNode *N, DAGCombinerInfo &DCI) const;
83 SDValue performShlCombine(SDNode *N, DAGCombinerInfo &DCI) const;
84 SDValue performSraCombine(SDNode *N, DAGCombinerInfo &DCI) const;
85 SDValue performSrlCombine(SDNode *N, DAGCombinerInfo &DCI) const;
87 SDValue performMulCombine(SDNode *N, DAGCombinerInfo &DCI) const;
97 SDValue performRcpCombine(SDNode *N, DAGCombinerInfo &DCI) const;
151 static bool allUsesHaveSourceMods(const SDNode *N,
178 bool shouldReduceLoadWidth(SDNode *Load,
192 bool isSDNodeAlwaysUniform(const SDNode *N) const override;
217 void ReplaceNodeResults(SDNode * N,
[all …]
H A DAMDGPUISelDAGToDAG.cpp77 static SDNode *packConstantV2I16(const SDNode *N, SelectionDAG &DAG, in packConstantV2I16()
94 static SDNode *packNegConstantV2I16(const SDNode *N, SelectionDAG &DAG) { in packNegConstantV2I16()
176 SDNode *glueCopyToOp(SDNode *N, SDValue NewChain, SDValue Glue) const;
177 SDNode *glueCopyToM0(SDNode *N, SDValue Val) const;
178 SDNode *glueCopyToM0LDSInit(SDNode *N) const;
662 SDNode *AMDGPUDAGToDAGISel::glueCopyToOp(SDNode *N, SDValue NewChain, in glueCopyToOp()
683 SDNode *AMDGPUDAGToDAGISel::glueCopyToM0LDSInit(SDNode *N) const { in glueCopyToM0LDSInit()
702 SDNode *Hi = in buildSMovImm64()
1112 SDNode *AddLo; in SelectADD_SUB_I64()
1945 SDNode *VMov = in SelectGlobalSAddr()
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/Target/
H A DTargetSelectionDAG.td312 class SDNode<string opcode, SDTypeProfile typeprof,
511 def strict_fadd : SDNode<"ISD::STRICT_FADD",
513 def strict_fsub : SDNode<"ISD::STRICT_FSUB",
515 def strict_fmul : SDNode<"ISD::STRICT_FMUL",
517 def strict_fdiv : SDNode<"ISD::STRICT_FDIV",
519 def strict_frem : SDNode<"ISD::STRICT_FREM",
521 def strict_fma : SDNode<"ISD::STRICT_FMA",
748 SDNode Opcode = opc;
881 SDNode ImmNode = imm>
1559 multiclass ternary_atomic_op<SDNode atomic_op> {
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZOperators.td260 def z_pcrel_offset : SDNode<"SystemZISD::PCREL_OFFSET",
271 def z_select_ccmask_1 : SDNode<"SystemZISD::SELECT_CCMASK",
292 def z_loadbswap : SDNode<"SystemZISD::LRV", SDTLoad,
296 def z_loadeswap : SDNode<"SystemZISD::VLER", SDTLoad,
304 def z_vector_insert : SDNode<"ISD::INSERT_VECTOR_ELT",
306 def z_vector_extract : SDNode<"ISD::EXTRACT_VECTOR_ELT",
371 def z_vstrc_cc : SDNode<"SystemZISD::VSTRC_CC",
373 def z_vstrcz_cc : SDNode<"SystemZISD::VSTRCZ_CC",
375 def z_vstrs_cc : SDNode<"SystemZISD::VSTRS_CC",
377 def z_vstrsz_cc : SDNode<"SystemZISD::VSTRSZ_CC",
[all …]
H A DSystemZISelLowering.h672 SDValue combineMERGE(SDNode *N, DAGCombinerInfo &DCI) const;
674 SDValue combineLOAD(SDNode *N, DAGCombinerInfo &DCI) const;
675 SDValue combineSTORE(SDNode *N, DAGCombinerInfo &DCI) const;
679 SDValue combineFP_ROUND(SDNode *N, DAGCombinerInfo &DCI) const;
680 SDValue combineFP_EXTEND(SDNode *N, DAGCombinerInfo &DCI) const;
681 SDValue combineINT_TO_FP(SDNode *N, DAGCombinerInfo &DCI) const;
682 SDValue combineBSWAP(SDNode *N, DAGCombinerInfo &DCI) const;
683 SDValue combineBR_CCMASK(SDNode *N, DAGCombinerInfo &DCI) const;
685 SDValue combineGET_CCMASK(SDNode *N, DAGCombinerInfo &DCI) const;
686 SDValue combineIntDIVREM(SDNode *N, DAGCombinerInfo &DCI) const;
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AVR/
H A DAVRISelDAGToDAG.cpp40 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()
371 SDNode *ResNode; in select()
443 SDNode *ResNode = in select()
468 bool AVRDAGToDAGISel::selectMultiplication(llvm::SDNode *N) { in selectMultiplication()
513 void AVRDAGToDAGISel::Select(SDNode *N) { in Select()
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCISelLowering.h644 int isVSLDOIShuffleMask(SDNode *N, unsigned ShuffleKind,
801 bool getPreIndexedAddressParts(SDNode *N, SDValue &Base,
1344 SDValue combineSHL(SDNode *N, DAGCombinerInfo &DCI) const;
1345 SDValue combineSRA(SDNode *N, DAGCombinerInfo &DCI) const;
1346 SDValue combineSRL(SDNode *N, DAGCombinerInfo &DCI) const;
1347 SDValue combineMUL(SDNode *N, DAGCombinerInfo &DCI) const;
1348 SDValue combineADD(SDNode *N, DAGCombinerInfo &DCI) const;
1376 combineElementTruncationToVectorTruncation(SDNode *N,
1409 unsigned computeMOFlags(const SDNode *Parent, SDValue N,
1420 bool isIntS16Immediate(SDNode *N, int16_t &Imm);
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/IR/
H A DVPIntrinsics.def35 // Register a new VP SDNode and begin its property scope.
36 // When the SDNode scope is nested within a VP intrinsic scope, it is
38 // is one VP intrinsic that maps directly to one SDNode that goes by the
40 // scopes for both the VPIntrinsic and the SDNode at once.
44 // the SDNode is used.
45 // \p TDNAME The name of the TableGen definition of this SDNode.
52 // End the property scope of a new VP SDNode.
57 // Helper macros for the common "1:1 - Intrinsic : SDNode" case.
61 // scopes for both the VPIntrinsic and the SDNode at once.
64 // name of the intrinsic and the TableGen def of the SDNode).
[all …]

123456789