GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
jit_info Class Reference

#include "pt-jit.h"

Collaboration diagram for jit_info:
Collaboration graph

Public Types

typedef std::map< std::string,
const octave_value * > 

Public Member Functions

 jit_info (tree_jit &tjit, tree &tee)
 jit_info (tree_jit &tjit, tree &tee, const octave_value &for_bounds)
 ~jit_info (void)
bool execute (const vmap &extra_vars=vmap()) const
bool match (const vmap &extra_vars=vmap()) const

Private Types

typedef void(* jited_function )(octave_base_value **)
typedef jit_convert::type_bound type_bound

Private Member Functions

void compile (tree_jit &tjit, tree &tee, jit_type *for_bounds=0)
octave_value find (const vmap &extra_vars, const std::string &vname) const

Private Attributes

std::vector< std::pair
< std::string, bool > > 
type_bound_vector bounds
llvm::ExecutionEngine * engine
jited_function function
llvm::Function * llvm_function

Detailed Description

Definition at line 412 of file pt-jit.h.

Member Typedef Documentation

typedef void(* jit_info::jited_function)(octave_base_value **)

Definition at line 431 of file pt-jit.h.

Definition at line 429 of file pt-jit.h.

Definition at line 430 of file pt-jit.h.

typedef std::map<std::string, const octave_value *> jit_info::vmap

Definition at line 417 of file pt-jit.h.

Constructor & Destructor Documentation

jit_info::jit_info ( tree_jit tjit,
tree tee 

Definition at line 2366 of file

References compile().

jit_info::jit_info ( tree_jit tjit,
tree tee,
const octave_value for_bounds 

Definition at line 2372 of file

References compile(), and jit_typeinfo::type_of().

jit_info::~jit_info ( void  )

Definition at line 2378 of file

References llvm_function.

Member Function Documentation

void jit_info::compile ( tree_jit tjit,
tree tee,
jit_type for_bounds = 0 
bool jit_info::execute ( const vmap extra_vars = vmap ()) const
octave_value jit_info::find ( const vmap extra_vars,
const std::string &  vname 
) const

Definition at line 2502 of file

References symbol_table::varval().

Referenced by execute(), and match().

bool jit_info::match ( const vmap extra_vars = vmap ()) const

Definition at line 2419 of file

References bounds, find(), and jit_typeinfo::type_of().

Referenced by tree_jit::do_execute().

Member Data Documentation

std::vector<std::pair<std::string, bool> > jit_info::arguments

Definition at line 441 of file pt-jit.h.

Referenced by compile(), and execute().

type_bound_vector jit_info::bounds

Definition at line 442 of file pt-jit.h.

Referenced by compile(), and match().

llvm::ExecutionEngine* jit_info::engine

Definition at line 437 of file pt-jit.h.

Referenced by compile().

jited_function jit_info::function

Definition at line 438 of file pt-jit.h.

llvm::Function* jit_info::llvm_function

Definition at line 439 of file pt-jit.h.

Referenced by compile(), and ~jit_info().

The documentation for this class was generated from the following files: