ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
|
#include <TCCJIT.h>
Public Member Functions | |
TCCJIT () | |
virtual void * | translate (std::string code, std::set< std::string > headerpaths, std::set< std::string > librarypaths, std::set< std::string > libraries, std::string &error, bool debug=false) |
translate C code to executable code and return a handle/pointer that identifies the compilation result More... | |
virtual void * | getFunction (void *handle, std::string name, std::string &error) |
returns a function pointer to a compiled function from the handle returned by etiss::JIT::translate More... | |
virtual void | free (void *handle) |
clean up handled returned by etiss::JIT::translate More... | |
Public Member Functions inherited from etiss::JIT | |
JIT (std::string name) | |
virtual | ~JIT () |
std::string | getName () |
returns the JIT instance name previously passed to the constructor More... | |
Private Attributes | |
std::map< std::string, void * > | extsymbols |
only use for windows. More... | |
TCCJIT::TCCJIT | ( | ) |
Definition at line 101 of file TCCJIT.cpp.
References extsymbols.
|
virtual |
clean up handled returned by etiss::JIT::translate
Implements etiss::JIT.
Definition at line 183 of file TCCJIT.cpp.
|
virtual |
returns a function pointer to a compiled function from the handle returned by etiss::JIT::translate
Implements etiss::JIT.
Definition at line 178 of file TCCJIT.cpp.
|
virtual |
translate C code to executable code and return a handle/pointer that identifies the compilation result
code | generated code |
headerpaths | paths where required header files are located |
librarypaths | paths where required libraries are located (usually not needed since libraries don't require full linking) |
libraries | file names of required libraries (usually not needed since libraries don't require full linking) |
error | string to return additional error information |
debug | if true then compilation should try to enable gdb to jump into compiled functions |
Implements etiss::JIT.
Definition at line 108 of file TCCJIT.cpp.
References etiss::LibraryInterface::addSearchPath(), extsymbols, etiss::jitExtLibPaths(), etiss::jitFiles(), and s.
|
private |
only use for windows.
manual linking to symbols of current executable
Definition at line 56 of file TCCJIT.h.
Referenced by TCCJIT(), and translate().