|
ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
|
contains container classes to store instruction definitions + translation functions and build a translatio tree. More...
#include "etiss/Misc.h"#include <climits>#include <cstring>#include <iomanip>#include <sstream>#include <stdexcept>#include <string>#include <boost/dynamic_bitset.hpp>

Go to the source code of this file.
Classes | |
| class | etiss::instr::Buffer |
| Buffer for reading data from memory while instructions are being fetched. More... | |
| class | etiss::instr::BitArray |
| stores a bit vector More... | |
| class | etiss::instr::BitArrayRange |
| Reading through it will only return bits within the range. More... | |
| class | etiss::instr::OPCode |
| defines the relevant bits and their value to identify an instruction. More... | |
| struct | etiss::instr::less |
| calls operator< of the objects. More... | |
| class | etiss::instr::InstructionContext |
| this class contains parameters that persist in between instruction lookpus/translation within a translation block. More... | |
| class | etiss::instr::Instruction |
| holds information and translation callbacks for an instruction. More... | |
| class | etiss::instr::InstructionSet |
| holds etiss::instr::Instruction instances and handles automatic instruction tree creation. More... | |
| class | etiss::instr::VariableInstructionSet |
| holds etiss::instr::InstructionSet instances with different bit widths. More... | |
| class | etiss::instr::ModedInstructionSet |
| holds etiss::instr::VariableInstructionSet instances for different modes. More... | |
| class | etiss::instr::InstructionCollection |
| maps to ModedInstructionSet More... | |
| class | etiss::instr::InstructionClass |
| maps to VariableInstructionSet More... | |
| class | etiss::instr::InstructionGroup |
| maps to InstructionSet More... | |
| class | etiss::instr::InstructionDefinition |
| maps to Instruction More... | |
Namespaces | |
| namespace | etiss |
| forwards: include/jit/* | |
| namespace | etiss::instr |
Typedefs | |
| typedef uint32_t | etiss::instr::I |
| typedef std::set< Instruction * > | etiss::instr::Node |
| Holding unique instruction sets code chunks after permutation. | |
Functions | |
| uint32_t | etiss::instr::parse_i32 (const char *s) |
| template<typename T_ > | |
| std::enable_if< std::is_integral< T_ >::value, typenamestd::make_unsigned< T_ >::type >::type | etiss::instr::parse_i (const char *s, bool *good=0) |
| this parser basically allows to write as a string hexadecimal values which will be appended as if it is one hexadecimal sequence and the "0x" prefix is replaced by a "<decimal number>x" [e.g. | |
contains container classes to store instruction definitions + translation functions and build a translatio tree.
the classes can be seperated into 3 types. general storage classes for bit vectors and related (BitArray,BitArrayReader,OPCode), classes that contain defined instructions and their translation functions (VariableInstructionSet,ModedInstructionSet,InstructionSet,Instruction) and classes that contain instruction definitions and can be added to the previous type of classes. For example use of these definition classes please have a look at the OR1K architecture implementation
Definition in file Instruction.h.