/external/llvm/lib/CodeGen/SelectionDAG/ |
D | LegalizeTypes.h | 77 bool IgnoreNodeResults(SDNode *N) const { in IgnoreNodeResults() 116 SmallVector<SDNode*, 128> Worklist; 131 void NoteDeletion(SDNode *Old, SDNode *New) { in NoteDeletion() 139 SDNode *AnalyzeNewNode(SDNode *N); 141 void ExpungeNode(SDNode *N); 149 bool CustomLowerNode(SDNode *N, EVT VT, bool LegalizeResult); 150 bool CustomWidenLowerNode(SDNode *N, EVT VT); 153 SDValue LibCallify(RTLIB::Libcall LC, SDNode *N, bool isSigned); 158 SDNode *Node, bool isSigned); 159 std::pair<SDValue, SDValue> ExpandAtomic(SDNode *Node); [all …]
|
D | SelectionDAGPrinter.cpp | 46 return ((const SDNode *) Node)->getNumValues(); in numEdgeDestLabels() 50 return ((const SDNode *) Node)->getValueType(i).getEVTString(); in getEdgeDestLabel() 55 return itostr(I - SDNodeIterator::begin((SDNode *) Node)); in getEdgeSourceLabel() 71 SDNode *TargetNode = *I; in getEdgeTarget() 85 static bool hasNodeAddressLabel(const SDNode *Node, in hasNodeAddressLabel() 105 static std::string getSimpleNodeLabel(const SDNode *Node, in getSimpleNodeLabel() 114 std::string getNodeLabel(const SDNode *Node, const SelectionDAG *Graph); 115 static std::string getNodeAttributes(const SDNode *N, in getNodeAttributes() 139 std::string DOTGraphTraits<SelectionDAG*>::getNodeLabel(const SDNode *Node, in getNodeLabel() 179 void SelectionDAG::setGraphAttrs(const SDNode *N, const char *Attrs) { in setGraphAttrs() [all …]
|
D | InstrEmitter.h | 41 void EmitCopyFromReg(SDNode *Node, unsigned ResNo, 48 unsigned getDstOfOnlyCopyToRegUse(SDNode *Node, 51 void CreateVirtualRegisters(SDNode *Node, MachineInstr *MI, 82 void EmitSubregNode(SDNode *Node, DenseMap<SDValue, unsigned> &VRBaseMap, 89 void EmitCopyToRegClassNode(SDNode *Node, 94 void EmitRegSequence(SDNode *Node, DenseMap<SDValue, unsigned> &VRBaseMap, 100 static unsigned CountResults(SDNode *Node); 106 static unsigned CountOperands(SDNode *Node); 115 void EmitNode(SDNode *Node, bool IsClone, bool IsCloned, in EmitNode() 134 void EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned, [all …]
|
D | ScheduleDAGSDNodes.cpp | 60 SUnit *ScheduleDAGSDNodes::NewSUnit(SDNode *N) { in NewSUnit() 102 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency() 126 static void AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) { in AddGlue() 128 SDNode *GlueDestNode = Glue.getNode(); in AddGlue() 171 void ScheduleDAGSDNodes::ClusterNeighboringLoads(SDNode *Node) { in ClusterNeighboringLoads() 172 SDNode *Chain = 0; in ClusterNeighboringLoads() 181 SmallPtrSet<SDNode*, 16> Visited; in ClusterNeighboringLoads() 183 DenseMap<long long, SDNode*> O2SMap; // Map from offset to SDNode. in ClusterNeighboringLoads() 185 SDNode *Base = Node; in ClusterNeighboringLoads() 186 for (SDNode::use_iterator I = Chain->use_begin(), E = Chain->use_end(); in ClusterNeighboringLoads() [all …]
|
D | SDNodeOrdering.h | 21 class SDNode; variable 29 DenseMap<const SDNode*, unsigned> OrderMap; 36 void add(const SDNode *Node, unsigned O) { in add() 39 void remove(const SDNode *Node) { in remove() 40 DenseMap<const SDNode*, unsigned>::iterator Itr = OrderMap.find(Node); in remove() 47 unsigned getOrder(const SDNode *Node) { in getOrder()
|
D | LegalizeFloatTypes.cpp | 45 void DAGTypeLegalizer::SoftenFloatResult(SDNode *N, unsigned ResNo) { in SoftenFloatResult() 106 SDValue DAGTypeLegalizer::SoftenFloatRes_BITCAST(SDNode *N) { in SoftenFloatRes_BITCAST() 110 SDValue DAGTypeLegalizer::SoftenFloatRes_BUILD_PAIR(SDNode *N) { in SoftenFloatRes_BUILD_PAIR() 125 SDValue DAGTypeLegalizer::SoftenFloatRes_EXTRACT_VECTOR_ELT(SDNode *N) { in SoftenFloatRes_EXTRACT_VECTOR_ELT() 132 SDValue DAGTypeLegalizer::SoftenFloatRes_FABS(SDNode *N) { in SoftenFloatRes_FABS() 144 SDValue DAGTypeLegalizer::SoftenFloatRes_FADD(SDNode *N) { in SoftenFloatRes_FADD() 156 SDValue DAGTypeLegalizer::SoftenFloatRes_FCEIL(SDNode *N) { in SoftenFloatRes_FCEIL() 167 SDValue DAGTypeLegalizer::SoftenFloatRes_FCOPYSIGN(SDNode *N) { in SoftenFloatRes_FCOPYSIGN() 209 SDValue DAGTypeLegalizer::SoftenFloatRes_FCOS(SDNode *N) { in SoftenFloatRes_FCOS() 220 SDValue DAGTypeLegalizer::SoftenFloatRes_FDIV(SDNode *N) { in SoftenFloatRes_FDIV() [all …]
|
D | ScheduleDAGSDNodes.h | 52 static bool isPassiveNode(SDNode *Node) { in isPassiveNode() 70 SUnit *NewSUnit(SDNode *N); 103 virtual void ComputeOperandLatency(SDNode *Def, SDNode *Use, 124 const SDNode *Node; 138 const SDNode *GetNode() const { in GetNode() 154 void ClusterNeighboringLoads(SDNode *Node);
|
D | SelectionDAG.cpp | 111 bool ISD::isBuildVectorAllOnes(const SDNode *N) { in isBuildVectorAllOnes() 152 bool ISD::isBuildVectorAllZeros(const SDNode *N) { in isBuildVectorAllZeros() 192 bool ISD::isScalarToVector(const SDNode *N) { in isScalarToVector() 356 static void AddNodeIDCustom(FoldingSetNodeID &ID, const SDNode *N) { in AddNodeIDCustom() 459 static void AddNodeIDNode(FoldingSetNodeID &ID, const SDNode *N) { in AddNodeIDNode() 492 static bool doNotCSE(SDNode *N) { in doNotCSE() 518 SmallVector<SDNode*, 128> DeadNodes; in RemoveDeadNodes() 533 void SelectionDAG::RemoveDeadNodes(SmallVectorImpl<SDNode *> &DeadNodes, in RemoveDeadNodes() 539 SDNode *N = DeadNodes.pop_back_val(); in RemoveDeadNodes() 549 for (SDNode::op_iterator I = N->op_begin(), E = N->op_end(); I != E; ) { in RemoveDeadNodes() [all …]
|
D | DAGCombiner.cpp | 67 std::vector<SDNode*> WorkList; 76 void AddUsersToWorkList(SDNode *N) { in AddUsersToWorkList() 77 for (SDNode::use_iterator UI = N->use_begin(), UE = N->use_end(); in AddUsersToWorkList() 84 SDValue visit(SDNode *N); 89 void AddToWorkList(SDNode *N) { in AddToWorkList() 96 void removeFromWorkList(SDNode *N) { in removeFromWorkList() 101 SDValue CombineTo(SDNode *N, const SDValue *To, unsigned NumTo, 104 SDValue CombineTo(SDNode *N, SDValue Res, bool AddTo = true) { in CombineTo() 108 SDValue CombineTo(SDNode *N, SDValue Res0, SDValue Res1, in CombineTo() 129 bool CombineToPreIndexedLoadStore(SDNode *N); [all …]
|
D | SelectionDAGISel.cpp | 418 SmallPtrSet<SDNode*, 128> VisitedNodes; in ComputeLiveOutVRegInfo() 419 SmallVector<SDNode*, 128> Worklist; in ComputeLiveOutVRegInfo() 428 SDNode *N = Worklist.pop_back_val(); in ComputeLiveOutVRegInfo() 642 SDNode *Node = --ISelPosition; in DoInstructionSelection() 649 SDNode *ResNode = Select(Node); in DoInstructionSelection() 1337 static SDNode *findGlueUse(SDNode *N) { in findGlueUse() 1339 for (SDNode::use_iterator I = N->use_begin(), E = N->use_end(); I != E; ++I) { in findGlueUse() 1350 static bool findNonImmUse(SDNode *Use, SDNode* Def, SDNode *ImmedUse, in findNonImmUse() 1351 SDNode *Root, SmallPtrSet<SDNode*, 16> &Visited, in findNonImmUse() argument 1374 SDNode *N = Use->getOperand(i).getNode(); in findNonImmUse() [all …]
|
/external/llvm/include/llvm/CodeGen/ |
D | SelectionDAGISel.h | 76 virtual SDNode *Select(SDNode *N) = 0; 91 virtual bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const; 97 static bool IsLegalToFold(SDValue N, SDNode *U, SDNode *Root, 191 virtual void NodeDeleted(SDNode *N, SDNode *E) { in NodeDeleted() 197 virtual void NodeUpdated(SDNode *N) {} in NodeUpdated() 216 void ReplaceUses(SDNode *F, SDNode *T) { in ReplaceUses() 248 virtual bool CheckNodePredicate(SDNode *N, unsigned PredNo) const { in CheckNodePredicate() 253 virtual bool CheckComplexPattern(SDNode *Root, SDNode *Parent, SDValue N, in CheckComplexPattern() 255 SmallVectorImpl<std::pair<SDValue, SDNode*> > &Result) { in CheckComplexPattern() 265 SDNode *SelectCodeCommon(SDNode *NodeToMatch, [all …]
|
D | SelectionDAGNodes.h | 43 class SDNode; variable 50 void checkForCycles(const SDNode *N); 66 bool isBuildVectorAllOnes(const SDNode *N); 70 bool isBuildVectorAllZeros(const SDNode *N); 75 bool isScalarToVector(const SDNode *N); 90 SDNode *Node; // The node defining the value we are using. 94 SDValue(SDNode *node, unsigned resno) : Node(node), ResNo(resno) {} in SDValue() 100 SDNode *getNode() const { return Node; } in getNode() 103 void setNode(SDNode *N) { Node = N; } in setNode() 105 inline SDNode *operator->() const { return Node; } [all …]
|
D | SelectionDAG.h | 40 template<> struct ilist_traits<SDNode> : public ilist_default_traits<SDNode> { 42 mutable ilist_half_node<SDNode> Sentinel; 44 SDNode *createSentinel() const { 45 return static_cast<SDNode*>(&Sentinel); 47 static void destroySentinel(SDNode *) {} 49 SDNode *provideInitialHead() const { return createSentinel(); } 50 SDNode *ensureHead(SDNode*) const { return createSentinel(); } 51 static void noteHead(SDNode*, SDNode*) {} 53 static void deleteNode(SDNode *) { 57 static void createNode(const SDNode &); [all …]
|
/external/llvm/lib/Target/CellSPU/ |
D | SPUNodes.td | 19 def SPUshufmask : SDNode<"SPUISD::SHUFFLE_MASK", SPU_GenControl, []>; 21 def callseq_start : SDNode<"ISD::CALLSEQ_START", SDT_SPUCallSeq, 23 def callseq_end : SDNode<"ISD::CALLSEQ_END", SDT_SPUCallSeq, 30 def SPUcall : SDNode<"SPUISD::CALL", SDT_SPUCall, 80 def SPUcntb : SDNode<"SPUISD::CNTB", SDTIntUnaryOp>; 84 def SPUshuffle: SDNode<"SPUISD::SHUFB", SDT_SPUshuffle, []>; 87 def SPUvec_shl: SDNode<"ISD::SHL", SPUvecshift_type, []>; 88 def SPUvec_srl: SDNode<"ISD::SRL", SPUvecshift_type, []>; 89 def SPUvec_sra: SDNode<"ISD::SRA", SPUvecshift_type, []>; 91 def SPUvec_rotl: SDNode<"SPUISD::VEC_ROTL", SPUvecshift_type, []>; [all …]
|
D | SPUISelDAGToDAG.cpp | 179 SDNode *emitBuildVector(SDNode *bvNode) { in emitBuildVector() 197 if (SDNode *N = Select(bvNode)) in emitBuildVector() 221 if (SDNode *N = SelectCode(Dummy.getValue().getNode())) in emitBuildVector() 228 SDNode *Select(SDNode *N); 231 SDNode *SelectSHLi64(SDNode *N, EVT OpVT); 234 SDNode *SelectSRLi64(SDNode *N, EVT OpVT); 237 SDNode *SelectSRAi64(SDNode *N, EVT OpVT); 240 SDNode *SelectI64Constant(SDNode *N, EVT OpVT, DebugLoc dl); 243 SDNode *SelectI64Constant(uint64_t i64const, EVT OpVT, DebugLoc dl); 246 bool SelectAFormAddr(SDNode *Op, SDValue N, SDValue &Base, [all …]
|
D | SPUISelLowering.h | 64 SDValue get_vec_u18imm(SDNode *N, SelectionDAG &DAG, 66 SDValue get_vec_i16imm(SDNode *N, SelectionDAG &DAG, 68 SDValue get_vec_i10imm(SDNode *N, SelectionDAG &DAG, 70 SDValue get_vec_i8imm(SDNode *N, SelectionDAG &DAG, 72 SDValue get_ILHUvec_imm(SDNode *N, SelectionDAG &DAG, 74 SDValue get_v4i32_imm(SDNode *N, SelectionDAG &DAG); 75 SDValue get_v2i64_imm(SDNode *N, SelectionDAG &DAG); 118 virtual void ReplaceNodeResults(SDNode *N, SmallVectorImpl<SDValue>&Results, 121 virtual SDValue PerformDAGCombine(SDNode *N, DAGCombinerInfo &DCI) const;
|
/external/llvm/lib/Target/X86/ |
D | X86InstrFragmentsSIMD.td | 30 def X86fmin : SDNode<"X86ISD::FMIN", SDTFPBinOp>; 31 def X86fmax : SDNode<"X86ISD::FMAX", SDTFPBinOp>; 32 def X86fand : SDNode<"X86ISD::FAND", SDTFPBinOp, 34 def X86for : SDNode<"X86ISD::FOR", SDTFPBinOp, 36 def X86fxor : SDNode<"X86ISD::FXOR", SDTFPBinOp, 38 def X86frsqrt : SDNode<"X86ISD::FRSQRT", SDTFPUnaryOp>; 39 def X86frcp : SDNode<"X86ISD::FRCP", SDTFPUnaryOp>; 40 def X86fsrl : SDNode<"X86ISD::FSRL", SDTX86FPShiftOp>; 41 def X86fgetsign: SDNode<"X86ISD::FGETSIGNx86",SDTFPToIntOp>; 42 def X86comi : SDNode<"X86ISD::COMI", SDTX86CmpTest>; [all …]
|
/external/llvm/include/llvm/Target/ |
D | TargetSelectionDAG.td | 47 // SDTCisVTSmallerThanOp - The specified operand is a VT SDNode, and its type is 251 class SDNode<string opcode, SDTypeProfile typeprof, 252 list<SDNodeProperty> props = [], string sdclass = "SDNode"> 266 def imm : SDNode<"ISD::Constant" , SDTIntLeaf , [], "ConstantSDNode">; 267 def timm : SDNode<"ISD::TargetConstant",SDTIntLeaf, [], "ConstantSDNode">; 268 def fpimm : SDNode<"ISD::ConstantFP", SDTFPLeaf , [], "ConstantFPSDNode">; 269 def vt : SDNode<"ISD::VALUETYPE" , SDTOther , [], "VTSDNode">; 270 def bb : SDNode<"ISD::BasicBlock", SDTOther , [], "BasicBlockSDNode">; 271 def cond : SDNode<"ISD::CONDCODE" , SDTOther , [], "CondCodeSDNode">; 272 def undef : SDNode<"ISD::UNDEF" , SDTUNDEF , []>; [all …]
|
/external/llvm/lib/Target/Mips/ |
D | MipsISelDAGToDAG.cpp | 83 SDNode *getGlobalBaseReg(); 84 SDNode *Select(SDNode *N); 89 SDNode *SelectLoadFp64(SDNode *N); 90 SDNode *SelectStoreFp64(SDNode *N); 108 SDNode *MipsDAGToDAGISel::getGlobalBaseReg() { in getGlobalBaseReg() 187 SDNode *MipsDAGToDAGISel::SelectLoadFp64(SDNode *N) { in SelectLoadFp64() 232 SDNode *LD0 = CurDAG->getMachineNode(Mips::LWC1, dl, MVT::f32, in SelectLoadFp64() 239 SDNode *LD1 = CurDAG->getMachineNode(Mips::LWC1, dl, MVT::f32, in SelectLoadFp64() 251 SDNode *MipsDAGToDAGISel::SelectStoreFp64(SDNode *N) { in SelectStoreFp64() 313 SDNode* MipsDAGToDAGISel::Select(SDNode *Node) { in Select() [all …]
|
/external/llvm/lib/Target/MSP430/ |
D | MSP430ISelDAGToDAG.cpp | 118 SDNode *Select(SDNode *N); 119 SDNode *SelectIndexedLoad(SDNode *Op); 120 SDNode *SelectIndexedBinOp(SDNode *Op, SDValue N1, SDValue N2, 329 SDNode *MSP430DAGToDAGISel::SelectIndexedLoad(SDNode *N) { in SelectIndexedLoad() 353 SDNode *MSP430DAGToDAGISel::SelectIndexedBinOp(SDNode *Op, in SelectIndexedBinOp() 368 SDNode *ResNode = in SelectIndexedBinOp() 384 SDNode *MSP430DAGToDAGISel::Select(SDNode *Node) { in Select() 414 if (SDNode *ResNode = SelectIndexedLoad(Node)) in Select() 419 if (SDNode *ResNode = in Select() 424 else if (SDNode *ResNode = in Select() [all …]
|
/external/llvm/lib/Target/PTX/ |
D | PTXISelDAGToDAG.cpp | 34 SDNode *Select(SDNode *Node); 47 SDNode *SelectBRCOND(SDNode *Node); 67 SDNode *PTXDAGToDAGISel::Select(SDNode *Node) { in Select() 76 SDNode *PTXDAGToDAGISel::SelectBRCOND(SDNode *Node) { in SelectBRCOND() 168 SDNode *node = operand.getNode(); in SelectImm()
|
/external/llvm/lib/Target/Blackfin/ |
D | BlackfinISelDAGToDAG.cpp | 53 SDNode *Select(SDNode *N); 77 SDNode *BlackfinDAGToDAGISel::Select(SDNode *N) { in Select() 128 SDNode *N, in UpdateNodeOperand() 133 SDNode *New = DAG.UpdateNodeOperands(N, ops.data(), ops.size()); in UpdateNodeOperand() 150 for (SDNode::use_iterator UI = NI->use_begin(); !UI.atEnd(); ++UI) { in FixRegisterClasses() 168 SDNode *Copy = in FixRegisterClasses()
|
/external/llvm/lib/Target/ARM/ |
D | ARMISelDAGToDAG.cpp | 87 SDNode *Select(SDNode *N); 90 bool hasNoVMLxHazardUse(SDNode *N) const; 125 bool SelectAddrMode2Offset(SDNode *Op, SDValue N, 129 bool SelectAddrMode3Offset(SDNode *Op, SDValue N, 133 bool SelectAddrMode6(SDNode *Parent, SDValue N, SDValue &Addr,SDValue &Align); 134 bool SelectAddrMode6Offset(SDNode *Op, SDValue N, SDValue &Offset); 161 bool SelectT2AddrModeImm8Offset(SDNode *Op, SDValue N, 188 SDNode *SelectARMIndexedLoad(SDNode *N); 189 SDNode *SelectT2IndexedLoad(SDNode *N); 195 SDNode *SelectVLD(SDNode *N, bool isUpdating, unsigned NumVecs, [all …]
|
/external/llvm/lib/Target/Alpha/ |
D | AlphaISelDAGToDAG.cpp | 146 SDNode *Select(SDNode *N); 185 SDNode *getGlobalBaseReg(); 186 SDNode *getGlobalRetAddr(); 187 void SelectCALL(SDNode *Op); 195 SDNode *AlphaDAGToDAGISel::getGlobalBaseReg() { in getGlobalBaseReg() 202 SDNode *AlphaDAGToDAGISel::getGlobalRetAddr() { in getGlobalRetAddr() 209 SDNode *AlphaDAGToDAGISel::Select(SDNode *N) { in Select() 242 SDNode *CNode = in Select() 279 SDNode *Tmp = CurDAG->getMachineNode(Alpha::LDAHr, dl, MVT::i64, CPI, in Select() 331 SDNode *cmp = CurDAG->getMachineNode(Opc, dl, MVT::f64, tmp1, tmp2); in Select() [all …]
|
/external/llvm/lib/Target/MBlaze/ |
D | MBlazeISelDAGToDAG.cpp | 81 SDNode *getGlobalBaseReg(); 82 SDNode *Select(SDNode *N); 100 static bool isIntS32Immediate(SDNode *N, int32_t &Imm) { in isIntS32Immediate() 182 SDNode *MBlazeDAGToDAGISel::getGlobalBaseReg() { in getGlobalBaseReg() 189 SDNode* MBlazeDAGToDAGISel::Select(SDNode *Node) { in Select() 250 SDNode *ResNode = CurDAG->getMachineNode(MBlaze::BRLID, dl, MVT::Other, in Select() 262 SDNode *ResNode = SelectCode(Node); in Select()
|