[llvm] r253514 - [BuildLibCalls] EmitStrNLen() is dead code. Garbage collect.
Davide Italiano via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 18 14:29:38 PST 2015
Author: davide
Date: Wed Nov 18 16:29:38 2015
New Revision: 253514
URL: http://llvm.org/viewvc/llvm-project?rev=253514&view=rev
Log:
[BuildLibCalls] EmitStrNLen() is dead code. Garbage collect.
Modified:
llvm/trunk/lib/Transforms/Utils/BuildLibCalls.cpp
Modified: llvm/trunk/lib/Transforms/Utils/BuildLibCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/BuildLibCalls.cpp?rev=253514&r1=253513&r2=253514&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Utils/BuildLibCalls.cpp (original)
+++ llvm/trunk/lib/Transforms/Utils/BuildLibCalls.cpp Wed Nov 18 16:29:38 2015
@@ -55,32 +55,6 @@ Value *llvm::EmitStrLen(Value *Ptr, IRBu
return CI;
}
-/// EmitStrNLen - Emit a call to the strnlen function to the builder, for the
-/// specified pointer. Ptr is required to be some pointer type, MaxLen must
-/// be of size_t type, and the return value has 'intptr_t' type.
-Value *llvm::EmitStrNLen(Value *Ptr, Value *MaxLen, IRBuilder<> &B,
- const DataLayout &DL, const TargetLibraryInfo *TLI) {
- if (!TLI->has(LibFunc::strnlen))
- return nullptr;
-
- Module *M = B.GetInsertBlock()->getParent()->getParent();
- AttributeSet AS[2];
- AS[0] = AttributeSet::get(M->getContext(), 1, Attribute::NoCapture);
- Attribute::AttrKind AVs[2] = { Attribute::ReadOnly, Attribute::NoUnwind };
- AS[1] = AttributeSet::get(M->getContext(), AttributeSet::FunctionIndex, AVs);
-
- LLVMContext &Context = B.GetInsertBlock()->getContext();
- Constant *StrNLen =
- M->getOrInsertFunction("strnlen", AttributeSet::get(M->getContext(), AS),
- DL.getIntPtrType(Context), B.getInt8PtrTy(),
- DL.getIntPtrType(Context), nullptr);
- CallInst *CI = B.CreateCall(StrNLen, {CastToCStr(Ptr, B), MaxLen}, "strnlen");
- if (const Function *F = dyn_cast<Function>(StrNLen->stripPointerCasts()))
- CI->setCallingConv(F->getCallingConv());
-
- return CI;
-}
-
/// EmitStrChr - Emit a call to the strchr function to the builder, for the
/// specified pointer and character. Ptr is required to be some pointer type,
/// and the return value has 'i8*' type.
More information about the llvm-commits
mailing list