summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2015-10-26 18:41:13 +0000
committerDavid Blaikie <dblaikie@gmail.com>2015-10-26 18:41:13 +0000
commit7b54b525cd5659a1fbdff0246a789824ea624946 (patch)
treedc8f0ad9a463ca1555393cb72c5cdbc693c5eadd /llvm/lib/CodeGen
parent94c83370b55cf30d1b3004fe11b67c8f8816a8d4 (diff)
downloadbcm5719-llvm-7b54b525cd5659a1fbdff0246a789824ea624946.tar.gz
bcm5719-llvm-7b54b525cd5659a1fbdff0246a789824ea624946.zip
Remove assert(false) in favor of asserting the if conditional it is contained within.
Also adjust the code to avoid 3 redundant map lookups. llvm-svn: 251327
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/Analysis.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/llvm/lib/CodeGen/Analysis.cpp b/llvm/lib/CodeGen/Analysis.cpp
index a13ab0d8b8d..75579a2b455 100644
--- a/llvm/lib/CodeGen/Analysis.cpp
+++ b/llvm/lib/CodeGen/Analysis.cpp
@@ -649,18 +649,15 @@ bool llvm::canBeOmittedFromSymbolTable(const GlobalValue *GV) {
static void collectFuncletMembers(
DenseMap<const MachineBasicBlock *, int> &FuncletMembership, int Funclet,
const MachineBasicBlock *MBB) {
+ // Add this MBB to our funclet.
+ auto P = FuncletMembership.insert(std::make_pair(MBB, Funclet));
+
// Don't revisit blocks.
- if (FuncletMembership.count(MBB) > 0) {
- if (FuncletMembership[MBB] != Funclet) {
- assert(false && "MBB is part of two funclets!");
- report_fatal_error("MBB is part of two funclets!");
- }
+ if (!P.second) {
+ assert(P.first->second == Funclet && "MBB is part of two funclets!");
return;
}
- // Add this MBB to our funclet.
- FuncletMembership[MBB] = Funclet;
-
bool IsReturn = false;
int NumTerminators = 0;
for (const MachineInstr &MI : MBB->terminators()) {
OpenPOWER on IntegriCloud