libTriton version 1.0 build 1592
|
Topics | |
Arm | |
X86 | |
Riscv | |
Namespaces | |
namespace | triton::arch::arm |
The ARM namespace. | |
namespace | triton::arch::x86 |
The x86 namespace. | |
namespace | triton::arch::riscv |
The riscv namespace. | |
Classes | |
class | triton::arch::Architecture |
The abstract architecture class. More... | |
class | triton::arch::BasicBlock |
This class is used to represent a basic block. More... | |
class | triton::arch::BitsVector |
This class is used to deal with registers and memory as bits vector. More... | |
interface | triton::arch::CpuInterface |
This interface is used as abstract CPU interface. All CPU must use this interface. More... | |
class | triton::arch::Immediate |
This class is used to represent an immediate. More... | |
class | triton::arch::Instruction |
This class is used to represent an instruction. More... | |
class | triton::arch::IrBuilder |
The IR builder. More... | |
class | triton::arch::MemoryAccess |
This class is used to represent a memory access. More... | |
interface | triton::arch::OperandWrapper |
This class is used as operand wrapper. More... | |
class | triton::arch::Register |
This class is used when an instruction has a register operand. More... | |
interface | triton::arch::SemanticsInterface |
This interface is used as abstract semantics interface. All ISA semantics must use this interface. More... | |
class | triton::arch::ShortcutRegister |
This is used as a shortcut to access to registers. More... | |
Enumerations | |
enum | triton::arch::architecture_e { triton::arch::ARCH_INVALID = 0 , triton::arch::ARCH_AARCH64 , triton::arch::ARCH_ARM32 , triton::arch::ARCH_X86 , triton::arch::ARCH_X86_64 } |
enum | triton::arch::endianness_e { triton::arch::LE_ENDIANNESS , triton::arch::BE_ENDIANNESS } |
enum | triton::arch::operand_e { triton::arch::OP_INVALID = 0 , triton::arch::OP_IMM , triton::arch::OP_MEM , triton::arch::OP_REG } |
enum | triton::arch::exception_e { triton::arch::NO_FAULT = 0 , triton::arch::FAULT_DE , triton::arch::FAULT_BP , triton::arch::FAULT_UD , triton::arch::FAULT_GP } |
enum | triton::arch::register_e { triton::arch::ID_REG_INVALID = 0 , triton::arch::ID_REG_LAST_ITEM } |
Types of register. More... | |
Functions | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, BasicBlock &block) |
Displays an BasicBlock. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, BasicBlock *block) |
Displays an BasicBlock. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const BitsVector &bv) |
Displays a BitsVector. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const BitsVector *bv) |
Displays a BitsVector. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Immediate &imm) |
Displays an Immediate. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Immediate *imm) |
Displays an Immediate. | |
bool | triton::arch::operator== (const Immediate &imm1, const Immediate &imm2) |
Compares two Immediate. | |
bool | triton::arch::operator!= (const Immediate &imm1, const Immediate &imm2) |
Compares two Immediate. | |
bool | triton::arch::operator< (const Immediate &imm1, const Immediate &imm2) |
Compares two Immediate (needed for std::map) | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Instruction &inst) |
Displays an Instruction. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Instruction *inst) |
Displays an Instruction. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const MemoryAccess &mem) |
Displays an MemoryAccess. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const MemoryAccess *mem) |
Displays an MemoryAccess. | |
bool | triton::arch::operator== (const MemoryAccess &mem1, const MemoryAccess &mem2) |
Compares two MemoryAccess. | |
bool | triton::arch::operator!= (const MemoryAccess &mem1, const MemoryAccess &mem2) |
Compares two MemoryAccess. | |
bool | triton::arch::operator< (const MemoryAccess &mem1, const MemoryAccess &mem2) |
Compares two MemoryAccess (needed for std::map) | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const triton::arch::OperandWrapper &op) |
Displays a OperandWrapper according to the concrete type. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const triton::arch::OperandWrapper *op) |
Displays a OperandWrapper according to the concrete type. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Register ®) |
Displays a Register. | |
std::ostream & | triton::arch::operator<< (std::ostream &stream, const Register *reg) |
Displays a Register. | |
bool | triton::arch::operator< (const Register ®1, const Register ®2) |
Compares two Register. | |
Variables | |
const bool | triton::arch::FORCE_MEMORY_INITIALIZATION = true |
Defines the force memory initialization constant. | |
Types of architecture
Enumerator | |
---|---|
ARCH_INVALID | Invalid architecture. |
ARCH_AARCH64 | AArch64 architecture. |
ARCH_ARM32 | ARM32 architecture. |
ARCH_X86 | X86 architecture. |
ARCH_X86_64 | X86_64 architecture. |
Definition at line 32 of file archEnums.hpp.
Types of endianness
Enumerator | |
---|---|
LE_ENDIANNESS | Little endian. |
BE_ENDIANNESS | Big endian. |
Definition at line 45 of file archEnums.hpp.
Types of exceptions
Enumerator | |
---|---|
NO_FAULT | Succeed, no fault. |
FAULT_DE | Fault raised: Divide-by-zero. |
FAULT_BP | Fault raised: Breakpoint. |
FAULT_UD | Fault raised: Instruction not supported. |
FAULT_GP | Fault raised: General Protection Fault. |
Definition at line 59 of file archEnums.hpp.
Types of operand
Enumerator | |
---|---|
OP_INVALID | Invalid operand |
OP_IMM | Immediate operand |
OP_MEM | Memory operand |
OP_REG | Register operand |
Definition at line 51 of file archEnums.hpp.
Types of register.
Enumerator | |
---|---|
ID_REG_INVALID | invalid = 0 |
ID_REG_LAST_ITEM | must be the last item |
Definition at line 68 of file archEnums.hpp.
Compares two Immediate.
Definition at line 137 of file immediate.cpp.
TRITON_EXPORT bool triton::arch::operator!= | ( | const MemoryAccess & | mem1, |
const MemoryAccess & | mem2 ) |
Compares two MemoryAccess.
Definition at line 238 of file memoryAccess.cpp.
Compares two Immediate (needed for std::map)
Definition at line 142 of file immediate.cpp.
TRITON_EXPORT bool triton::arch::operator< | ( | const MemoryAccess & | mem1, |
const MemoryAccess & | mem2 ) |
Compares two MemoryAccess (needed for std::map)
Definition at line 243 of file memoryAccess.cpp.
Compares two Register.
Definition at line 137 of file register.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
BasicBlock & | block ) |
Displays an BasicBlock.
Definition at line 82 of file basicBlock.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
BasicBlock * | block ) |
Displays an BasicBlock.
Definition at line 94 of file basicBlock.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const BitsVector & | bv ) |
Displays a BitsVector.
Definition at line 91 of file bitsVector.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const BitsVector * | bv ) |
Displays a BitsVector.
Definition at line 97 of file bitsVector.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Immediate & | imm ) |
Displays an Immediate.
Definition at line 108 of file immediate.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Immediate * | imm ) |
Displays an Immediate.
Definition at line 122 of file immediate.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Instruction & | inst ) |
Displays an Instruction.
Definition at line 548 of file instruction.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Instruction * | inst ) |
Displays an Instruction.
Definition at line 555 of file instruction.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const MemoryAccess & | mem ) |
Displays an MemoryAccess.
Definition at line 197 of file memoryAccess.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const MemoryAccess * | mem ) |
Displays an MemoryAccess.
Definition at line 211 of file memoryAccess.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Register & | reg ) |
Displays a Register.
Definition at line 118 of file register.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const Register * | reg ) |
Displays a Register.
Definition at line 131 of file register.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const triton::arch::OperandWrapper & | op ) |
Displays a OperandWrapper according to the concrete type.
Definition at line 185 of file operandWrapper.cpp.
TRITON_EXPORT std::ostream & triton::arch::operator<< | ( | std::ostream & | stream, |
const triton::arch::OperandWrapper * | op ) |
Displays a OperandWrapper according to the concrete type.
Definition at line 197 of file operandWrapper.cpp.
Compares two Immediate.
Definition at line 128 of file immediate.cpp.
TRITON_EXPORT bool triton::arch::operator== | ( | const MemoryAccess & | mem1, |
const MemoryAccess & | mem2 ) |
Compares two MemoryAccess.
Definition at line 217 of file memoryAccess.cpp.
const bool triton::arch::FORCE_MEMORY_INITIALIZATION = true |
Defines the force memory initialization constant.
Definition at line 175 of file memoryAccess.hpp.