[Bf-blender-cvs] [9d92456c888] functions: use ArrayRef in more places
Jacques Lucke
noreply at git.blender.org
Thu May 16 12:03:08 CEST 2019
Commit: 9d92456c888c272fa556f60dc449687f6a122344
Author: Jacques Lucke
Date: Thu May 16 11:52:56 2019 +0200
Branches: functions
https://developer.blender.org/rB9d92456c888c272fa556f60dc449687f6a122344
use ArrayRef in more places
===================================================================
M source/blender/functions/backends/llvm/build_ir_body.hpp
M source/blender/functions/backends/llvm/builder.cpp
M source/blender/functions/backends/llvm/builder.hpp
M source/blender/functions/backends/llvm/ir_for_tuple_call.cpp
===================================================================
diff --git a/source/blender/functions/backends/llvm/build_ir_body.hpp b/source/blender/functions/backends/llvm/build_ir_body.hpp
index e7a1697e609..3cd7cacbbed 100644
--- a/source/blender/functions/backends/llvm/build_ir_body.hpp
+++ b/source/blender/functions/backends/llvm/build_ir_body.hpp
@@ -46,7 +46,7 @@ class CodeInterface {
m_outputs[index] = value;
}
- const LLVMValues &inputs()
+ const ArrayRef<llvm::Value *> inputs()
{
return m_inputs;
}
diff --git a/source/blender/functions/backends/llvm/builder.cpp b/source/blender/functions/backends/llvm/builder.cpp
index b2993ff3ee9..9537ac71ce5 100644
--- a/source/blender/functions/backends/llvm/builder.cpp
+++ b/source/blender/functions/backends/llvm/builder.cpp
@@ -5,7 +5,7 @@
namespace FN {
-LLVMTypes CodeBuilder::types_of_values(LLVMValuesRef values)
+LLVMTypes CodeBuilder::types_of_values(ArrayRef<llvm::Value *> values)
{
LLVMTypes types;
for (llvm::Value *value : values) {
@@ -45,7 +45,7 @@ static llvm::Function *create_wrapper_function(llvm::Module *module,
llvm::Value *CodeBuilder::CreateCallPointer(void *func_ptr,
llvm::FunctionType *ftype,
- LLVMValuesRef args,
+ ArrayRef<llvm::Value *> args,
const char *function_name)
{
BLI_assert(!ftype->isVarArg());
@@ -62,7 +62,7 @@ llvm::Value *CodeBuilder::CreateCallPointer(void *func_ptr,
}
llvm::Value *CodeBuilder::CreateCallPointer(void *func_ptr,
- LLVMValuesRef args,
+ ArrayRef<llvm::Value *> args,
llvm::Type *return_type,
const char *function_name)
{
@@ -97,7 +97,7 @@ void CodeBuilder::CreateAssertFalse(const char *message)
/* Printing
**********************************/
-void CodeBuilder::CreatePrintf(const char *format, LLVMValuesRef values)
+void CodeBuilder::CreatePrintf(const char *format, ArrayRef<llvm::Value *> values)
{
llvm::FunctionType *printf_ftype = llvm::TypeBuilder<int(char *, ...), false>::get(
this->getContext());
@@ -125,7 +125,7 @@ static void print_stacktrace(ExecutionContext *context)
void CodeBuilder::CreatePrintfWithStacktrace(llvm::Value *context_ptr,
const char *format,
- LLVMValuesRef values)
+ ArrayRef<llvm::Value *> values)
{
this->CreateCallPointer(
(void *)print_stacktrace, {context_ptr}, this->getVoidTy(), "Print Stacktrace");
diff --git a/source/blender/functions/backends/llvm/builder.hpp b/source/blender/functions/backends/llvm/builder.hpp
index d02340ae774..6984de8a6c0 100644
--- a/source/blender/functions/backends/llvm/builder.hpp
+++ b/source/blender/functions/backends/llvm/builder.hpp
@@ -7,7 +7,6 @@ namespace FN {
using LLVMValues = SmallVector<llvm::Value *>;
using LLVMTypes = BLI::SmallVector<llvm::Type *>;
-using LLVMValuesRef = ArrayRef<llvm::Value *>;
class LLVMTypeInfo;
class IRConstruct_ForLoop;
@@ -105,12 +104,12 @@ class CodeBuilder {
return llvm::ArrayType::get(m_builder.getInt8Ty(), size);
}
- llvm::Type *getStructType(LLVMTypes &types)
+ llvm::Type *getStructType(ArrayRef<llvm::Type *> types)
{
return llvm::StructType::get(this->getContext(), to_llvm_array_ref(types));
}
- llvm::FunctionType *getFunctionType(llvm::Type *ret_type, LLVMTypes &arg_types)
+ llvm::FunctionType *getFunctionType(llvm::Type *ret_type, ArrayRef<llvm::Type *> arg_types)
{
return llvm::FunctionType::get(ret_type, to_llvm_array_ref(arg_types), false);
}
@@ -187,7 +186,7 @@ class CodeBuilder {
m_builder.SetInsertPoint(block);
}
- LLVMTypes types_of_values(LLVMValuesRef values);
+ LLVMTypes types_of_values(ArrayRef<llvm::Value *> values);
/* Instruction Builders
**************************************/
@@ -350,14 +349,14 @@ class CodeBuilder {
llvm::Value *CreateCallPointer(void *func_ptr,
llvm::FunctionType *ftype,
- LLVMValuesRef args,
+ ArrayRef<llvm::Value *> args,
const char *function_name = "");
llvm::Value *CreateCallPointer(void *func_ptr,
- LLVMValuesRef args,
+ ArrayRef<llvm::Value *> args,
llvm::Type *return_type,
const char *function_name = "");
- llvm::Value *CreateCall(llvm::Function *function, LLVMValuesRef args)
+ llvm::Value *CreateCall(llvm::Function *function, ArrayRef<llvm::Value *> args)
{
return m_builder.CreateCall(function, to_llvm_array_ref(args));
}
@@ -385,7 +384,7 @@ class CodeBuilder {
return m_builder.CreateSelect(a_is_larger, a, b);
}
- llvm::Value *CreateSIntMax(LLVMValuesRef values)
+ llvm::Value *CreateSIntMax(ArrayRef<llvm::Value *> values)
{
BLI_assert(values.size() >= 1);
llvm::Value *max_value = values[0];
@@ -442,10 +441,10 @@ class CodeBuilder {
/* Print
**************************************/
- void CreatePrintf(const char *format, LLVMValuesRef values = {});
+ void CreatePrintf(const char *format, ArrayRef<llvm::Value *> values = {});
void CreatePrintfWithStacktrace(llvm::Value *context_ptr,
const char *format,
- LLVMValuesRef values);
+ ArrayRef<llvm::Value *> values);
/* Control Flow Construction
**************************************/
diff --git a/source/blender/functions/backends/llvm/ir_for_tuple_call.cpp b/source/blender/functions/backends/llvm/ir_for_tuple_call.cpp
index 64ecbf60e14..bdeba5ae98a 100644
--- a/source/blender/functions/backends/llvm/ir_for_tuple_call.cpp
+++ b/source/blender/functions/backends/llvm/ir_for_tuple_call.cpp
@@ -66,7 +66,7 @@ class TupleCallLLVM : public LLVMBuildIRBody {
builder, interface, settings, input_type_infos, output_type_infos);
/* Call wrapper function. */
- LLVMValues call_inputs = interface.inputs();
+ LLVMValues call_inputs = interface.inputs().to_small_vector();
if (settings.maintain_stack()) {
call_inputs.append(interface.context_ptr());
}
More information about the Bf-blender-cvs
mailing list