GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
pt-jit.cc File Reference
#include <sstream>
#include <string>
#include "bp-table.h"
#include "defun.h"
#include "errwarn.h"
#include "ov.h"
#include "pager.h"
#include "pt-all.h"
#include "pt-jit.h"
#include "sighandlers.h"
#include "symtab.h"
#include "variables.h"
#include "interpreter-private.h"
#include <llvm/Analysis/CallGraph.h>
#include <llvm/Analysis/Passes.h>
#include <llvm/Analysis/Verifier.h>
#include <llvm/Bitcode/BitcodeReader.h>
#include <llvm/Bitcode/BitcodeWriter.h>
#include <llvm/ExecutionEngine/ExecutionEngine.h>
#include <llvm/ExecutionEngine/MCJIT.h>
#include "llvm/ExecutionEngine/SectionMemoryManager.h"
#include <llvm/PassManager.h>
#include <llvm/LLVMContext.h>
#include <llvm/Module.h>
#include <llvm/Intrinsics.h>
#include <llvm/IRBuilder.h>
#include <llvm/Support/raw_os_ostream.h>
#include <llvm/Support/TargetSelect.h>
#include <llvm/Target/TargetData.h>
#include <llvm/Transforms/IPO.h>
#include <llvm/Transforms/Scalar.h>
Include dependency graph for pt-jit.cc:

Go to the source code of this file.

Classes

class  octave::jit_break_exception
 
class  octave::jit_memory_manager
 

Namespaces

 octave
 
 octave::jit
 

Macros

#define __STDC_CONSTANT_MACROS
 
#define __STDC_LIMIT_MACROS
 

Typedefs

typedef llvm::FunctionPassManager octave::jit::FunctionPassManager
 
typedef llvm::PassManager octave::jit::PassManager
 

Functions

OCTAVE_EXPORT octave_value_list Fdebug_jit (const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Fjit_enable (const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Fjit_failcnt (const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Fjit_startcnt (const octave_value_list &args, int nargout)
 

Variables

static llvm::IRBuilder octave::builder (tree_jit::llvm_context)
 
static llvm::LLVMContext & octave::context = tree_jit::llvm_context
 
static bool Vdebug_jit = false
 
static bool Vjit_enable = false
 
static int Vjit_failcnt = 0
 
static int Vjit_startcnt = 1000
 

Macro Definition Documentation

◆ __STDC_CONSTANT_MACROS

#define __STDC_CONSTANT_MACROS

Definition at line 27 of file pt-jit.cc.

◆ __STDC_LIMIT_MACROS

#define __STDC_LIMIT_MACROS

Definition at line 26 of file pt-jit.cc.

Function Documentation

◆ Fdebug_jit()

OCTAVE_EXPORT octave_value_list Fdebug_jit ( const octave_value_list args,
int  nargout 
)

Definition at line 2876 of file pt-jit.cc.

References ovl(), SET_INTERNAL_VARIABLE, and warn_disabled_feature().

Referenced by octave::interpreter::interpreter().

◆ Fjit_enable()

OCTAVE_EXPORT octave_value_list Fjit_enable ( const octave_value_list args,
int  nargout 
)

Definition at line 2899 of file pt-jit.cc.

References ovl(), SET_INTERNAL_VARIABLE, and warn_disabled_feature().

Referenced by octave::interpreter::interpreter().

◆ Fjit_failcnt()

OCTAVE_EXPORT octave_value_list Fjit_failcnt ( const octave_value_list args,
int  nargout 
)

Definition at line 2852 of file pt-jit.cc.

References ovl(), SET_INTERNAL_VARIABLE, and warn_disabled_feature().

◆ Fjit_startcnt()

OCTAVE_EXPORT octave_value_list Fjit_startcnt ( const octave_value_list args,
int  nargout 
)

Definition at line 2927 of file pt-jit.cc.

References max(), ovl(), SET_INTERNAL_VARIABLE_WITH_LIMITS, and warn_disabled_feature().

Variable Documentation

◆ Vdebug_jit

bool Vdebug_jit = false
static

◆ Vjit_enable

bool Vjit_enable = false
static

Definition at line 132 of file pt-jit.cc.

Referenced by octave::tree_jit::enabled().

◆ Vjit_failcnt

int Vjit_failcnt = 0
static

◆ Vjit_startcnt

int Vjit_startcnt = 1000
static

Definition at line 134 of file pt-jit.cc.

Referenced by octave::tree_jit::do_execute().