summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils
diff options
context:
space:
mode:
authorRong Xu <xur@google.com>2016-10-24 16:50:12 +0000
committerRong Xu <xur@google.com>2016-10-24 16:50:12 +0000
commitb05bac940da334e10dee66f4d1d88c53014bcf5d (patch)
tree942b9ab3677d5c55e662228044c38e4ae89ad67c /llvm/lib/Transforms/Utils
parentf51bf969772df47f7f8c0ed34f07ae6a80d6dda7 (diff)
downloadbcm5719-llvm-b05bac940da334e10dee66f4d1d88c53014bcf5d.tar.gz
bcm5719-llvm-b05bac940da334e10dee66f4d1d88c53014bcf5d.zip
Check the number of Args in LibCallsShrinkWrap.
Some library fucntions can have no argument. llvm-svn: 284989
Diffstat (limited to 'llvm/lib/Transforms/Utils')
-rw-r--r--llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp b/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
index cf56a589c9b..c9924984bb5 100644
--- a/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
+++ b/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
@@ -317,6 +317,8 @@ void LibCallsShrinkWrap::checkCandidate(CallInst &CI) {
if (!TLI.getLibFunc(*Callee, Func) || !TLI.has(Func))
return;
+ if (CI.getNumArgOperands() == 0)
+ return;
// TODO: Handle long double in other formats.
Type *ArgType = CI.getArgOperand(0)->getType();
if (!(ArgType->isFloatTy() || ArgType->isDoubleTy() ||
OpenPOWER on IntegriCloud