ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
ETISS.h File Reference

Header file of the ETISS library. More...

#include "etiss/config.h"
#include <map>
#include <memory>
#include <mutex>
#include <string>
#include <type_traits>
#include "etiss/Misc.h"
Include dependency graph for ETISS.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  etiss::Initializer
 Wrapper for the initialize and shutdown of the ETISS environment. More...
 

Namespaces

namespace  etiss
 forwards: include/jit/*
 
namespace  etiss::py
 

Functions

std::set< std::string > etiss::listCPUArchs ()
 Create a set with all identifier names of the known CPUArch plug-ins.
 
std::set< std::string > etiss::listJITs ()
 Create a set with all identifier names of the known JIT plug-ins.
 
std::set< std::string > etiss::listPlugins ()
 Create a set with all identifier names of the known plug-ins.
 
void etiss::preloadLibraries ()
 Search and try to load libraries.
 
std::shared_ptr< JITetiss::getJIT (std::string name, std::map< std::string, std::string > options=std::map< std::string, std::string >())
 Get a present JIT plug-in by name.
 
std::shared_ptr< CPUArchetiss::getCPUArch (std::string name, std::map< std::string, std::string > options=std::map< std::string, std::string >())
 Get a present CPUArch plug-in by name.
 
std::shared_ptr< Pluginetiss::getPlugin (std::string name, std::map< std::string, std::string > options=std::map< std::string, std::string >())
 Get a present Plugin plug-in by name.
 
bool etiss::loadLibrary (std::string path, std::string name)
 Load a library.
 
void etiss::addLibrary (std::shared_ptr< etiss::LibraryInterface > libInterface)
 Add a LibraryInterface to the ETISS environment.
 
std::set< std::string > etiss::listLibraries ()
 Create a set with strings of the library names and some information appended in square brackets.
 
std::set< std::string > etiss::listLibraryPrefixes ()
 Create a set with strings of the library names.
 
void etiss::initialize (std::vector< std::string > &args)
 Initialize and configure ETISS.
 
std::shared_ptr< etiss::JITetiss::getDefaultJIT ()
 Get the default JIT implementation.
 
void etiss::initialize_virtualstruct (std::shared_ptr< etiss::CPUCore > cpu_core)
 Initialize and configure etiss::VirtualStruct root with etiss::CPUCore cpu_core.
 
void etiss::initialize_virtualstruct (std::shared_ptr< etiss::CPUCore > cpu_core, std::function< bool(const etiss::fault::Fault &, const etiss::fault::Action &, std::string &)> const &fcustom_action)
 Extension of etiss::initialize_virtualstruct( std::shared_ptr<etiss::CPUCore>) to allow direct setting of custom action for cpu_core etiss::VirtualStruct with fcustom_action.
 
void etiss::shutdown ()
 Shutdown ETISS.
 
std::string etiss::errorMessage (etiss::int32 code, CPUArch *arch=0)
 Get the error message for an error code for a specific CPUArch plug-in.
 
void etiss::forceInitialization ()
 Force the initialization of ETISS.
 
void etiss::py::init ()
 
void etiss::py::shutdown ()
 
void etiss::py::console ()
 
bool etiss::py::supported ()
 
void etiss::py::runString (std::string s)
 
void etiss::py::run (std::function< void(void)> func)
 
void etiss::py::runEXT (std::function< void(void)> func)
 

Detailed Description

Header file of the ETISS library.

Definition in file ETISS.h.