OmniSciDB
085a039ca4
|
Functions | |
llvm::StructType * | get_buffer_struct_type (CgenState *cgen_state, const std::string &ext_func_name, size_t param_num, llvm::Type *elem_type, bool has_is_null) |
llvm::Type * | ext_arg_type_to_llvm_type (const ExtArgumentType ext_arg_type, llvm::LLVMContext &ctx) |
SQLTypeInfo | get_sql_type_from_llvm_type (const llvm::Type *ll_type) |
llvm::Type * | get_llvm_type_from_sql_array_type (const SQLTypeInfo ti, llvm::LLVMContext &ctx) |
bool | ext_func_call_requires_nullcheck (const Analyzer::FunctionOper *function_oper) |
bool | call_requires_custom_type_handling (const Analyzer::FunctionOper *function_oper) |
bool anonymous_namespace{ExtensionsIR.cpp}::call_requires_custom_type_handling | ( | const Analyzer::FunctionOper * | function_oper | ) |
Definition at line 497 of file ExtensionsIR.cpp.
References Analyzer::Expr::get_type_info(), Analyzer::FunctionOper::getArg(), and Analyzer::FunctionOper::getArity().
Referenced by CodeGenerator::codegenFunctionOperWithCustomTypeHandling().
llvm::Type* anonymous_namespace{ExtensionsIR.cpp}::ext_arg_type_to_llvm_type | ( | const ExtArgumentType | ext_arg_type, |
llvm::LLVMContext & | ctx | ||
) |
Definition at line 85 of file ExtensionsIR.cpp.
References ArrayBool, ArrayDouble, ArrayFloat, ArrayInt16, ArrayInt32, ArrayInt64, ArrayInt8, Bool, CHECK, ColumnBool, ColumnDouble, ColumnFloat, ColumnInt16, ColumnInt32, ColumnInt64, ColumnInt8, ColumnListBool, ColumnListDouble, ColumnListFloat, ColumnListInt16, ColumnListInt32, ColumnListInt64, ColumnListInt8, ColumnTimestamp, Double, Float, get_int_type(), Int16, Int32, Int64, Int8, and TextEncodingNone.
Referenced by CodeGenerator::codegenFunctionOper().
bool anonymous_namespace{ExtensionsIR.cpp}::ext_func_call_requires_nullcheck | ( | const Analyzer::FunctionOper * | function_oper | ) |
Definition at line 204 of file ExtensionsIR.cpp.
References Analyzer::Expr::get_type_info(), Analyzer::FunctionOper::getArg(), and Analyzer::FunctionOper::getArity().
Referenced by CodeGenerator::beginArgsNullcheck().
llvm::StructType* anonymous_namespace{ExtensionsIR.cpp}::get_buffer_struct_type | ( | CgenState * | cgen_state, |
const std::string & | ext_func_name, | ||
size_t | param_num, | ||
llvm::Type * | elem_type, | ||
bool | has_is_null | ||
) |
Definition at line 30 of file ExtensionsIR.cpp.
References CHECK, and CgenState::context_.
Referenced by CodeGenerator::beginArgsNullcheck(), CodeGenerator::codegenBufferArgs(), CodeGenerator::codegenFunctionOper(), and CodeGenerator::endArgsNullcheck().
|
inline |
Definition at line 167 of file ExtensionsIR.cpp.
References CHECK, SQLTypeInfo::get_elem_type(), SQLTypeInfo::is_buffer(), SQLTypeInfo::is_bytes(), and UNREACHABLE.
Referenced by CodeGenerator::beginArgsNullcheck(), CodeGenerator::codegenFunctionOper(), and CodeGenerator::endArgsNullcheck().
|
inline |
Definition at line 132 of file ExtensionsIR.cpp.
References CHECK, logger::FATAL, kBIGINT, kBOOLEAN, kDOUBLE, kFLOAT, kINT, kSMALLINT, kTINYINT, LOG, and UNREACHABLE.
Referenced by CodeGenerator::codegenFunctionOper(), and CodeGenerator::endArgsNullcheck().