Lines Matching defs:SDep

42   /// SDep - Scheduling dependency. This represents one direction of an
44 class SDep {
89 /// SDep - Construct a null SDep. This is only for use by container
91 /// have null SDep edges.
92 SDep() : Dep(0, Data) {}
94 /// SDep - Construct an SDep with the specified values.
95 SDep(SUnit *S, Kind kind, unsigned latency = 1, unsigned Reg = 0,
103 "SDep::Anti and SDep::Output must use a non-zero Reg!");
106 assert(!isMustAlias && "isMustAlias only applies with SDep::Order!");
107 assert(!isArtificial && "isArtificial only applies with SDep::Order!");
119 bool operator==(const SDep &Other) const {
136 bool operator!=(const SDep &Other) const {
168 /// isCtrl - Shorthand for getKind() != SDep::Data.
217 "SDep::Anti edge cannot use the zero register!");
219 "SDep::Output edge cannot use the zero register!");
225 struct isPodLike<SDep> { static const bool value = true; };
237 SmallVector<SDep, 4> Preds; // All sunit predecessors.
238 SmallVector<SDep, 4> Succs; // All sunit successors.
240 typedef SmallVector<SDep, 4>::iterator pred_iterator;
241 typedef SmallVector<SDep, 4>::iterator succ_iterator;
242 typedef SmallVector<SDep, 4>::const_iterator const_pred_iterator;
243 typedef SmallVector<SDep, 4>::const_iterator const_succ_iterator;
247 unsigned NumPreds; // # of SDep::Data preds.
248 unsigned NumSuccs; // # of SDep::Data sucss.
353 bool addPred(const SDep &D);
358 void removePred(const SDep &D);
563 SDep&) const { }
624 /// isCtrlDep - Test if this is not an SDep::Data dependence.
631 const SDep &getSDep() const {