HomeSort by: relevance | last modified time | path
    Searched refs:SDNode (Results 1 - 25 of 124) sorted by relevancy

1 2 3 4 5

  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
LegalizeTypes.h 81 bool IgnoreNodeResults(SDNode *N) const {
138 SmallVector<SDNode*, 128> Worklist;
180 void NoteDeletion(SDNode *Old, SDNode *New) {
211 SDNode *AnalyzeNewNode(SDNode *N);
221 bool CustomLowerNode(SDNode *N, EVT VT, bool LegalizeResult);
222 bool CustomWidenLowerNode(SDNode *N, EVT VT);
227 SDValue DisintegrateMERGE_VALUES(SDNode *N, unsigned ResNo);
231 std::pair<SDValue, SDValue> ExpandAtomic(SDNode *Node)
    [all...]
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);
132 void EmitNode(SDNode *Node, bool IsClone, bool IsCloned,
152 void EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned,
154 void EmitSpecialNode(SDNode *Node, bool IsClone, bool IsCloned,
SelectionDAGPrinter.cpp 41 return ((const SDNode *) Node)->getNumValues();
45 return ((const SDNode *) Node)->getValueType(i).getEVTString();
50 return itostr(I - SDNodeIterator::begin((const SDNode *) Node));
66 SDNode *TargetNode = *I;
80 static std::string getNodeIdentifierLabel(const SDNode *Node,
107 static std::string getSimpleNodeLabel(const SDNode *Node,
116 std::string getNodeLabel(const SDNode *Node, const SelectionDAG *Graph);
117 static std::string getNodeAttributes(const SDNode *N,
141 std::string DOTGraphTraits<SelectionDAG*>::getNodeLabel(const SDNode *Node,
195 void SelectionDAG::setGraphAttrs(const SDNode *N, const char *Attrs)
    [all...]
ScheduleDAGSDNodes.h 1 //===---- ScheduleDAGSDNodes.h - SDNode Scheduling --------------*- C++ -*-===//
10 // scheduling for an SDNode-based dependency graph.
32 /// ScheduleDAGSDNodes - A ScheduleDAG for scheduling SDNode-based DAGs.
42 /// SDNode-based scheduling graphs do not use SDep::Anti or SDep::Output
65 static bool isPassiveNode(SDNode *Node) {
86 SUnit *newSUnit(SDNode *N);
107 virtual void computeOperandLatency(SDNode *Def, SDNode *Use,
140 const SDNode *Node;
155 const SDNode *GetNode() const
    [all...]
SDNodeDbgValue.h 24 class SDNode;
29 /// an SDNode, a constant, a stack location, or a virtual register.
33 SDNODE = 0, ///< Value is the result of an expression.
40 /// Returns the SDNode* for a register ref
41 SDNode *getSDNode() const {
42 assert(kind == SDNODE);
48 assert(kind == SDNODE);
70 static SDDbgOperand fromNode(SDNode *Node, unsigned ResNo) {
88 case SDNODE:
104 SDNode *Node; ///< Valid for expressions
    [all...]
ScheduleDAGSDNodes.cpp 69 SUnit *ScheduleDAGSDNodes::newSUnit(SDNode *N) {
111 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op,
140 static void CloneNodeWithValues(SDNode *N, SelectionDAG *DAG, ArrayRef<EVT> VTs,
161 static bool AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) {
162 SDNode *GlueDestNode = Glue.getNode();
186 static void RemoveUnusedGlue(SDNode *N, SelectionDAG *DAG) {
200 void ScheduleDAGSDNodes::ClusterNeighboringLoads(SDNode *Node) {
211 auto hasTiedInput = [this](const SDNode *N) {
223 SmallPtrSet<SDNode*, 16> Visited
    [all...]
LegalizeVectorOps.cpp 78 SDValue TranslateLegalizeResults(SDValue Op, SDNode *Result);
88 bool LowerOperationWrapper(SDNode *N, SmallVectorImpl<SDValue> &Results);
91 SDValue UnrollVSETCC(SDNode *Node);
97 void Expand(SDNode *Node, SmallVectorImpl<SDValue> &Results);
101 void ExpandFP_TO_UINT(SDNode *Node, SmallVectorImpl<SDValue> &Results);
105 void ExpandUINT_TO_FLOAT(SDNode *Node, SmallVectorImpl<SDValue> &Results);
108 SDValue ExpandSEXTINREG(SDNode *Node);
115 SDValue ExpandANY_EXTEND_VECTOR_INREG(SDNode *Node);
122 SDValue ExpandSIGN_EXTEND_VECTOR_INREG(SDNode *Node);
128 SDValue ExpandZERO_EXTEND_VECTOR_INREG(SDNode *Node)
    [all...]
LegalizeFloatTypes.cpp 48 void DAGTypeLegalizer::SoftenFloatResult(SDNode *N, unsigned ResNo) {
156 SDValue DAGTypeLegalizer::SoftenFloatRes_Unary(SDNode *N, RTLIB::Libcall LC) {
175 SDValue DAGTypeLegalizer::SoftenFloatRes_Binary(SDNode *N, RTLIB::Libcall LC) {
196 SDValue DAGTypeLegalizer::SoftenFloatRes_BITCAST(SDNode *N) {
200 SDValue DAGTypeLegalizer::SoftenFloatRes_FREEZE(SDNode *N) {
206 SDValue DAGTypeLegalizer::SoftenFloatRes_MERGE_VALUES(SDNode *N,
212 SDValue DAGTypeLegalizer::SoftenFloatRes_BUILD_PAIR(SDNode *N) {
221 SDValue DAGTypeLegalizer::SoftenFloatRes_ConstantFP(SDNode *N) {
245 SDValue DAGTypeLegalizer::SoftenFloatRes_EXTRACT_VECTOR_ELT(SDNode *N, unsigned ResNo) {
252 SDValue DAGTypeLegalizer::SoftenFloatRes_FABS(SDNode *N)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/NVPTX/
NVPTXISelDAGToDAG.h 58 void Select(SDNode *N) override;
59 bool tryIntrinsicNoChain(SDNode *N);
60 bool tryIntrinsicChain(SDNode *N);
61 void SelectTexSurfHandle(SDNode *N);
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)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
HexagonISelDAGToDAG.h 55 void Select(SDNode *N) override;
78 MachineSDNode *LoadInstrForLoadIntrinsic(SDNode *IntN);
82 SDNode *StoreInstrForLoadIntrinsic(MachineSDNode *LoadN, SDNode *IntN);
84 void SelectFrameIndex(SDNode *N);
91 bool SelectBrevLdIntrinsic(SDNode *IntN);
92 bool SelectNewCircIntrinsic(SDNode *IntN);
93 void SelectLoad(SDNode *N);
96 void SelectStore(SDNode *N);
97 void SelectSHL(SDNode *N)
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
SelectionDAGISel.h 84 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,
109 static void InvalidateNodeId(SDNode *N);
110 static int getUninvalidatedNodeId(SDNode *N);
112 static void EnforceNodeIdInvariant(SDNode *N);
221 void ReplaceUses(SDNode *F, SDNode *T)
    [all...]
SelectionDAGNodes.h 9 // This file declares the SDNode class and derived classes, which are used to
67 class SDNode;
72 void checkForCycles(const SDNode *N, const SelectionDAG *DAG = nullptr,
91 bool isConstantSplatVector(const SDNode *N, APInt &SplatValue);
96 bool isConstantSplatVectorAllOnes(const SDNode *N,
102 bool isConstantSplatVectorAllZeros(const SDNode *N,
107 bool isBuildVectorAllOnes(const SDNode *N);
111 bool isBuildVectorAllZeros(const SDNode *N);
115 bool isBuildVectorOfConstantSDNodes(const SDNode *N);
119 bool isBuildVectorOfConstantFPSDNodes(const SDNode *N)
    [all...]
SelectionDAG.h 10 // SDNode class and subclasses.
133 template <> struct ilist_alloc_traits<SDNode> {
134 static void deleteNode(SDNode *) {
135 llvm_unreachable("ilist_traits<SDNode> shouldn't see a deleteNode call!");
141 /// instead the info is kept off to the side in this structure. Each SDNode may
155 using DbgValMapType = DenseMap<const SDNode *, SmallVector<SDDbgValue *, 2>>;
169 void erase(const SDNode *Node);
185 ArrayRef<SDDbgValue*> getSDDbgValues(const SDNode *Node) const {
237 SDNode EntryNode;
243 ilist<SDNode> AllNodes
    [all...]
SelectionDAGAddressAnalysis.h 80 static bool computeAliasing(const SDNode *Op0,
82 const SDNode *Op1,
87 static BaseIndexOffset match(const SDNode *N, const SelectionDAG &DAG);
  /src/external/apache2/llvm/dist/llvm/lib/Target/Mips/
Mips16ISelDAGToDAG.h 26 std::pair<SDNode *, SDNode *> selectMULT(SDNode *N, unsigned Opc,
39 bool trySelect(SDNode *Node) override;
MipsISelDAGToDAG.h 46 SDNode *getGlobalBaseReg();
98 virtual bool selectVSplat(SDNode *N, APInt &Imm,
131 bool selectVecAddAsVecSubIfProfitable(SDNode *Node);
133 void Select(SDNode *N) override;
135 virtual bool trySelect(SDNode *Node) = 0;
138 inline SDValue getImm(const SDNode *Node, uint64_t Imm) {
MipsSEISelDAGToDAG.h 39 std::pair<SDNode *, SDNode *> selectMULT(SDNode *N, unsigned Opc,
43 void selectAddE(SDNode *Node, const SDLoc &DL) const;
96 bool selectVSplat(SDNode *N, APInt &Imm,
129 bool trySelect(SDNode *Node) override;
Mips16ISelDAGToDAG.cpp 44 std::pair<SDNode *, SDNode *>
45 Mips16DAGToDAGISel::selectMULT(SDNode *N, unsigned Opc, const SDLoc &DL, EVT Ty,
47 SDNode *Lo = nullptr, *Hi = nullptr;
48 SDNode *Mul = CurDAG->getMachineNode(Opc, DL, MVT::Glue, N->getOperand(0),
179 bool Mips16DAGToDAGISel::trySelect(SDNode *Node) {
198 std::pair<SDNode *, SDNode *> LoHi =
  /src/external/apache2/llvm/dist/llvm/lib/Target/RISCV/
RISCVISelDAGToDAG.h 41 void Select(SDNode *Node) override;
60 bool MatchSLLIUW(SDNode *N) const;
75 void addVectorLoadStoreOperands(SDNode *Node, unsigned SEWImm,
81 void selectVLSEG(SDNode *Node, bool IsMasked, bool IsStrided);
82 void selectVLSEGFF(SDNode *Node, bool IsMasked);
83 void selectVLXSEG(SDNode *Node, bool IsMasked, bool IsOrdered);
84 void selectVSSEG(SDNode *Node, bool IsMasked, bool IsStrided);
85 void selectVSXSEG(SDNode *Node, bool IsMasked, bool IsOrdered);
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
SIISelLowering.h 154 SDNode *adjustWritemask(MachineSDNode *&N, SelectionDAG &DAG) const;
156 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;
172 SDValue performZeroExtendCombine(SDNode *N, DAGCombinerInfo &DCI) const;
173 SDValue performSignExtendInRegCombine(SDNode *N, DAGCombinerInfo &DCI) const;
174 SDValue performClassCombine(SDNode *N, DAGCombinerInfo &DCI) const;
177 SDValue performFCanonicalizeCombine(SDNode *N, DAGCombinerInfo &DCI) const
    [all...]
AMDGPUISelLowering.h 75 SDValue performLoadCombine(SDNode *N, DAGCombinerInfo &DCI) const;
76 SDValue performStoreCombine(SDNode *N, DAGCombinerInfo &DCI) const;
77 SDValue performAssertSZExtCombine(SDNode *N, DAGCombinerInfo &DCI) const;
78 SDValue performIntrinsicWOChainCombine(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;
86 SDValue performTruncateCombine(SDNode *N, DAGCombinerInfo &DCI) const;
87 SDValue performMulCombine(SDNode *N, DAGCombinerInfo &DCI) const;
88 SDValue performMulhsCombine(SDNode *N, DAGCombinerInfo &DCI) const
    [all...]
AMDGPUISelDAGToDAG.cpp 77 static SDNode *packConstantV2I16(const SDNode *N, SelectionDAG &DAG,
94 static SDNode *packNegConstantV2I16(const SDNode *N, SelectionDAG &DAG) {
128 bool matchLoadD16FromBuildVector(SDNode *N) const;
132 void Select(SDNode *N) override;
137 void SelectBuildVector(SDNode *N, unsigned RegClassID);
142 bool isInlineImmediate(const SDNode *N, bool Negated = false) const;
143 bool isNegInlineImmediate(const SDNode *N) const {
163 bool isVGPRImm(const SDNode *N) const
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/AVR/
AVRISelDAGToDAG.cpp 38 bool SelectAddr(SDNode *Op, SDValue N, SDValue &Base, SDValue &Disp);
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);
64 bool AVRDAGToDAGISel::SelectAddr(SDNode *Op, SDValue N, SDValue &Base,
121 bool AVRDAGToDAGISel::selectIndexedLoad(SDNode *N) {
159 SDNode *ResNode = CurDAG->getMachineNode(Opcode, SDLoc(N), VT,
305 template <> bool AVRDAGToDAGISel::select<ISD::FrameIndex>(SDNode *N)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/SystemZ/
SystemZISelLowering.h 513 void LowerOperationWrapper(SDNode *N, SmallVectorImpl<SDValue> &Results,
515 void ReplaceNodeResults(SDNode *N, SmallVectorImpl<SDValue>&Results,
536 SDValue PerformDAGCombine(SDNode *N, DAGCombinerInfo &DCI) const override;
639 SDValue combineZERO_EXTEND(SDNode *N, DAGCombinerInfo &DCI) const;
640 SDValue combineSIGN_EXTEND(SDNode *N, DAGCombinerInfo &DCI) const;
641 SDValue combineSIGN_EXTEND_INREG(SDNode *N, DAGCombinerInfo &DCI) const;
642 SDValue combineMERGE(SDNode *N, DAGCombinerInfo &DCI) const;
644 SDValue combineLOAD(SDNode *N, DAGCombinerInfo &DCI) const;
645 SDValue combineSTORE(SDNode *N, DAGCombinerInfo &DCI) const;
646 SDValue combineVECTOR_SHUFFLE(SDNode *N, DAGCombinerInfo &DCI) const
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/PowerPC/
PPCISelLowering.h 429 /// An SDNode for swaps that are not associated with any loads/stores
433 /// An SDNode for Power9 vector absolute value difference.
644 int isVSLDOIShuffleMask(SDNode *N, unsigned ShuffleKind,
665 unsigned getSplatIdxForPPCMnemonics(SDNode *N, unsigned EltSize,
672 SDValue get_VSPLTI_elt(SDNode *N, unsigned ByteSize, SelectionDAG &DAG);
801 bool getPreIndexedAddressParts(SDNode *N, SDValue &Base,
839 Sched::Preference getSchedulingPreference(SDNode *N) const override;
848 void ReplaceNodeResults(SDNode *N, SmallVectorImpl<SDValue>&Results,
851 SDValue expandVSXLoadForLE(SDNode *N, DAGCombinerInfo &DCI) const;
852 SDValue expandVSXStoreForLE(SDNode *N, DAGCombinerInfo &DCI) const
    [all...]

Completed in 37 milliseconds

1 2 3 4 5