Lines Matching defs:NA

52   auto NA = P.G.addr<NodeBase *>(P.Obj);
53 uint16_t Attrs = NA.Addr->getAttrs();
365 Node NA = {reinterpret_cast<NodeBase *>(ActiveEnd), makeId(ActiveB, Index)};
367 return NA;
388 // Insert node NA after "this" in the circular chain.
389 void NodeBase::append(Node NA) {
391 // If NA is already "next", do nothing.
392 if (Next != NA.Id) {
393 Next = NA.Id;
394 NA.Addr->Next = Nx;
428 Node NA = G.addr<NodeBase *>(getNext());
430 while (NA.Addr != this) {
431 if (NA.Addr->getType() == NodeAttrs::Code)
432 return NA;
433 NA = G.addr<NodeBase *>(NA.Addr->getNext());
466 // Add node NA at the end of the member list of the given code node.
467 void CodeNode::addMember(Node NA, const DataFlowGraph &G) {
470 ML.Addr->append(NA);
472 CodeData.FirstM = NA.Id;
474 NA.Addr->setNext(Self);
476 CodeData.LastM = NA.Id;
479 // Add node NA after member node MA in the given code node.
480 void CodeNode::addMemberAfter(Node MA, Node NA, const DataFlowGraph &G) {
481 MA.Addr->append(NA);
483 CodeData.LastM = NA.Id;
486 // Remove member node NA from the given code node.
487 void CodeNode::removeMember(Node NA, const DataFlowGraph &G) {
492 if (MA.Id == NA.Id) {
505 if (MX == NA.Id) {
506 MA.Addr->setNext(NA.Addr->getNext());
509 if (CodeData.LastM == NA.Id)
526 Node NA = G.addr<NodeBase *>(getNext());
528 while (NA.Addr != this) {
529 assert(NA.Addr->getType() == NodeAttrs::Code);
530 if (NA.Addr->getKind() == NodeAttrs::Block)
531 return NA;
532 NA = G.addr<NodeBase *>(NA.Addr->getNext());
570 auto EqBB = [BB](Node NA) -> bool { return Block(NA).Addr->getCode() == BB; };
784 Node NA = newNode(0);
785 memcpy(NA.Addr, B.Addr, sizeof(NodeBase));
787 if (NA.Addr->getType() == NodeAttrs::Ref) {
788 Ref RA = NA;
791 if (NA.Addr->getKind() == NodeAttrs::Def) {
792 Def DA = NA;
797 return NA;
1206 Ref NA;
1209 NA = getNextRelated(IA, RA);
1210 if (NA.Id == 0 || NA.Id == Start)
1212 if (P(NA))
1214 RA = NA;
1217 if (NA.Id != 0 && NA.Id != Start)
1218 return std::make_pair(RA, NA);
1236 Ref NA = cloneNode(RA);
1237 NA.Addr->setFlags(Flags | NodeAttrs::Shadow);
1238 IA.Addr->addMemberAfter(Loc.first, NA, *this);
1239 return NA;
1620 auto IsUseForBA = [BA](Node NA) -> bool {
1621 if (NA.Addr->getKind() != NodeAttrs::Use)
1623 assert(NA.Addr->getFlags() & NodeAttrs::PhiRef);
1624 return PhiUse(NA).Addr->getPredecessor() == BA.Id;