reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Derived Classes

lib/Target/Hexagon/RDFGraph.h
  515   struct RefNode : public NodeBase {
  590   struct CodeNode : public NodeBase {

Declarations

lib/Target/Hexagon/RDFGraph.h
  355   struct NodeBase;

References

lib/Target/Hexagon/RDFDeadCode.cpp
  188     auto BA = DFG.addr<NodeBase*>(I);
lib/Target/Hexagon/RDFGraph.cpp
   68   auto NA = P.G.addr<NodeBase*>(P.Obj);
  365 NodeAddr<NodeBase*> NodeAllocator::New() {
  371   NodeAddr<NodeBase*> NA = { reinterpret_cast<NodeBase*>(ActiveEnd),
  377 NodeId NodeAllocator::id(const NodeBase *P) const {
  396 void NodeBase::append(NodeAddr<NodeBase*> NA) {
  434 NodeAddr<NodeBase*> RefNode::getOwner(const DataFlowGraph &G) {
  435   NodeAddr<NodeBase*> NA = G.addr<NodeBase*>(getNext());
  435   NodeAddr<NodeBase*> NA = G.addr<NodeBase*>(getNext());
  440     NA = G.addr<NodeBase*>(NA.Addr->getNext());
  460 NodeAddr<NodeBase*> CodeNode::getFirstMember(const DataFlowGraph &G) const {
  463   return G.addr<NodeBase*>(Code.FirstM);
  467 NodeAddr<NodeBase*> CodeNode::getLastMember(const DataFlowGraph &G) const {
  470   return G.addr<NodeBase*>(Code.LastM);
  474 void CodeNode::addMember(NodeAddr<NodeBase*> NA, const DataFlowGraph &G) {
  475   NodeAddr<NodeBase*> ML = getLastMember(G);
  487 void CodeNode::addMemberAfter(NodeAddr<NodeBase*> MA, NodeAddr<NodeBase*> NA,
  487 void CodeNode::addMemberAfter(NodeAddr<NodeBase*> MA, NodeAddr<NodeBase*> NA,
  495 void CodeNode::removeMember(NodeAddr<NodeBase*> NA, const DataFlowGraph &G) {
  496   NodeAddr<NodeBase*> MA = getFirstMember(G);
  521     MA = G.addr<NodeBase*>(MX);
  533 NodeAddr<NodeBase*> InstrNode::getOwner(const DataFlowGraph &G) {
  534   NodeAddr<NodeBase*> NA = G.addr<NodeBase*>(getNext());
  534   NodeAddr<NodeBase*> NA = G.addr<NodeBase*>(getNext());
  540     NA = G.addr<NodeBase*>(NA.Addr->getNext());
  547   NodeAddr<NodeBase*> M = getFirstMember(G);
  562     NodeAddr<NodeBase*> MN = M;
  565       MN = G.addr<NodeBase*>(M.Addr->getNext());
  764 NodeBase *DataFlowGraph::ptr(NodeId N) const {
  771 NodeId DataFlowGraph::id(const NodeBase *P) const {
  778 NodeAddr<NodeBase*> DataFlowGraph::newNode(uint16_t Attrs) {
  779   NodeAddr<NodeBase*> P = Memory.New();
  787 NodeAddr<NodeBase*> DataFlowGraph::cloneNode(const NodeAddr<NodeBase*> B) {
  787 NodeAddr<NodeBase*> DataFlowGraph::cloneNode(const NodeAddr<NodeBase*> B) {
  788   NodeAddr<NodeBase*> NA = newNode(0);
  789   memcpy(NA.Addr, B.Addr, sizeof(NodeBase));
 1067     for (NodeAddr<NodeBase*> T : Rel)
 1121     for (NodeAddr<NodeBase*> T : Rel)
 1526     for (NodeAddr<NodeBase*> M : Ms) {
lib/Target/Hexagon/RDFGraph.h
  383     NodeBase *ptr(NodeId N) const {
  390     NodeId id(const NodeBase *P) const;
  391     NodeAddr<NodeBase*> New();
  464     void append(NodeAddr<NodeBase*> NA);
  509   static_assert(sizeof(NodeBase) <= NodeAllocator::NodeMemSize,
  512   using NodeList = SmallVector<NodeAddr<NodeBase *>, 4>;
  515   struct RefNode : public NodeBase {
  555     NodeAddr<NodeBase*> getOwner(const DataFlowGraph &G);
  590   struct CodeNode : public NodeBase {
  598     NodeAddr<NodeBase*> getFirstMember(const DataFlowGraph &G) const;
  599     NodeAddr<NodeBase*> getLastMember(const DataFlowGraph &G) const;
  600     void addMember(NodeAddr<NodeBase*> NA, const DataFlowGraph &G);
  601     void addMemberAfter(NodeAddr<NodeBase*> MA, NodeAddr<NodeBase*> NA,
  601     void addMemberAfter(NodeAddr<NodeBase*> MA, NodeAddr<NodeBase*> NA,
  603     void removeMember(NodeAddr<NodeBase*> NA, const DataFlowGraph &G);
  611     NodeAddr<NodeBase*> getOwner(const DataFlowGraph &G);
  649     NodeBase *ptr(NodeId N) const;
  654     NodeId id(const NodeBase *P) const;
  786     static bool IsRef(const NodeAddr<NodeBase*> BA) {
  792     static bool IsCode(const NodeAddr<NodeBase*> BA) {
  797     static bool IsDef(const NodeAddr<NodeBase*> BA) {
  802     static bool IsUse(const NodeAddr<NodeBase*> BA) {
  807     static bool IsPhi(const NodeAddr<NodeBase*> BA) {
  822     NodeAddr<NodeBase*> newNode(uint16_t Attrs);
  823     NodeAddr<NodeBase*> cloneNode(const NodeAddr<NodeBase*> B);
  823     NodeAddr<NodeBase*> cloneNode(const NodeAddr<NodeBase*> B);
  891     auto NA = G.addr<NodeBase*>(getNext());
  900         NA = G.addr<NodeBase*>(NA.Addr->getNext());
  922       M = G.addr<NodeBase*>(M.Addr->getNext());
lib/Target/Hexagon/RDFLiveness.cpp
  294   for (NodeAddr<NodeBase*> R : RDs)