summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Expression/IRDynamicChecks.cpp12
-rw-r--r--lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp16
-rw-r--r--lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h25
-rw-r--r--lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp5
-rw-r--r--polly/lib/CodeGen/ManagedMemoryRewrite.cpp5
5 files changed, 32 insertions, 31 deletions
diff --git a/lldb/source/Expression/IRDynamicChecks.cpp b/lldb/source/Expression/IRDynamicChecks.cpp
index 8d9100a41af..4bc7cc83ca4 100644
--- a/lldb/source/Expression/IRDynamicChecks.cpp
+++ b/lldb/source/Expression/IRDynamicChecks.cpp
@@ -254,7 +254,7 @@ protected:
/// @return
/// The function pointer, for use in a CallInst.
//------------------------------------------------------------------
- llvm::Value *BuildPointerValidatorFunc(lldb::addr_t start_address) {
+ llvm::FunctionCallee BuildPointerValidatorFunc(lldb::addr_t start_address) {
llvm::Type *param_array[1];
param_array[0] = const_cast<llvm::PointerType *>(GetI8PtrTy());
@@ -266,7 +266,7 @@ protected:
PointerType *fun_ptr_ty = PointerType::getUnqual(fun_ty);
Constant *fun_addr_int =
ConstantInt::get(GetIntptrTy(), start_address, false);
- return ConstantExpr::getIntToPtr(fun_addr_int, fun_ptr_ty);
+ return {fun_ty, ConstantExpr::getIntToPtr(fun_addr_int, fun_ptr_ty)};
}
//------------------------------------------------------------------
@@ -279,7 +279,7 @@ protected:
/// @return
/// The function pointer, for use in a CallInst.
//------------------------------------------------------------------
- llvm::Value *BuildObjectCheckerFunc(lldb::addr_t start_address) {
+ llvm::FunctionCallee BuildObjectCheckerFunc(lldb::addr_t start_address) {
llvm::Type *param_array[2];
param_array[0] = const_cast<llvm::PointerType *>(GetI8PtrTy());
@@ -292,7 +292,7 @@ protected:
PointerType *fun_ptr_ty = PointerType::getUnqual(fun_ty);
Constant *fun_addr_int =
ConstantInt::get(GetIntptrTy(), start_address, false);
- return ConstantExpr::getIntToPtr(fun_addr_int, fun_ptr_ty);
+ return {fun_ty, ConstantExpr::getIntToPtr(fun_addr_int, fun_ptr_ty)};
}
PointerType *GetI8PtrTy() {
@@ -382,7 +382,7 @@ protected:
}
private:
- llvm::Value *m_valid_pointer_check_func;
+ llvm::FunctionCallee m_valid_pointer_check_func;
};
class ObjcObjectChecker : public Instrumenter {
@@ -544,7 +544,7 @@ protected:
}
private:
- llvm::Value *m_objc_object_check_func;
+ llvm::FunctionCallee m_objc_object_check_func;
};
IRDynamicChecks::IRDynamicChecks(DynamicCheckerFunctions &checker_functions,
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp b/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
index 44c48944f6f..9c928054cfb 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
+++ b/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
@@ -477,15 +477,15 @@ bool IRForTarget::RewriteObjCConstString(llvm::GlobalVariable *ns_str,
ArrayRef<Type *> CFSCWB_arg_types(arg_type_array, 5);
- llvm::Type *CFSCWB_ty =
+ llvm::FunctionType *CFSCWB_ty =
FunctionType::get(ns_str_ty, CFSCWB_arg_types, false);
// Build the constant containing the pointer to the function
PointerType *CFSCWB_ptr_ty = PointerType::getUnqual(CFSCWB_ty);
Constant *CFSCWB_addr_int =
ConstantInt::get(m_intptr_ty, CFStringCreateWithBytes_addr, false);
- m_CFStringCreateWithBytes =
- ConstantExpr::getIntToPtr(CFSCWB_addr_int, CFSCWB_ptr_ty);
+ m_CFStringCreateWithBytes = {
+ CFSCWB_ty, ConstantExpr::getIntToPtr(CFSCWB_addr_int, CFSCWB_ptr_ty)};
}
ConstantDataSequential *string_array = NULL;
@@ -880,14 +880,15 @@ bool IRForTarget::RewriteObjCSelector(Instruction *selector_load) {
ArrayRef<Type *> srN_arg_types(type_array, 1);
- llvm::Type *srN_type =
+ llvm::FunctionType *srN_type =
FunctionType::get(sel_ptr_type, srN_arg_types, false);
// Build the constant containing the pointer to the function
PointerType *srN_ptr_ty = PointerType::getUnqual(srN_type);
Constant *srN_addr_int =
ConstantInt::get(m_intptr_ty, sel_registerName_addr, false);
- m_sel_registerName = ConstantExpr::getIntToPtr(srN_addr_int, srN_ptr_ty);
+ m_sel_registerName = {srN_type,
+ ConstantExpr::getIntToPtr(srN_addr_int, srN_ptr_ty)};
}
Value *argument_array[1];
@@ -1042,14 +1043,15 @@ bool IRForTarget::RewriteObjCClassReference(Instruction *class_load) {
ArrayRef<Type *> ogC_arg_types(type_array, 1);
- llvm::Type *ogC_type =
+ llvm::FunctionType *ogC_type =
FunctionType::get(class_type, ogC_arg_types, false);
// Build the constant containing the pointer to the function
PointerType *ogC_ptr_ty = PointerType::getUnqual(ogC_type);
Constant *ogC_addr_int =
ConstantInt::get(m_intptr_ty, objc_getClass_addr, false);
- m_objc_getClass = ConstantExpr::getIntToPtr(ogC_addr_int, ogC_ptr_ty);
+ m_objc_getClass = {ogC_type,
+ ConstantExpr::getIntToPtr(ogC_addr_int, ogC_ptr_ty)};
}
Value *argument_array[1];
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h b/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
index 6e54dd92fa7..526d787854a 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
+++ b/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
@@ -16,6 +16,7 @@
#include "lldb/Utility/Stream.h"
#include "lldb/Utility/StreamString.h"
#include "lldb/lldb-public.h"
+#include "llvm/IR/DerivedTypes.h"
#include "llvm/Pass.h"
#include <functional>
@@ -30,11 +31,9 @@ class Function;
class GlobalValue;
class GlobalVariable;
class Instruction;
-class IntegerType;
class Module;
class StoreInst;
class DataLayout;
-class Type;
class Value;
}
@@ -556,18 +555,16 @@ private:
///module.
lldb_private::ClangExpressionDeclMap
*m_decl_map; ///< The DeclMap containing the Decls
- llvm::Constant *m_CFStringCreateWithBytes; ///< The address of the function
- ///CFStringCreateWithBytes, cast to
- ///the
- /// appropriate function pointer type
- llvm::Constant *m_sel_registerName; ///< The address of the function
- ///sel_registerName, cast to the
- ///appropriate
- /// function pointer type
- llvm::Constant *m_objc_getClass; ///< The address of the function
- ///objc_getClass, cast to the
- ///appropriate
- /// function pointer type
+ llvm::FunctionCallee
+ m_CFStringCreateWithBytes; ///< The address of the function
+ /// CFStringCreateWithBytes, cast to the
+ /// appropriate function pointer type
+ llvm::FunctionCallee m_sel_registerName; ///< The address of the function
+ /// sel_registerName, cast to the
+ /// appropriate function pointer type
+ llvm::FunctionCallee m_objc_getClass; ///< The address of the function
+ /// objc_getClass, cast to the
+ /// appropriate function pointer type
llvm::IntegerType
*m_intptr_ty; ///< The type of an integer large enough to hold a pointer.
lldb_private::Stream
diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp
index 8fb09601bc0..4725e8c5b0e 100644
--- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp
+++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp
@@ -192,8 +192,9 @@ bool fixupX86StructRetCalls(llvm::Module &module) {
llvm::LoadInst *new_func_addr_load =
new llvm::LoadInst(new_func_ptr, "load_func_pointer", call_inst);
// and create a callinstruction from it
- llvm::CallInst *new_call_inst = llvm::CallInst::Create(
- new_func_addr_load, new_call_args, "new_func_call", call_inst);
+ llvm::CallInst *new_call_inst =
+ llvm::CallInst::Create(new_func_type, new_func_addr_load, new_call_args,
+ "new_func_call", call_inst);
new_call_inst->setCallingConv(call_inst->getCallingConv());
new_call_inst->setTailCall(call_inst->isTailCall());
llvm::LoadInst *lldb_save_result_address =
diff --git a/polly/lib/CodeGen/ManagedMemoryRewrite.cpp b/polly/lib/CodeGen/ManagedMemoryRewrite.cpp
index ead32517b02..8065eb8c4bd 100644
--- a/polly/lib/CodeGen/ManagedMemoryRewrite.cpp
+++ b/polly/lib/CodeGen/ManagedMemoryRewrite.cpp
@@ -310,7 +310,8 @@ static void rewriteAllocaAsManagedMemory(AllocaInst *Alloca,
PollyIRBuilder Builder(M->getContext());
Builder.SetInsertPoint(Alloca);
- Value *MallocManagedFn = getOrCreatePollyMallocManaged(*Alloca->getModule());
+ Function *MallocManagedFn =
+ getOrCreatePollyMallocManaged(*Alloca->getModule());
const uint64_t Size =
DL.getTypeAllocSize(Alloca->getType()->getElementType());
Value *SizeVal = Builder.getInt64(Size);
@@ -330,7 +331,7 @@ static void rewriteAllocaAsManagedMemory(AllocaInst *Alloca,
continue;
Builder.SetInsertPoint(Return);
- Value *FreeManagedFn = getOrCreatePollyFreeManaged(*M);
+ Function *FreeManagedFn = getOrCreatePollyFreeManaged(*M);
Builder.CreateCall(FreeManagedFn, {RawManagedMem});
}
}
OpenPOWER on IntegriCloud