summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/CodeMetrics.cpp
diff options
context:
space:
mode:
authorEli Bendersky <eliben@google.com>2014-03-17 16:19:07 +0000
committerEli Bendersky <eliben@google.com>2014-03-17 16:19:07 +0000
commit576ef3c66764a45249780f068bbd5e41c9cb21d6 (patch)
treed4b3a4d3cfa79362deca1b4cae3d971cd2a3784b /llvm/lib/Analysis/CodeMetrics.cpp
parent83731469a1be2f81b483a37c8c12739a8fb153c5 (diff)
downloadbcm5719-llvm-576ef3c66764a45249780f068bbd5e41c9cb21d6.tar.gz
bcm5719-llvm-576ef3c66764a45249780f068bbd5e41c9cb21d6.zip
Consistent use of the noduplicate attribute.
The "noduplicate" attribute of call instructions is sometimes queried directly and sometimes through the cannotDuplicate() predicate. This patch streamlines all queries to use the cannotDuplicate() predicate. It also adds this predicate to InvokeInst, to mirror what CallInst has. llvm-svn: 204049
Diffstat (limited to 'llvm/lib/Analysis/CodeMetrics.cpp')
-rw-r--r--llvm/lib/Analysis/CodeMetrics.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Analysis/CodeMetrics.cpp b/llvm/lib/Analysis/CodeMetrics.cpp
index 4a05888170a..4c8a093684f 100644
--- a/llvm/lib/Analysis/CodeMetrics.cpp
+++ b/llvm/lib/Analysis/CodeMetrics.cpp
@@ -65,11 +65,11 @@ void CodeMetrics::analyzeBasicBlock(const BasicBlock *BB,
++NumVectorInsts;
if (const CallInst *CI = dyn_cast<CallInst>(II))
- if (CI->hasFnAttr(Attribute::NoDuplicate))
+ if (CI->cannotDuplicate())
notDuplicatable = true;
if (const InvokeInst *InvI = dyn_cast<InvokeInst>(II))
- if (InvI->hasFnAttr(Attribute::NoDuplicate))
+ if (InvI->cannotDuplicate())
notDuplicatable = true;
NumInsts += TTI.getUserCost(&*II);
OpenPOWER on IntegriCloud