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

References

lib/Target/Hexagon/HexagonOptAddrMode.cpp
  179     if (UA.Addr->getFlags() & NodeAttrs::PhiRef)
  189     if ((OffsetRegDN.Addr->getFlags() & NodeAttrs::PhiRef) &&
  260       if (UA.Addr->getFlags() & NodeAttrs::PhiRef) {
  303     if (UA.Addr->getFlags() & NodeAttrs::PhiRef)
  316     if ((LRExtRegDN.Addr->getFlags() & NodeAttrs::PhiRef) &&
  690     if (!DFG->IsCode<NodeAttrs::Stmt>(IA))
lib/Target/Hexagon/HexagonRDFOpt.cpp
  163     for (auto TA : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Stmt>, DFG)) {
  215   if (!getDFG().IsCode<NodeAttrs::Stmt>(IA))
lib/Target/Hexagon/RDFCopy.cpp
   73     if (DFG.IsCode<NodeAttrs::Stmt>(IA)) {
   92     if (RA.Addr->getKind() == NodeAttrs::Def)
  159         if ((F & NodeAttrs::PhiRef) || (F & NodeAttrs::Fixed))
  159         if ((F & NodeAttrs::PhiRef) || (F & NodeAttrs::Fixed))
lib/Target/Hexagon/RDFDeadCode.cpp
   84   if (!DFG.IsCode<NodeAttrs::Stmt>(IA))
  162       if (DFG.IsCode<NodeAttrs::Stmt>(IA))
  190     if (Type == NodeAttrs::Ref) {
  197     if (Kind == NodeAttrs::Stmt || Kind == NodeAttrs::Phi) {
  197     if (Kind == NodeAttrs::Stmt || Kind == NodeAttrs::Phi) {
  211     if (KindA == NodeAttrs::Use && KindB == NodeAttrs::Def)
  211     if (KindA == NodeAttrs::Use && KindB == NodeAttrs::Def)
  213     if (KindA == NodeAttrs::Def && KindB == NodeAttrs::Use)
  213     if (KindA == NodeAttrs::Def && KindB == NodeAttrs::Use)
  234     if (!DFG.IsCode<NodeAttrs::Stmt>(IA))
lib/Target/Hexagon/RDFGraph.cpp
   70   uint16_t Kind = NodeAttrs::kind(Attrs);
   71   uint16_t Flags = NodeAttrs::flags(Attrs);
   72   switch (NodeAttrs::type(Attrs)) {
   73     case NodeAttrs::Code:
   75         case NodeAttrs::Func:   OS << 'f'; break;
   76         case NodeAttrs::Block:  OS << 'b'; break;
   77         case NodeAttrs::Stmt:   OS << 's'; break;
   78         case NodeAttrs::Phi:    OS << 'p'; break;
   82     case NodeAttrs::Ref:
   83       if (Flags & NodeAttrs::Undef)
   85       if (Flags & NodeAttrs::Dead)
   87       if (Flags & NodeAttrs::Preserving)
   89       if (Flags & NodeAttrs::Clobbering)
   92         case NodeAttrs::Use:    OS << 'u'; break;
   93         case NodeAttrs::Def:    OS << 'd'; break;
   94         case NodeAttrs::Block:  OS << 'b'; break;
  103   if (Flags & NodeAttrs::Shadow)
  112   if (RA.Addr->getFlags() & NodeAttrs::Fixed)
  161     case NodeAttrs::Def:
  164     case NodeAttrs::Use:
  165       if (P.Obj.Addr->getFlags() & NodeAttrs::PhiRef)
  252     case NodeAttrs::Phi:
  255     case NodeAttrs::Stmt:
  410   if (NodeAttrs::flags(Attrs) & NodeAttrs::PhiRef)
  410   if (NodeAttrs::flags(Attrs) & NodeAttrs::PhiRef)
  438     if (NA.Addr->getType() == NodeAttrs::Code)
  538     if (NA.Addr->getKind() == NodeAttrs::Block)
  554   if (M.Addr->getKind() == NodeAttrs::Stmt) {
  567     } while (MN.Addr->getKind() == NodeAttrs::Phi);
  791   if (NA.Addr->getType() == NodeAttrs::Ref) {
  795     if (NA.Addr->getKind() == NodeAttrs::Def) {
  808   NodeAddr<UseNode*> UA = newNode(NodeAttrs::Ref | NodeAttrs::Use | Flags);
  808   NodeAddr<UseNode*> UA = newNode(NodeAttrs::Ref | NodeAttrs::Use | Flags);
  815   NodeAddr<PhiUseNode*> PUA = newNode(NodeAttrs::Ref | NodeAttrs::Use | Flags);
  815   NodeAddr<PhiUseNode*> PUA = newNode(NodeAttrs::Ref | NodeAttrs::Use | Flags);
  824   NodeAddr<DefNode*> DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags);
  824   NodeAddr<DefNode*> DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags);
  831   NodeAddr<DefNode*> DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags);
  831   NodeAddr<DefNode*> DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags);
  838   NodeAddr<PhiNode*> PA = newNode(NodeAttrs::Code | NodeAttrs::Phi);
  838   NodeAddr<PhiNode*> PA = newNode(NodeAttrs::Code | NodeAttrs::Phi);
  845   NodeAddr<StmtNode*> SA = newNode(NodeAttrs::Code | NodeAttrs::Stmt);
  845   NodeAddr<StmtNode*> SA = newNode(NodeAttrs::Code | NodeAttrs::Stmt);
  853   NodeAddr<BlockNode*> BA = newNode(NodeAttrs::Code | NodeAttrs::Block);
  853   NodeAddr<BlockNode*> BA = newNode(NodeAttrs::Code | NodeAttrs::Block);
  860   NodeAddr<FuncNode*> FA = newNode(NodeAttrs::Code | NodeAttrs::Func);
  860   NodeAddr<FuncNode*> FA = newNode(NodeAttrs::Code | NodeAttrs::Func);
  909     uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
  909     uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
  934         uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
  934         uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
 1049     if (!(DA.Addr->getFlags() & NodeAttrs::Clobbering))
 1095     if (DA.Addr->getFlags() & NodeAttrs::Clobbering)
 1172     if (TA.Addr->getKind() != NodeAttrs::Use)
 1181   if (IA.Addr->getKind() == NodeAttrs::Stmt)
 1219   uint16_t Flags = RA.Addr->getFlags() | NodeAttrs::Shadow;
 1229   NA.Addr->setFlags(Flags | NodeAttrs::Shadow);
 1239   uint16_t Flags = RA.Addr->getFlags() | NodeAttrs::Shadow;
 1297     uint16_t Flags = NodeAttrs::None;
 1299       Flags |= NodeAttrs::Preserving;
 1302         Flags |= NodeAttrs::Undef;
 1305       Flags |= NodeAttrs::Clobbering;
 1307       Flags |= NodeAttrs::Fixed;
 1309       Flags |= NodeAttrs::Dead;
 1322     uint16_t Flags = NodeAttrs::Clobbering | NodeAttrs::Fixed |
 1322     uint16_t Flags = NodeAttrs::Clobbering | NodeAttrs::Fixed |
 1323                      NodeAttrs::Dead;
 1343     uint16_t Flags = NodeAttrs::None;
 1345       Flags |= NodeAttrs::Preserving;
 1348         Flags |= NodeAttrs::Undef;
 1351       Flags |= NodeAttrs::Clobbering;
 1353       Flags |= NodeAttrs::Fixed;
 1357       Flags |= NodeAttrs::Dead;
 1371     uint16_t Flags = NodeAttrs::None;
 1373       Flags |= NodeAttrs::Undef;
 1375       Flags |= NodeAttrs::Fixed;
 1491       uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
 1491       uint16_t PhiFlags = NodeAttrs::PhiRef | NodeAttrs::Preserving;
 1527       if (M.Addr->getKind() != NodeAttrs::Def)
 1597       TAP.Addr->setFlags(TAP.Addr->getFlags() | NodeAttrs::Shadow);
 1632     if (Kind == NodeAttrs::Use)
 1634     else if (Kind == NodeAttrs::Def)
 1648     return IsDef(RA) && (RA.Addr->getFlags() & NodeAttrs::Clobbering);
 1651     return IsDef(RA) && !(RA.Addr->getFlags() & NodeAttrs::Clobbering);
 1661     if (IA.Addr->getKind() == NodeAttrs::Stmt) {
 1669     if (IA.Addr->getKind() == NodeAttrs::Stmt)
 1685     if (NA.Addr->getKind() != NodeAttrs::Use)
lib/Target/Hexagon/RDFGraph.h
  454     uint16_t getType()  const { return NodeAttrs::type(Attrs); }
  455     uint16_t getKind()  const { return NodeAttrs::kind(Attrs); }
  456     uint16_t getFlags() const { return NodeAttrs::flags(Attrs); }
  461     void setFlags(uint16_t F) { setAttrs(NodeAttrs::set_flags(getAttrs(), F)); }
  544       return getKind() == NodeAttrs::Use;
  549       return getKind() == NodeAttrs::Def;
  787       return BA.Addr->getType() == NodeAttrs::Ref &&
  793       return BA.Addr->getType() == NodeAttrs::Code &&
  798       return BA.Addr->getType() == NodeAttrs::Ref &&
  799              BA.Addr->getKind() == NodeAttrs::Def;
  803       return BA.Addr->getType() == NodeAttrs::Ref &&
  804              BA.Addr->getKind() == NodeAttrs::Use;
  808       return BA.Addr->getType() == NodeAttrs::Code &&
  809              BA.Addr->getKind() == NodeAttrs::Phi;
  814       return (Flags & NodeAttrs::Preserving) && !(Flags & NodeAttrs::Undef);
  814       return (Flags & NodeAttrs::Preserving) && !(Flags & NodeAttrs::Undef);
  825         MachineOperand &Op, uint16_t Flags = NodeAttrs::None);
  828         uint16_t Flags = NodeAttrs::PhiRef);
  830         MachineOperand &Op, uint16_t Flags = NodeAttrs::None);
  832         RegisterRef RR, uint16_t Flags = NodeAttrs::PhiRef);
  894       if (NA.Addr->getType() == NodeAttrs::Ref) {
lib/Target/Hexagon/RDFLiveness.cpp
  118   if (RefA.Addr->getFlags() & NodeAttrs::Undef)
  142     if (TA.Addr->getFlags() & NodeAttrs::PhiRef)
  161     bool IsPhi = TA.Addr->getFlags() & NodeAttrs::PhiRef;
  170     if (IA.Addr->getKind() == NodeAttrs::Stmt)
  186     bool StmtA = OA.Addr->getKind() == NodeAttrs::Stmt;
  187     bool StmtB = OB.Addr->getKind() == NodeAttrs::Stmt;
  227     return TA.Addr->getKind() == NodeAttrs::Def &&
  234     bool IsPhi = DFG.IsCode<NodeAttrs::Phi>(TA);
  254       if (!FullChain || !(Flags & NodeAttrs::PhiRef))
  255         if (!(Flags & NodeAttrs::Preserving)) // Don't care about Undef here.
  261     return DA.Addr->getFlags() & NodeAttrs::Dead;
  284     if (!(DA.Addr->getFlags() & NodeAttrs::PhiRef))
  301     if (!(DA.Addr->getFlags() & NodeAttrs::PhiRef))
  308     for (auto U : PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG)) {
  348           if (!(R.Addr->getFlags() & NodeAttrs::Clobbering))
  390   bool IsDead = DefA.Addr->getFlags() & NodeAttrs::Dead;
  394     if (!(UA.Addr->getFlags() & NodeAttrs::Undef)) {
  432     auto Ps = BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG);
  454       if (!DFG.IsRef<NodeAttrs::Def>(R))
  471       bool IsDead = DA.Addr->getFlags() & NodeAttrs::Dead;
  476         if ((F & (NodeAttrs::Undef | NodeAttrs::PhiRef)) == 0) {
  476         if ((F & (NodeAttrs::Undef | NodeAttrs::PhiRef)) == 0) {
  493           if (!(Flags & NodeAttrs::PhiRef))
  553       if (!DFG.IsRef<NodeAttrs::Use>(I) || SeenUses.count(I.Id))
  564         if (D.Addr->getFlags() & NodeAttrs::PhiRef) {
  617     NodeList PUs = PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG);
  670       NodeList Ds = PA.Addr->members_if(DFG.IsRef<NodeAttrs::Def>, DFG);
  727     for (auto P : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG))
  743     NodeList Phis = BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG);
  750       for (auto U : PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG)) {
 1051         if (!(TA.Addr->getFlags() & NodeAttrs::Preserving))
 1071     if (IA.Addr->getKind() != NodeAttrs::Stmt)
 1074       if (UA.Addr->getFlags() & NodeAttrs::Undef)