#include <arion/common/arch_manager.hpp>#include <arion/common/global_defs.hpp>#include <cstdint>#include <map>#include <string>Go to the source code of this file.
Classes | |
| class | arion_x86::ArchManagerX86 |
| A class responsible for performing architecture specific operations in case of an x86 chip emulation. More... | |
Namespaces | |
| namespace | arion |
| namespace | arion_x86 |
Variables | |
| std::map< uint64_t, std::string > | arion_x86::NAME_BY_SYSCALL_NO |
| A map identifying a x86 syscall name given its number. | |
| std::map< std::string, arion::REG > | arion_x86::ARCH_REGS |
| A map identifying a Unicorn x86 register given its name. | |
| std::map< arion::REG, uint8_t > | arion_x86::ARCH_REGS_SZ |
| A map identifying a Unicorn x86 register size given the register. | |
| std::vector< arion::REG > | arion_x86::CTXT_REGS |
| The list of high-level x86 registers that make up the context to be saved and restored. | |
| std::map< uint64_t, arion::CPU_INTR > | arion_x86::IDT |
| The x86 Interrupt Descriptor Table. | |
| arion::ABI_REGISTERS | arion_x86::ABI_REGS = arion::ABI_REGISTERS(UC_X86_REG_EIP, UC_X86_REG_ESP) |
| Unicorn x86 PC and SP registers for genericity. | |
| arion::ABI_CALLING_CONVENTION | arion_x86::ABI_CALLING_CONV = arion::ABI_CALLING_CONVENTION(UC_X86_REG_EAX, {}) |
| Unicorn x86 registers involved in calling convention. | |
| arion::ABI_SYSCALLING_CONVENTION | arion_x86::ABI_SYSCALLING_CONV |
| Unicorn x86 registers involved in syscalling convention. | |
| arion::KERNEL_SEG_FLAGS | arion_x86::SEG_FLAGS = ARION_VVAR_PRESENT | ARION_VDSO_PRESENT |
| x86 flags telling the loader which kernel segments should be mapped in memory. | |
| uint32_t | arion_x86::HWCAP2 = 2 |
| Some well working x86 chip HWCAP2 value. | |
| uint32_t | arion_x86::HWCAP = 0xbfebfbff |
| Some well working x86 chip HWCAP value. | |
| const size_t | arion_x86::PTR_SZ = 4 |
| Size in bytes of a pointer in a x86 chip. | |
| const uint16_t | arion_x86::ARCH_SZ = 32 |
| Size in bits of the x86 general-purpose registers. | |
| arion::CPU_ARCH | arion_x86::ARCH = arion::CPU_ARCH::X86_ARCH |
| Arion CPU_ARCH for x86. | |
| arion::ARCH_ATTRIBUTES | arion_x86::ARCH_ATTRS |
| Multiple architecture specific attributes for x86, grouped in a structure for genericity purpose. | |