diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-05-16 04:12:04 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-05-16 04:12:04 +0000 |
commit | e04f0d34d19c3d5325ff0977d948df3771fafc43 (patch) | |
tree | 6d7ad70381a7da1d5d4c4ab468a9a569a8ecf760 /llvm/lib/Analysis/MemoryBuiltins.cpp | |
parent | a5c7ceedb58b28e4fa85ff323cade82edfa20fe4 (diff) | |
download | llvm-e04f0d34d19c3d5325ff0977d948df3771fafc43.zip llvm-e04f0d34d19c3d5325ff0977d948df3771fafc43.tar.gz llvm-e04f0d34d19c3d5325ff0977d948df3771fafc43.tar.bz2 |
Respect the 'nobuiltin' attribute when determining if a call is to a memory builtin.
llvm-svn: 181978
Diffstat (limited to 'llvm/lib/Analysis/MemoryBuiltins.cpp')
-rw-r--r-- | llvm/lib/Analysis/MemoryBuiltins.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Analysis/MemoryBuiltins.cpp b/llvm/lib/Analysis/MemoryBuiltins.cpp index 9c0d8ac..1660347 100644 --- a/llvm/lib/Analysis/MemoryBuiltins.cpp +++ b/llvm/lib/Analysis/MemoryBuiltins.cpp @@ -77,6 +77,9 @@ static Function *getCalledFunction(const Value *V, bool LookThroughBitCast) { if (!CS.getInstruction()) return 0; + if (CS.hasFnAttr(Attribute::NoBuiltin)) + return 0; + Function *Callee = CS.getCalledFunction(); if (!Callee || !Callee->isDeclaration()) return 0; |