git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189473 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Alexey Samsonov 2013-08-28 11:25:12 +00:00
parent 2fb982aa72
commit f1db2a6a0e

View File

@ -307,10 +307,11 @@ FunctionType *DataFlowSanitizer::getTrampolineFunctionType(FunctionType *T) {
FunctionType *DataFlowSanitizer::getCustomFunctionType(FunctionType *T) { FunctionType *DataFlowSanitizer::getCustomFunctionType(FunctionType *T) {
assert(!T->isVarArg()); assert(!T->isVarArg());
llvm::SmallVector<Type *, 4> ArgTypes; llvm::SmallVector<Type *, 4> ArgTypes;
for (FunctionType::param_iterator i = T->param_begin(), e = T->param_end(); i != e; ++i) { for (FunctionType::param_iterator i = T->param_begin(), e = T->param_end();
i != e; ++i) {
FunctionType *FT; FunctionType *FT;
if (isa<PointerType>(*i) && if (isa<PointerType>(*i) && (FT = dyn_cast<FunctionType>(cast<PointerType>(
(FT = dyn_cast<FunctionType>(cast<PointerType>(*i)->getElementType()))) { *i)->getElementType()))) {
ArgTypes.push_back(getTrampolineFunctionType(FT)->getPointerTo()); ArgTypes.push_back(getTrampolineFunctionType(FT)->getPointerTo());
ArgTypes.push_back(Type::getInt8PtrTy(*Ctx)); ArgTypes.push_back(Type::getInt8PtrTy(*Ctx));
} else { } else {