Lines Matching full:da

440 void DefNode::linkToDef(NodeId Self, Def DA) {  in linkToDef()  argument
441 RefData.RD = DA.Id; in linkToDef()
442 RefData.Sib = DA.Addr->getReachedDef(); in linkToDef()
443 DA.Addr->setReachedDef(Self); in linkToDef()
447 void UseNode::linkToDef(NodeId Self, Def DA) { in linkToDef() argument
448 RefData.RD = DA.Id; in linkToDef()
449 RefData.Sib = DA.Addr->getReachedUse(); in linkToDef()
450 DA.Addr->setReachedUse(Self); in linkToDef()
793 Def DA = NA; in cloneNode() local
794 DA.Addr->setReachedDef(0); in cloneNode()
795 DA.Addr->setReachedUse(0); in cloneNode()
819 Def DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags); in newDef() local
820 DA.Addr->setRegRef(&Op, *this); in newDef()
821 return DA; in newDef()
825 Def DA = newNode(NodeAttrs::Ref | NodeAttrs::Def | Flags); in newDef() local
827 DA.Addr->setRegRef(RR, *this); in newDef()
828 return DA; in newDef()
929 Def DA = newDef(PA, RR, PhiFlags); in build() local
930 PA.Addr->addMember(DA, *this); in build()
957 Def DA = newDef(PA, RR, PhiFlags); in build() local
958 PA.Addr->addMember(DA, *this); in build()
1050 for (Def DA : IA.Addr->members_if(IsDef, *this)) { in pushClobbers() local
1051 if (Visited.count(DA.Id)) in pushClobbers()
1053 if (!(DA.Addr->getFlags() & NodeAttrs::Clobbering)) in pushClobbers()
1056 NodeList Rel = getRelatedRefs(IA, DA); in pushClobbers()
1062 DefM[RR.Reg].push(DA); in pushClobbers()
1070 DefM[A].push(DA); in pushClobbers()
1098 for (Def DA : IA.Addr->members_if(IsDef, *this)) { in pushDefs() local
1099 if (Visited.count(DA.Id)) in pushDefs()
1101 if (DA.Addr->getFlags() & NodeAttrs::Clobbering) in pushDefs()
1104 NodeList Rel = getRelatedRefs(IA, DA); in pushDefs()
1120 DefM[RR.Reg].push(DA); in pushDefs()
1126 DefM[A].push(DA); in pushDefs()
1307 Def DA = newDef(SA, Op, Flags); in buildStmt() local
1308 SA.Addr->addMember(DA, *this); in buildStmt()
1320 Def DA = newDef(SA, Op, Flags); in buildStmt() local
1321 SA.Addr->addMember(DA, *this); in buildStmt()
1358 Def DA = newDef(SA, Op, Flags); in buildStmt() local
1359 SA.Addr->addMember(DA, *this); in buildStmt()
1470 Def DA = M; in removeUnusedPhis() local
1471 if (DA.Addr->getReachedDef() != 0 || DA.Addr->getReachedUse() != 0) in removeUnusedPhis()
1685 // Remove the def node DA from any data-flow and structural links.
1686 void DataFlowGraph::unlinkDefDF(Def DA) { in unlinkDefDF() argument
1694 // ... -- | DA | -- ... -- 0 : sibling chain of DA in unlinkDefDF()
1705 NodeId RD = DA.Addr->getReachingDef(); in unlinkDefDF()
1708 // Also, defs reached by DA are now "promoted" to being reached by RD, in unlinkDefDF()
1710 // DA belongs. in unlinkDefDF()
1721 NodeList ReachedDefs = getAllNodes(DA.Addr->getReachedDef()); in unlinkDefDF()
1722 NodeList ReachedUses = getAllNodes(DA.Addr->getReachedUse()); in unlinkDefDF()
1735 NodeId Sib = DA.Addr->getSibling(); in unlinkDefDF()
1741 // Update the reaching def node and remove DA from the sibling list. in unlinkDefDF()
1744 if (TA.Id == DA.Id) { in unlinkDefDF()
1745 // If DA is the first reached def, just update the RD's reached def in unlinkDefDF()
1746 // to the DA's sibling. in unlinkDefDF()
1750 // DA from it. in unlinkDefDF()
1753 if (S == DA.Id) { in unlinkDefDF()
1761 // Splice the DA's reached defs into the RDA's reached def chain. in unlinkDefDF()
1767 // Splice the DA's reached uses into the RDA's reached use chain. in unlinkDefDF()