libTriton version 1.0 build 1592
Loading...
Searching...
No Matches
Classes | Namespaces | Macros
shortcutRegister.hpp File Reference
#include <triton/archEnums.hpp>
#include <triton/exceptions.hpp>
#include <triton/register.hpp>
#include "triton/x86.spec"
#include "triton/aarch64.spec"
#include "triton/arm32.spec"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  triton::arch::ShortcutRegister
 This is used as a shortcut to access to registers. More...
 

Namespaces

namespace  triton
 The Triton namespace.
 
namespace  triton::arch
 The Architecture namespace.
 

Macros

#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5, _6, _7, _8)    triton::arch::Register x86_##LOWER_NAME;
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5)    triton::arch::Register aarch64_##LOWER_NAME;
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define SYS_REG_SPEC   REG_SPEC
 
#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5)    triton::arch::Register arm32_##LOWER_NAME;
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5, _6, _7, _8)    this->x86_##LOWER_NAME = triton::arch::Register();
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5)    this->aarch64_##LOWER_NAME = triton::arch::Register();
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define SYS_REG_SPEC   REG_SPEC
 
#define REG_SPEC(_0, LOWER_NAME, _2, _3, _4, _5)    this->arm32_##LOWER_NAME = triton::arch::Register();
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(UPPER_NAME, LOWER_NAME, AARCH64_UPPER, AARCH64_LOWER, AARCH64_PARENT, MUTABLE)
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define SYS_REG_SPEC   REG_SPEC
 
#define REG_SPEC(UPPER_NAME, LOWER_NAME, ARM32_UPPER, ARM32_LOWER, ARM32_PARENT, MUTABLE)
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(UPPER_NAME, LOWER_NAME, _1, _2, _3, X86_UPPER, X86_LOWER, X86_PARENT, X86_AVAIL)
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 
#define REG_SPEC(UPPER_NAME, LOWER_NAME, X86_64_UPPER, X86_64_LOWER, X86_64_PARENT, X86_UPPER, X86_LOWER, X86_PARENT, X86_AVAIL)
 
#define REG_SPEC_NO_CAPSTONE   REG_SPEC
 

Macro Definition Documentation

◆ REG_SPEC [1/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5 )    triton::arch::Register aarch64_##LOWER_NAME;

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [2/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5 )    triton::arch::Register arm32_##LOWER_NAME;

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [3/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5 )    this->aarch64_##LOWER_NAME = triton::arch::Register();

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [4/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5 )    this->arm32_##LOWER_NAME = triton::arch::Register();

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [5/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5,
_6,
_7,
_8 )    triton::arch::Register x86_##LOWER_NAME;

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [6/10]

#define REG_SPEC ( _0,
LOWER_NAME,
_2,
_3,
_4,
_5,
_6,
_7,
_8 )    this->x86_##LOWER_NAME = triton::arch::Register();

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [7/10]

#define REG_SPEC ( UPPER_NAME,
LOWER_NAME,
_1,
_2,
_3,
X86_UPPER,
X86_LOWER,
X86_PARENT,
X86_AVAIL )
Value:
if (X86_AVAIL) \
this->x86_##LOWER_NAME = triton::arch::Register(triton::arch::ID_REG_X86_##UPPER_NAME, \
#LOWER_NAME, \
triton::arch::ID_REG_X86_##X86_PARENT, \
X86_UPPER, \
X86_LOWER, \
true);
This class is used when an instruction has a register operand.
Definition register.hpp:44

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [8/10]

#define REG_SPEC ( UPPER_NAME,
LOWER_NAME,
AARCH64_UPPER,
AARCH64_LOWER,
AARCH64_PARENT,
MUTABLE )
Value:
this->aarch64_##LOWER_NAME = triton::arch::Register(triton::arch::ID_REG_AARCH64_##UPPER_NAME, \
#LOWER_NAME, \
triton::arch::ID_REG_AARCH64_##AARCH64_PARENT, \
AARCH64_UPPER, \
AARCH64_LOWER, \
MUTABLE);

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [9/10]

#define REG_SPEC ( UPPER_NAME,
LOWER_NAME,
ARM32_UPPER,
ARM32_LOWER,
ARM32_PARENT,
MUTABLE )
Value:
this->arm32_##LOWER_NAME = triton::arch::Register(triton::arch::ID_REG_ARM32_##UPPER_NAME, \
#LOWER_NAME, \
triton::arch::ID_REG_ARM32_##ARM32_PARENT, \
ARM32_UPPER, \
ARM32_LOWER, \
MUTABLE);

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC [10/10]

#define REG_SPEC ( UPPER_NAME,
LOWER_NAME,
X86_64_UPPER,
X86_64_LOWER,
X86_64_PARENT,
X86_UPPER,
X86_LOWER,
X86_PARENT,
X86_AVAIL )
Value:
this->x86_##LOWER_NAME = triton::arch::Register(triton::arch::ID_REG_X86_##UPPER_NAME, \
#LOWER_NAME, \
triton::arch::ID_REG_X86_##X86_64_PARENT, \
X86_64_UPPER, \
X86_64_LOWER, \
true);

Definition at line 36 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [1/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [2/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [3/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [4/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [5/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [6/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [7/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [8/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [9/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ REG_SPEC_NO_CAPSTONE [10/10]

#define REG_SPEC_NO_CAPSTONE   REG_SPEC

Definition at line 38 of file shortcutRegister.hpp.

◆ SYS_REG_SPEC [1/3]

#define SYS_REG_SPEC   REG_SPEC

Definition at line 44 of file shortcutRegister.hpp.

◆ SYS_REG_SPEC [2/3]

#define SYS_REG_SPEC   REG_SPEC

Definition at line 44 of file shortcutRegister.hpp.

◆ SYS_REG_SPEC [3/3]

#define SYS_REG_SPEC   REG_SPEC

Definition at line 44 of file shortcutRegister.hpp.