diff options
author | Heejin Ahn <aheejin@gmail.com> | 2018-06-01 00:03:21 +0000 |
---|---|---|
committer | Heejin Ahn <aheejin@gmail.com> | 2018-06-01 00:03:21 +0000 |
commit | d69acf3b4cd2c51ba4eb2a455fd6e9e3c0d92b4b (patch) | |
tree | 0789b5640ed9e69b4d43381d6b55f80ebec54ee2 /llvm/lib/CodeGen/Analysis.cpp | |
parent | d51fbfca46ca75ff70daba3661702257703a331b (diff) | |
download | llvm-d69acf3b4cd2c51ba4eb2a455fd6e9e3c0d92b4b.zip llvm-d69acf3b4cd2c51ba4eb2a455fd6e9e3c0d92b4b.tar.gz llvm-d69acf3b4cd2c51ba4eb2a455fd6e9e3c0d92b4b.tar.bz2 |
Change ambiguous uses of term 'funclet' to 'EH scopes'. NFC.
Summary:
`getEHScopeMembership()` function is used not only for funclet-based
EHs; they apply to all EH schemes that use the scoped IR
(catchpad/cleanuppad/...). D47005 (rL333045) changed some of the uses of
the term 'funclet' to 'EH scopes' in case they apply to all scoped EH,
and this fixes more of them. For `FuncletLayout` pass, I left it as is
because the pass is only used for funclet-based EH.
Reviewers: majnemer
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D47611
llvm-svn: 333711
Diffstat (limited to 'llvm/lib/CodeGen/Analysis.cpp')
-rw-r--r-- | llvm/lib/CodeGen/Analysis.cpp | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/llvm/lib/CodeGen/Analysis.cpp b/llvm/lib/CodeGen/Analysis.cpp index e7e4bc6..79f11de 100644 --- a/llvm/lib/CodeGen/Analysis.cpp +++ b/llvm/lib/CodeGen/Analysis.cpp @@ -629,9 +629,9 @@ bool llvm::returnTypeIsEligibleForTailCall(const Function *F, return true; } -static void -collectEHScopeMembers(DenseMap<const MachineBasicBlock *, int> &ScopeMembership, - int Scope, const MachineBasicBlock *MBB) { +static void collectEHScopeMembers( + DenseMap<const MachineBasicBlock *, int> &EHScopeMembership, int EHScope, + const MachineBasicBlock *MBB) { SmallVector<const MachineBasicBlock *, 16> Worklist = {MBB}; while (!Worklist.empty()) { const MachineBasicBlock *Visiting = Worklist.pop_back_val(); @@ -640,11 +640,11 @@ collectEHScopeMembers(DenseMap<const MachineBasicBlock *, int> &ScopeMembership, continue; // Add this MBB to our scope. - auto P = ScopeMembership.insert(std::make_pair(Visiting, Scope)); + auto P = EHScopeMembership.insert(std::make_pair(Visiting, EHScope)); // Don't revisit blocks. if (!P.second) { - assert(P.first->second == Scope && "MBB is part of two scopes!"); + assert(P.first->second == EHScope && "MBB is part of two scopes!"); continue; } @@ -660,24 +660,24 @@ collectEHScopeMembers(DenseMap<const MachineBasicBlock *, int> &ScopeMembership, DenseMap<const MachineBasicBlock *, int> llvm::getEHScopeMembership(const MachineFunction &MF) { - DenseMap<const MachineBasicBlock *, int> ScopeMembership; + DenseMap<const MachineBasicBlock *, int> EHScopeMembership; // We don't have anything to do if there aren't any EH pads. if (!MF.hasEHScopes()) - return ScopeMembership; + return EHScopeMembership; int EntryBBNumber = MF.front().getNumber(); bool IsSEH = isAsynchronousEHPersonality( classifyEHPersonality(MF.getFunction().getPersonalityFn())); const TargetInstrInfo *TII = MF.getSubtarget().getInstrInfo(); - SmallVector<const MachineBasicBlock *, 16> ScopeBlocks; + SmallVector<const MachineBasicBlock *, 16> EHScopeBlocks; SmallVector<const MachineBasicBlock *, 16> UnreachableBlocks; SmallVector<const MachineBasicBlock *, 16> SEHCatchPads; SmallVector<std::pair<const MachineBasicBlock *, int>, 16> CatchRetSuccessors; for (const MachineBasicBlock &MBB : MF) { if (MBB.isEHScopeEntry()) { - ScopeBlocks.push_back(&MBB); + EHScopeBlocks.push_back(&MBB); } else if (IsSEH && MBB.isEHPad()) { SEHCatchPads.push_back(&MBB); } else if (MBB.pred_empty()) { @@ -700,24 +700,24 @@ llvm::getEHScopeMembership(const MachineFunction &MF) { } // We don't have anything to do if there aren't any EH pads. - if (ScopeBlocks.empty()) - return ScopeMembership; + if (EHScopeBlocks.empty()) + return EHScopeMembership; // Identify all the basic blocks reachable from the function entry. - collectEHScopeMembers(ScopeMembership, EntryBBNumber, &MF.front()); + collectEHScopeMembers(EHScopeMembership, EntryBBNumber, &MF.front()); // All blocks not part of a scope are in the parent function. for (const MachineBasicBlock *MBB : UnreachableBlocks) - collectEHScopeMembers(ScopeMembership, EntryBBNumber, MBB); + collectEHScopeMembers(EHScopeMembership, EntryBBNumber, MBB); // Next, identify all the blocks inside the scopes. - for (const MachineBasicBlock *MBB : ScopeBlocks) - collectEHScopeMembers(ScopeMembership, MBB->getNumber(), MBB); + for (const MachineBasicBlock *MBB : EHScopeBlocks) + collectEHScopeMembers(EHScopeMembership, MBB->getNumber(), MBB); // SEH CatchPads aren't really scopes, handle them separately. for (const MachineBasicBlock *MBB : SEHCatchPads) - collectEHScopeMembers(ScopeMembership, EntryBBNumber, MBB); + collectEHScopeMembers(EHScopeMembership, EntryBBNumber, MBB); // Finally, identify all the targets of a catchret. for (std::pair<const MachineBasicBlock *, int> CatchRetPair : CatchRetSuccessors) - collectEHScopeMembers(ScopeMembership, CatchRetPair.second, + collectEHScopeMembers(EHScopeMembership, CatchRetPair.second, CatchRetPair.first); - return ScopeMembership; + return EHScopeMembership; } |