構成 | 型定義 | 列挙型 | 関数 | 変数

ネームスペース assembler::arm

構成

class  Instr
class  Decoder
class  Debugger
class  Simulator

型定義

typedef unsigned char byte
typedef int32_t instr_t
typedef int64_t(* SimulatorRuntimeCall )(intptr_t arg0, intptr_t arg1)

列挙型

enum  Condition {
  no_condition = -1, EQ = 0, NE = 1, CS = 2,
  CC = 3, MI = 4, PL = 5, VS = 6,
  VC = 7, HI = 8, LS = 9, GE = 10,
  LT = 11, GT = 12, LE = 13, AL = 14,
  special_condition = 15
}
enum  Opcode {
  no_operand = -1, AND = 0, EOR = 1, SUB = 2,
  RSB = 3, ADD = 4, ADC = 5, SBC = 6,
  RSC = 7, TST = 8, TEQ = 9, CMP = 10,
  CMN = 11, ORR = 12, MOV = 13, BIC = 14,
  MVN = 15
}
enum  Shift {
  no_shift = -1, LSL = 0, LSR = 1, ASR = 2,
  ROR = 3
}
enum  SoftwareInterruptCodes { call_rt_r5 = 0x10, call_rt_r2 = 0x11, break_point = 0x20 }

関数

static int RegNameToRegNum (char *name)
static int count_bits (int bit_vector)

変数

static const char * cond_names [16]
static const char * shift_names [4]
static const char * reg_names []
static int reg_nums []
static Simulatorthe_sim = NULL

型定義

typedef unsigned char assembler::arm::byte

constants-arm.h39 行で定義されています。

typedef int32_t assembler::arm::instr_t

constants-arm.h101 行で定義されています。

typedef int64_t(* assembler::arm::SimulatorRuntimeCall)(intptr_t arg0, intptr_t arg1)

simulator-arm.cc856 行で定義されています。


列挙型

列挙型の値:
no_condition 
EQ 
NE 
CS 
CC 
MI 
PL 
VS 
VC 
HI 
LS 
GE 
LT 
GT 
LE 
AL 
special_condition 

constants-arm.h41 行で定義されています。

列挙型の値:
no_operand 
AND 
EOR 
SUB 
RSB 
ADD 
ADC 
SBC 
RSC 
TST 
TEQ 
CMP 
CMN 
ORR 
MOV 
BIC 
MVN 

constants-arm.h62 行で定義されています。

列挙型の値:
no_shift 
LSL 
LSR 
ASR 
ROR 

constants-arm.h83 行で定義されています。

列挙型の値:
call_rt_r5 
call_rt_r2 
break_point 

constants-arm.h92 行で定義されています。


関数

static int assembler::arm::count_bits ( int  bit_vector  )  [static]

simulator-arm.cc778 行で定義されています。

static int assembler::arm::RegNameToRegNum ( char *  name  )  [static]

simulator-arm.cc116 行で定義されています。


変数

const char* assembler::arm::cond_names[16] [static]
初期値:
 {
"eq", "ne", "cs" , "cc" , "mi" , "pl" , "vs" , "vc" ,
"hi", "ls", "ge", "lt", "gt", "le", "", "invalid",
}

disasm-arm.cc110 行で定義されています。

参照元 assembler::arm::Decoder::PrintCondition().

const char* assembler::arm::reg_names[] [static]
初期値:
 {  "r0",  "r1",  "r2",  "r3",
                                    "r4",  "r5",  "r6",  "r7",
                                    "r8",  "r9", "r10", "r11",
                                   "r12", "r13", "r14", "r15",
                                    "pc",  "lr",  "sp",  "ip",
                                    "fp",  "sl", ""}

simulator-arm.cc101 行で定義されています。

int assembler::arm::reg_nums[] [static]
初期値:
 {           0,     1,     2,     3,
                                       4,     5,     6,     7,
                                       8,     9,    10,    11,
                                      12,    13,    14,    15,
                                      15,    14,    13,    12,
                                      11,    10}

simulator-arm.cc108 行で定義されています。

const char* assembler::arm::shift_names[4] [static]
初期値:
 {
  "lsl", "lsr", "asr", "ror"
}

disasm-arm.cc128 行で定義されています。

参照元 assembler::arm::Decoder::PrintShiftRm().

simulator-arm.cc382 行で定義されています。

参照元 assembler::arm::Simulator::current().

 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義