#include "jit-typeinfo.h"
Public Types | |
typedef std::vector< jit_type * > | signature_vec |
Public Member Functions | |
jit_paren_subsref (const jit_typeinfo &ti) | |
~jit_paren_subsref (void) | |
void | add_overload (const jit_function &func) |
void | add_overload (const jit_function &func, const signature_vec &args) |
void | init_paren_scalar (void) |
const std::string & | name (void) const |
const jit_function & | overload (const signature_vec &types) const |
template<typename ... Args> | |
const jit_function & | overload (jit_type *arg1, Args... other_args) const |
template<typename ... Args> | |
const jit_function & | overload (signature_vec &args, jit_type *arg1, Args... other_args) const |
jit_type * | result (const signature_vec &types) const |
template<typename ... Args> | |
jit_type * | result (jit_type *arg1, Args... other_args) const |
template<typename ... Args> | |
jit_type * | result (signature_vec &args, jit_type *arg1, Args... other_args) const |
void | stash_name (const std::string &aname) |
Protected Member Functions | |
llvm::Value * | create_arg_array (llvm::IRBuilderD &builder, const jit_function &fn, size_t start_idx, size_t end_idx) const |
virtual jit_function * | generate (const signature_vec &types) const |
virtual jit_function * | generate_matrix (const signature_vec &types) const |
Protected Attributes | |
const jit_typeinfo & | m_typeinfo |
Private Types | |
typedef std::map< const signature_vec *, jit_function *, signature_cmp > | generated_map |
Private Member Functions | |
const jit_function & | do_generate (const signature_vec &types) const |
Array< octave_idx_type > | to_idx (const signature_vec &types) const |
Private Attributes | |
generated_map | m_generated |
std::string | m_name |
std::vector< Array< jit_function > > | m_overloads |
jit_function * | m_paren_scalar |
Definition at line 466 of file jit-typeinfo.h.
|
privateinherited |
Definition at line 433 of file jit-typeinfo.h.
|
inherited |
Definition at line 359 of file jit-typeinfo.h.
octave::jit_paren_subsref::jit_paren_subsref | ( | const jit_typeinfo & | ti | ) |
Definition at line 983 of file jit-typeinfo.cc.
octave::jit_paren_subsref::~jit_paren_subsref | ( | void | ) |
Definition at line 987 of file jit-typeinfo.cc.
References m_paren_scalar.
|
inlineinherited |
Definition at line 363 of file jit-typeinfo.h.
References octave::jit_function::arguments().
Referenced by octave::jit_typeinfo::jit_typeinfo(), octave::jit_typeinfo::add_print(), octave::jit_typeinfo::register_generic(), and octave::jit_typeinfo::register_intrinsic().
|
inherited |
|
protectedinherited |
Definition at line 961 of file jit-typeinfo.cc.
References octave::jit_function::argument(), octave::builder, octave::jit_typeinfo::get_scalar_llvm(), and n.
Referenced by generate_matrix(), and octave::jit_paren_subsasgn::generate_matrix().
|
privateinherited |
Definition at line 896 of file jit-typeinfo.cc.
References find(), octave::jit_operation::generate(), and octave::jit_operation::m_generated.
|
protectedvirtualinherited |
Reimplemented from octave::jit_operation.
Definition at line 944 of file jit-typeinfo.cc.
References octave::jit_typeinfo::get_matrix(), octave::jit_typeinfo::get_scalar(), and scalar().
|
protectedvirtual |
Implements octave::jit_index_operation.
Definition at line 993 of file jit-typeinfo.cc.
References octave::builder, octave::jit_function::call(), octave::jit_index_operation::create_arg_array(), octave::jit_typeinfo::create_internal(), octave::jit_typeinfo::m_index_t, m_paren_scalar, octave::jit_typeinfo::m_scalar, octave::jit_index_operation::m_typeinfo, and panic_impossible.
void octave::jit_paren_subsref::init_paren_scalar | ( | void | ) |
Definition at line 1019 of file jit-typeinfo.cc.
References octave::jit_typeinfo::create_external(), octave::jit_typeinfo::m_index, octave::jit_typeinfo::m_matrix, m_paren_scalar, octave::jit_typeinfo::m_scalar, octave::jit_typeinfo::m_scalar_ptr, octave::jit_index_operation::m_typeinfo, octave::jit_function::mark_can_error(), and octave::octave_jit_paren_scalar().
Referenced by octave::jit_typeinfo::jit_typeinfo().
|
inlineinherited |
Definition at line 413 of file jit-typeinfo.h.
|
inherited |
|
inlineinherited |
Definition at line 382 of file jit-typeinfo.h.
|
inlineinherited |
Definition at line 374 of file jit-typeinfo.h.
|
inlineinherited |
Definition at line 390 of file jit-typeinfo.h.
References octave::jit_function::result().
Referenced by octave::jit_call::infer().
|
inlineinherited |
Definition at line 405 of file jit-typeinfo.h.
|
inlineinherited |
Definition at line 397 of file jit-typeinfo.h.
|
inlineinherited |
Definition at line 415 of file jit-typeinfo.h.
|
privateinherited |
Definition at line 873 of file jit-typeinfo.cc.
|
mutableprivateinherited |
Definition at line 435 of file jit-typeinfo.h.
Referenced by octave::jit_operation::~jit_operation(), and octave::jit_operation::do_generate().
|
privateinherited |
Definition at line 439 of file jit-typeinfo.h.
|
privateinherited |
Definition at line 437 of file jit-typeinfo.h.
|
private |
Definition at line 482 of file jit-typeinfo.h.
Referenced by ~jit_paren_subsref(), generate_matrix(), and init_paren_scalar().
|
protectedinherited |
Definition at line 463 of file jit-typeinfo.h.
Referenced by generate_matrix(), octave::jit_paren_subsasgn::generate_matrix(), init_paren_scalar(), and octave::jit_paren_subsasgn::init_paren_scalar().