Lines Matching defs:BA
844 Block BA = newNode(NodeAttrs::Code | NodeAttrs::Block);
845 BA.Addr->setCode(BB);
846 Owner.Addr->addMember(BA, *this);
847 return BA;
900 Block BA = newBlock(TheFunc, &B);
901 BlockNodes.insert(std::make_pair(&B, BA));
905 buildStmt(BA, I);
939 for (Block BA : Blocks) {
940 const MachineBasicBlock &B = *BA.Addr->getCode();
953 Phi PA = newPhi(BA);
970 for (Block BA : Blocks)
971 recordDefsForDF(PhiM, BA);
972 for (Block BA : Blocks)
973 buildPhis(PhiM, BA);
1242 // Create a new statement node in the block node BA that corresponds to
1244 void DataFlowGraph::buildStmt(Block BA, MachineInstr &In) {
1245 Stmt SA = newStmt(BA, &In);
1379 // Scan all defs in the block node BA and record in PhiM the locations of
1381 void DataFlowGraph::recordDefsForDF(BlockRefsMap &PhiM, Block BA) {
1382 // Check all defs from block BA and record them in each block in BA's
1385 MachineBasicBlock *BB = BA.Addr->getCode();
1397 for (Instr IA : BA.Addr->members(*this)) {
1423 // that are located in the block node BA.
1424 void DataFlowGraph::buildPhis(BlockRefsMap &PhiM, Block BA) {
1427 auto HasDF = PhiM.find(BA.Id);
1433 const MachineBasicBlock *MBB = BA.Addr->getCode();
1437 const RegisterAggr &Defs = PhiM[BA.Id];
1441 Phi PA = newPhi(BA);
1460 for (Block BA : TheFunc.Addr->members(*this)) {
1461 for (auto P : BA.Addr->members_if(IsPhi, *this))
1497 Block BA = PA.Addr->getOwner(*this);
1498 BA.Addr->removeMember(PA, *this);
1577 // Create data-flow links for all instructions in the block node BA. This
1578 // will include updating any phi nodes in BA.
1579 void DataFlowGraph::linkBlockRefs(DefStackMap &DefM, Block BA) {
1581 markBlock(BA.Id, DefM);
1590 assert(BA.Addr && "block node address is needed to create a data-flow link");
1594 for (Instr IA : BA.Addr->members(*this)) {
1612 MachineDomTreeNode *N = MDT.getNode(BA.Addr->getCode());
1620 auto IsUseForBA = [BA](Node NA) -> bool {
1624 return PhiUse(NA).Addr->getPredecessor() == BA.Id;
1628 MachineBasicBlock *MBB = BA.Addr->getCode();
1652 releaseBlock(BA.Id, DefM);