Lines Matching defs:NA

53   auto NA = P.G.addr<NodeBase *>(P.Obj);
54 uint16_t Attrs = NA.Addr->getAttrs();
366 Node NA = {reinterpret_cast<NodeBase *>(ActiveEnd), makeId(ActiveB, Index)};
368 return NA;
389 // Insert node NA after "this" in the circular chain.
390 void NodeBase::append(Node NA) {
392 // If NA is already "next", do nothing.
393 if (Next != NA.Id) {
394 Next = NA.Id;
395 NA.Addr->Next = Nx;
429 Node NA = G.addr<NodeBase *>(getNext());
431 while (NA.Addr != this) {
432 if (NA.Addr->getType() == NodeAttrs::Code)
433 return NA;
434 NA = G.addr<NodeBase *>(NA.Addr->getNext());
467 // Add node NA at the end of the member list of the given code node.
468 void CodeNode::addMember(Node NA, const DataFlowGraph &G) {
471 ML.Addr->append(NA);
473 CodeData.FirstM = NA.Id;
475 NA.Addr->setNext(Self);
477 CodeData.LastM = NA.Id;
480 // Add node NA after member node MA in the given code node.
481 void CodeNode::addMemberAfter(Node MA, Node NA, const DataFlowGraph &G) {
482 MA.Addr->append(NA);
484 CodeData.LastM = NA.Id;
487 // Remove member node NA from the given code node.
488 void CodeNode::removeMember(Node NA, const DataFlowGraph &G) {
493 if (MA.Id == NA.Id) {
506 if (MX == NA.Id) {
507 MA.Addr->setNext(NA.Addr->getNext());
510 if (CodeData.LastM == NA.Id)
527 Node NA = G.addr<NodeBase *>(getNext());
529 while (NA.Addr != this) {
530 assert(NA.Addr->getType() == NodeAttrs::Code);
531 if (NA.Addr->getKind() == NodeAttrs::Block)
532 return NA;
533 NA = G.addr<NodeBase *>(NA.Addr->getNext());
571 auto EqBB = [BB](Node NA) -> bool { return Block(NA).Addr->getCode() == BB; };
785 Node NA = newNode(0);
786 memcpy(NA.Addr, B.Addr, sizeof(NodeBase));
788 if (NA.Addr->getType() == NodeAttrs::Ref) {
789 Ref RA = NA;
792 if (NA.Addr->getKind() == NodeAttrs::Def) {
793 Def DA = NA;
798 return NA;
1207 Ref NA;
1210 NA = getNextRelated(IA, RA);
1211 if (NA.Id == 0 || NA.Id == Start)
1213 if (P(NA))
1215 RA = NA;
1218 if (NA.Id != 0 && NA.Id != Start)
1219 return std::make_pair(RA, NA);
1237 Ref NA = cloneNode(RA);
1238 NA.Addr->setFlags(Flags | NodeAttrs::Shadow);
1239 IA.Addr->addMemberAfter(Loc.first, NA, *this);
1240 return NA;
1623 auto IsUseForBA = [BA](Node NA) -> bool {
1624 if (NA.Addr->getKind() != NodeAttrs::Use)
1626 assert(NA.Addr->getFlags() & NodeAttrs::PhiRef);
1627 return PhiUse(NA).Addr->getPredecessor() == BA.Id;