Go to the source code of this file.
Macros | |
#define | Y(n) |
#define | cond_instr(n) ( arm_cond_instr_ ## n [condition_code] ) |
#define | DYNTRANS_TO_BE_TRANSLATED_HEAD |
#define | DYNTRANS_TO_BE_TRANSLATED_TAIL |
Functions | |
X (invalid) | |
X (never) | |
X (nop) | |
X (b) | |
Y (b) X(b_samepage) | |
X (b_samepage__eq) | |
X (b_samepage__ne) | |
X (b_samepage__cs) | |
X (b_samepage__cc) | |
X (b_samepage__mi) | |
X (b_samepage__pl) | |
X (b_samepage__vs) | |
X (b_samepage__vc) | |
X (b_samepage__hi) | |
X (b_samepage__ls) | |
X (b_samepage__ge) | |
X (b_samepage__lt) | |
X (b_samepage__gt) | |
X (b_samepage__le) | |
X (bx) | |
Y (bx) X(bx_trace) | |
Y (bx_trace) X(bl) | |
Y (bl) X(blx_imm) | |
X (blx_reg) | |
Y (blx_reg) X(bl_trace) | |
Y (bl_trace) X(bl_samepage) | |
Y (bl_samepage) X(bl_samepage_trace) | |
Y (bl_samepage_trace) X(clz) | |
Y (clz) X(mul) | |
Y (mul) X(muls) | |
Y (muls) X(mla) | |
Y (mla) X(mlas) | |
Y (mlas) X(mull) | |
Y (mull) X(smulbb) | |
Y (smulbb) X(smultb) | |
Y (smultb) X(smulbt) | |
Y (smulbt) X(smultt) | |
Y (smultt) X(mov_reg_reg) | |
Y (mov_reg_reg) X(mov_reg_pc) | |
Y (mov_reg_pc) X(ret_trace) | |
Y (ret_trace) X(ret) | |
Y (ret) X(msr_imm) | |
Y (msr_imm) X(msr) | |
Y (msr) X(msr_imm_spsr) | |
Y (msr_imm_spsr) X(msr_spsr) | |
Y (msr_spsr) X(mrs) | |
Y (mrs) X(mrs_spsr) | |
Y (mrs_spsr) X(mcr_mrc) | |
Y (mcr_mrc) X(cdp) | |
Y (cdp) X(openfirmware) | |
X (reboot) | |
X (swi) | |
Y (swi) X(bkpt) | |
Y (bkpt) X(und) | |
Y (und) X(swp) | |
Y (swp) X(swpb) | |
Y (swpb) extern void(*arm_load_store_instr[1024])(struct cpu * | |
struct arm_instr_call * | X (store_w1_word_u1_p0_imm) |
X (store_w0_byte_u1_p0_imm) | |
X (store_w0_word_u1_p0_imm) | |
X (store_w0_word_u1_p1_imm) | |
X (load_w0_word_u1_p0_imm) | |
X (load_w0_word_u1_p1_imm) | |
X (load_w1_word_u1_p0_imm) | |
X (load_w0_byte_u1_p1_imm) | |
X (load_w0_byte_u1_p1_reg) | |
X (load_w1_byte_u1_p1_imm) | |
uint32_t | arm_r_r3_t0_c0 (struct cpu *cpu, struct arm_instr_call *ic) |
X (cmps) | |
X (teqs) | |
X (tsts) | |
X (sub) | |
X (add) | |
X (subs) | |
X (eor_regshort) | |
X (cmps_regshort) | |
void | arm_pop (struct cpu *cpu, uint32_t *np, int p_bit, int u_bit, int s_bit, int w_bit, uint32_t iw) |
void | arm_push (struct cpu *cpu, uint32_t *np, int p_bit, int u_bit, int s_bit, int w_bit, uint16_t regs) |
X (bdt_load) | |
Y (bdt_load) X(bdt_store) | |
Y (bdt_store) extern uint32_t *multi_opcode[256] | |
X (multi_0x08b15018) | |
X (multi_0x08ac000c__ge) | |
X (multi_0x08a05018) | |
X (netbsd_memset) | |
X (netbsd_memcpy) | |
X (netbsd_cacheclean) | |
X (netbsd_cacheclean2) | |
X (netbsd_scanc) | |
X (netbsd_idle) | |
X (strlen) | |
X (xchg) | |
X (netbsd_copyin) | |
X (netbsd_copyout) | |
X (cmps0_beq_samepage) | |
X (cmps_beq_samepage) | |
X (cmps_0_beq) | |
X (cmps_pos_beq) | |
X (cmps_neg_beq) | |
X (cmps0_bne_samepage) | |
X (cmps_bne_samepage) | |
X (cmps_bcc_samepage) | |
X (cmps_reg_bcc_samepage) | |
X (cmps_bhi_samepage) | |
X (cmps_reg_bhi_samepage) | |
X (cmps_bgt_samepage) | |
X (cmps_ble_samepage) | |
X (teqs_beq_samepage) | |
X (tsts_lo_beq_samepage) | |
X (teqs_bne_samepage) | |
X (tsts_lo_bne_samepage) | |
X (end_of_page) | |
void COMBINE() | netbsd_memset (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_memcpy (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_cacheclean (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_cacheclean2 (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_scanc (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | strlen (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | xchg (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_copyin (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | netbsd_copyout (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
void COMBINE() | beq_etc (struct cpu *cpu, struct arm_instr_call *ic, int low_addr) |
X (to_be_translated) | |
Variables | |
uint8_t | condition_hi [16] = { 0,0,1,1, 0,0,0,0, 0,0,1,1, 0,0,0,0 } |
uint8_t | condition_ge [16] = { 1,0,1,0, 1,0,1,0, 0,1,0,1, 0,1,0,1 } |
uint8_t | condition_gt [16] = { 1,0,1,0, 0,0,0,0, 0,1,0,1, 0,0,0,0 } |
void(* | arm_cond_instr_b_samepage [16])(struct cpu *, struct arm_instr_call *) |
void(* | arm_load_store_instr_pc [1024])(struct cpu *, struct arm_instr_call *) |
void(* | arm_load_store_instr_3 [2048])(struct cpu *, struct arm_instr_call *) |
void(* | arm_load_store_instr_3_pc [2048])(struct cpu *, struct arm_instr_call *) |
uint32_t(* | arm_r [8192])(struct cpu *, struct arm_instr_call *) |
void(* | arm_dpi_instr [2 *2 *2 *16 *16])(struct cpu *, struct arm_instr_call *) |
void(* | arm_dpi_instr_regshort [2 *16 *16])(struct cpu *, struct arm_instr_call *) |
void(** | multi_opcode_f [256])(struct cpu *, struct arm_instr_call *) |
#define cond_instr | ( | n | ) | ( arm_cond_instr_ ## n [condition_code] ) |
Definition at line 199 of file cpu_arm_instr.cc.
Referenced by X().
#define DYNTRANS_TO_BE_TRANSLATED_HEAD |
#define DYNTRANS_TO_BE_TRANSLATED_TAIL |
#define Y | ( | n | ) |
Definition at line 132 of file cpu_arm_instr.cc.
Referenced by Y().
void arm_pop | ( | struct cpu * | cpu, |
uint32_t * | np, | ||
int | p_bit, | ||
int | u_bit, | ||
int | s_bit, | ||
int | w_bit, | ||
uint32_t | iw | ||
) |
Definition at line 1116 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_FLAG_MODE, arm_load_register_bank(), ARM_MODE_ABT32, ARM_MODE_FIQ32, ARM_MODE_IRQ32, ARM_MODE_SVC32, ARM_MODE_SYS32, ARM_MODE_UND32, ARM_MODE_USR32, ARM_PC, arm_save_register_bank(), cpu::byte_order, CACHE_DATA, cpu::cd, arm_cpu::cpsr, cpu_functioncall_trace_return(), data, arm_cpu::default_r8_r14, EMUL_BIG_ENDIAN, EMUL_LITTLE_ENDIAN, fatal(), arm_cpu::flags, cpu::machine, cpu::mem, MEM_READ, cpu::memory_rw, page, cpu::pc, arm_cpu::r, machine::show_trace_tree, arm_cpu::spsr_abt, arm_cpu::spsr_fiq, arm_cpu::spsr_irq, arm_cpu::spsr_svc, and arm_cpu::spsr_und.
Referenced by arm_cpu_interpret_thumb_SLOW(), and X().
void arm_push | ( | struct cpu * | cpu, |
uint32_t * | np, | ||
int | p_bit, | ||
int | u_bit, | ||
int | s_bit, | ||
int | w_bit, | ||
uint16_t | regs | ||
) |
Definition at line 1282 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_FLAG_MODE, ARM_MODE_ABT32, ARM_MODE_FIQ32, ARM_MODE_IRQ32, ARM_MODE_SVC32, ARM_MODE_SYS32, ARM_MODE_UND32, ARM_MODE_USR32, ARM_PC, cpu::byte_order, CACHE_DATA, cpu::cd, arm_cpu::cpsr, data, arm_cpu::default_r8_r14, EMUL_BIG_ENDIAN, EMUL_LITTLE_ENDIAN, cpu::mem, MEM_WRITE, cpu::memory_rw, page, cpu::pc, and arm_cpu::r.
Referenced by arm_cpu_interpret_thumb_SLOW(), and Y().
uint32_t arm_r_r3_t0_c0 | ( | struct cpu * | cpu, |
struct arm_instr_call * | ic | ||
) |
Definition at line 20 of file tmp_arm_r0.cc.
Referenced by Y().
Definition at line 2443 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cmps, and instr.
Definition at line 2263 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2286 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2381 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, instr, and arm_cpu::r.
Definition at line 2412 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, instr, and arm_cpu::r.
Definition at line 2235 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2206 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2308 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, instr, and arm_cpu::r.
Definition at line 2333 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, cmps, instr, and arm_cpu::r.
Referenced by add_environment_string(), add_environment_string_dual(), alpha_cpu_list_available_types(), alpha_prom_call(), arcbios_addchild_manual(), arm_cpu_list_available_types(), cpu_new(), debugger_assignment(), debugger_parse_expression(), dev_turbochannel_init(), device_add(), DEVINIT(), diskimage_add(), diskimage_add_overlay(), emul_machine_setup(), m88k_cpu_list_available_types(), MACHINE_SETUP(), machine_setup(), machine_statistics_init(), main(), mips_cpu_list_available_types(), mymkstemp(), ppc_cpu_list_available_types(), settings_access(), settings_debugdump(), sh_cpu_list_available_types(), symbol_demangle_cplusplus(), and symbol_readfile().
X | ( | invalid | ) |
Definition at line 208 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, fatal(), ic, and cpu::pc.
Referenced by Y().
X | ( | never | ) |
Definition at line 229 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, fatal(), ic, and cpu::pc.
X | ( | nop | ) |
Definition at line 246 of file cpu_arm_instr.cc.
X | ( | b | ) |
Definition at line 256 of file cpu_arm_instr.cc.
X | ( | b_samepage__eq | ) |
Definition at line 277 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_Z, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__ne | ) |
Definition at line 281 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_Z, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__cs | ) |
Definition at line 285 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__cc | ) |
Definition at line 289 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__mi | ) |
Definition at line 293 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__pl | ) |
Definition at line 297 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__vs | ) |
Definition at line 301 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_V, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__vc | ) |
Definition at line 305 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_V, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__hi | ) |
Definition at line 309 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__ls | ) |
Definition at line 314 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__ge | ) |
Definition at line 318 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__lt | ) |
Definition at line 323 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__gt | ) |
Definition at line 327 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__le | ) |
Definition at line 332 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | bx | ) |
Definition at line 353 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, cpu::cd, arm_cpu::cpsr, ic, cpu::pc, and reg.
X | ( | blx_reg | ) |
Definition at line 482 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, ARM_LR, cpu::cd, arm_cpu::cpsr, ic, cpu::pc, arm_cpu::r, and reg.
X | ( | reboot | ) |
Definition at line 962 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and cpu::running.
X | ( | swi | ) |
Definition at line 973 of file cpu_arm_instr.cc.
References arm_exception(), ARM_EXCEPTION_SWI, ic, and cpu::pc.
struct arm_instr_call* X | ( | store_w1_word_u1_p0_imm | ) |
X | ( | store_w0_byte_u1_p0_imm | ) |
X | ( | store_w0_word_u1_p0_imm | ) |
X | ( | store_w0_word_u1_p1_imm | ) |
X | ( | load_w0_word_u1_p0_imm | ) |
X | ( | load_w0_word_u1_p1_imm | ) |
X | ( | load_w1_word_u1_p0_imm | ) |
X | ( | load_w0_byte_u1_p1_imm | ) |
X | ( | load_w0_byte_u1_p1_reg | ) |
X | ( | load_w1_byte_u1_p1_imm | ) |
X | ( | cmps | ) |
X | ( | teqs | ) |
X | ( | tsts | ) |
X | ( | sub | ) |
Definition at line 1511 of file cpu_mips_instr.cc.
References cpu::cd, EXCEPTION_OV, ic, cpu::mips, mips_cpu_exception(), MIPS_IC_ENTRIES_PER_PAGE, MIPS_INSTR_ALIGNMENT_SHIFT, cpu::pc, and reg.
X | ( | add | ) |
Definition at line 678 of file cpu_m88k_instr.cc.
References cpu::cd, DOT2, EXCEPTION_OV, ic, m88k_exception(), M88K_EXCEPTION_INTEGER_OVERFLOW, cpu::mips, mips_cpu_exception(), MIPS_IC_ENTRIES_PER_PAGE, MIPS_INSTR_ALIGNMENT_SHIFT, cpu::pc, reg, and SYNCH_PC.
X | ( | subs | ) |
X | ( | eor_regshort | ) |
X | ( | cmps_regshort | ) |
X | ( | bdt_load | ) |
Definition at line 1380 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, arm_pop(), cpu::cd, if(), and cpu::pc.
X | ( | multi_0x08b15018 | ) |
X | ( | multi_0x08ac000c__ge | ) |
X | ( | multi_0x08a05018 | ) |
X | ( | netbsd_memset | ) |
Definition at line 1459 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_F_N, ARM_F_V, ARM_F_Z, ARM_IP, cpu::cd, arm_cpu::flags, ic, instr, cpu::n_translated_instrs, page, and arm_cpu::r.
X | ( | netbsd_memcpy | ) |
Definition at line 1520 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_V, cpu::cd, arm_cpu::flags, ic, instr, cpu::n_translated_instrs, and arm_cpu::r.
X | ( | netbsd_cacheclean | ) |
Definition at line 1578 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and arm_cpu::r.
X | ( | netbsd_cacheclean2 | ) |
Definition at line 1599 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and arm_cpu::r.
X | ( | netbsd_scanc | ) |
Definition at line 1613 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, ARM_IP, cpu::cd, arm_cpu::flags, ic, instr, cpu::n_translated_instrs, page, arm_cpu::r, and t.
X | ( | netbsd_idle | ) |
Definition at line 1655 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, cpu::has_been_idling, ic, if(), instr, cpu::machine, N_SAFE_DYNTRANS_LIMIT, cpu::n_translated_instrs, machine::ncpus, cpu::pc, and reg.
X | ( | strlen | ) |
Definition at line 1711 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_Z, cpu::cd, arm_cpu::flags, ic, instr, cpu::n_translated_instrs, and reg.
X | ( | xchg | ) |
Definition at line 1748 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and reg.
X | ( | netbsd_copyin | ) |
Definition at line 1768 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, instr, arm_cpu::is_userpage, cpu::n_translated_instrs, and arm_cpu::r.
X | ( | netbsd_copyout | ) |
Definition at line 1803 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, instr, arm_cpu::is_userpage, cpu::n_translated_instrs, and arm_cpu::r.
X | ( | cmps0_beq_samepage | ) |
Definition at line 1831 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | cmps_beq_samepage | ) |
Definition at line 1851 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_0_beq | ) |
Definition at line 1873 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, cpu::pc, and reg.
X | ( | cmps_pos_beq | ) |
Definition at line 1888 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, cpu::pc, and reg.
X | ( | cmps_neg_beq | ) |
Definition at line 1906 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, cpu::pc, and reg.
X | ( | cmps0_bne_samepage | ) |
Definition at line 1929 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | cmps_bne_samepage | ) |
Definition at line 1949 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_bcc_samepage | ) |
Definition at line 1971 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_reg_bcc_samepage | ) |
Definition at line 1993 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_bhi_samepage | ) |
Definition at line 2015 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_reg_bhi_samepage | ) |
Definition at line 2037 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_bgt_samepage | ) |
Definition at line 2059 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | cmps_ble_samepage | ) |
Definition at line 2081 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_C, ARM_F_N, ARM_F_V, ARM_F_Z, cpu::cd, arm_cpu::flags, if(), cpu::n_translated_instrs, and reg.
X | ( | teqs_beq_samepage | ) |
Definition at line 2103 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | tsts_lo_beq_samepage | ) |
Definition at line 2124 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | teqs_bne_samepage | ) |
Definition at line 2142 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | tsts_lo_bne_samepage | ) |
Definition at line 2165 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, cpu::n_translated_instrs, and reg.
X | ( | end_of_page | ) |
Definition at line 2183 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::n_translated_instrs, and cpu::pc.
X | ( | to_be_translated | ) |
Definition at line 2623 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, arm_load_store_instr_3, arm_load_store_instr_3_pc, ARM_LR, ARM_PC, arm_r, cpu::byte_order, CACHE_INSTRUCTION, cpu::cd, cond_instr, EMUL_LITTLE_ENDIAN, fatal(), instr, cpu::machine, cpu::mem, MEM_READ, cpu::memory_rw, nop(), page, cpu::pc, arm_cpu::r, machine::show_trace_tree, arm_cpu::tmp_pc, and cpu::translation_readahead.
Definition at line 2356 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Y | ( | b | ) |
Definition at line 263 of file cpu_arm_instr.cc.
Y | ( | bx | ) |
Definition at line 376 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, ARM_LR, cpu::cd, arm_cpu::cpsr, cpu::pc, and arm_cpu::r.
Y | ( | bx_trace | ) |
Definition at line 409 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, ic, cpu::pc, and arm_cpu::r.
Y | ( | bl | ) |
Definition at line 429 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, ARM_LR, cpu::cd, arm_cpu::cpsr, fatal(), ic, cpu::n_translated_instrs, cpu::pc, arm_cpu::r, and cpu::running.
Y | ( | blx_reg | ) |
Definition at line 508 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, cpu_functioncall_trace(), ic, cpu::pc, and arm_cpu::r.
Y | ( | bl_trace | ) |
Definition at line 529 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, ic, cpu::pc, and arm_cpu::r.
Y | ( | bl_samepage | ) |
Definition at line 543 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, ARM_LR, cpu::cd, cpu_functioncall_trace(), ic, cpu::pc, and arm_cpu::r.
Y | ( | bl_samepage_trace | ) |
Definition at line 569 of file cpu_arm_instr.cc.
Y | ( | clz | ) |
Definition at line 599 of file cpu_arm_instr.cc.
Y | ( | mul | ) |
Definition at line 613 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, ic, and reg.
Y | ( | muls | ) |
Definition at line 625 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, and arm_cpu::r.
Y | ( | mla | ) |
Definition at line 643 of file cpu_arm_instr.cc.
References cpu::arm, ARM_F_N, ARM_F_Z, cpu::cd, arm_cpu::flags, ic, and arm_cpu::r.
Y | ( | mlas | ) |
Definition at line 659 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, and arm_cpu::r.
Y | ( | mull | ) |
Definition at line 690 of file cpu_arm_instr.cc.
Y | ( | smulbb | ) |
Definition at line 705 of file cpu_arm_instr.cc.
Y | ( | smultb | ) |
Definition at line 711 of file cpu_arm_instr.cc.
Y | ( | smulbt | ) |
Definition at line 717 of file cpu_arm_instr.cc.
Y | ( | smultt | ) |
Definition at line 723 of file cpu_arm_instr.cc.
Y | ( | mov_reg_reg | ) |
Definition at line 736 of file cpu_arm_instr.cc.
Y | ( | mov_reg_pc | ) |
Definition at line 749 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, ARM_LR, cpu::cd, cpu_functioncall_trace_return(), cpu::pc, and arm_cpu::r.
Y | ( | ret_trace | ) |
Definition at line 783 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, cpu::pc, and arm_cpu::r.
Y | ( | ret | ) |
Definition at line 789 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_MODE, arm_load_register_bank(), ARM_MODE_USR32, arm_save_register_bank(), cpu::cd, arm_cpu::cpsr, arm_cpu::flags, and ic.
Y | ( | msr_imm | ) |
Definition at line 829 of file cpu_arm_instr.cc.
Y | ( | msr | ) |
Definition at line 835 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_MODE, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, ARM_MODE_ABT32, ARM_MODE_FIQ32, ARM_MODE_IRQ32, ARM_MODE_SVC32, ARM_MODE_UND32, cpu::cd, arm_cpu::cpsr, fatal(), ic, cpu::pc, arm_cpu::spsr_abt, arm_cpu::spsr_fiq, arm_cpu::spsr_irq, arm_cpu::spsr_svc, and arm_cpu::spsr_und.
Y | ( | msr_imm_spsr | ) |
Definition at line 875 of file cpu_arm_instr.cc.
Y | ( | msr_spsr | ) |
Definition at line 881 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::cpsr, arm_cpu::flags, ic, and reg.
Y | ( | mrs | ) |
Definition at line 895 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_MODE, ARM_MODE_ABT32, ARM_MODE_FIQ32, ARM_MODE_IRQ32, ARM_MODE_SVC32, ARM_MODE_SYS32, ARM_MODE_UND32, ARM_MODE_USR32, cpu::cd, arm_cpu::cpsr, fatal(), ic, reg, arm_cpu::spsr_abt, arm_cpu::spsr_fiq, arm_cpu::spsr_irq, arm_cpu::spsr_svc, and arm_cpu::spsr_und.
Y | ( | mrs_spsr | ) |
Definition at line 918 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, arm_mcr_mrc(), cpu::cd, ic, and cpu::pc.
Y | ( | mcr_mrc | ) |
Definition at line 934 of file cpu_arm_instr.cc.
References cpu::arm, arm_cdp(), ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cpu::cd, ic, and cpu::pc.
Y | ( | cdp | ) |
Definition at line 942 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, cpu_functioncall_trace_return(), cpu::machine, of_emul(), cpu::pc, arm_cpu::r, and machine::show_trace_tree.
Y | ( | swi | ) |
Definition at line 980 of file cpu_arm_instr.cc.
References arm_exception(), ARM_EXCEPTION_PREF_ABT, ic, and cpu::pc.
Y | ( | bkpt | ) |
Definition at line 993 of file cpu_arm_instr.cc.
References arm_exception(), ARM_EXCEPTION_UND, ic, and cpu::pc.
Y | ( | und | ) |
Definition at line 1006 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, CACHE_DATA, cpu::cd, data, fatal(), ic, cpu::mem, MEM_READ, MEM_WRITE, cpu::memory_rw, cpu::pc, and reg.
Y | ( | swp | ) |
Definition at line 1042 of file cpu_arm_instr.cc.
References addr, cpu::arm, arm_dpi_instr, arm_dpi_instr_regshort, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, arm_load_store_instr, arm_load_store_instr_3, arm_load_store_instr_3_pc, arm_load_store_instr_pc, arm_r, arm_r_r3_t0_c0(), CACHE_DATA, cpu::cd, cmps, data, fatal(), ic, cpu::mem, MEM_READ, MEM_WRITE, cpu::memory_rw, cpu::pc, reg, X(), and Y.
Y | ( | swpb | ) |
Y | ( | bdt_load | ) |
Definition at line 1403 of file cpu_arm_instr.cc.
References cpu::arm, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, arm_push(), bdt_store(), cpu::cd, if(), multi_opcode, multi_opcode_f, cpu::pc, X(), and Y.
Y | ( | bdt_store | ) |
void(* arm_cond_instr_b_samepage[16])(struct cpu *, struct arm_instr_call *) |
Definition at line 336 of file cpu_arm_instr.cc.
void(* arm_dpi_instr[2 * 2 * 2 * 16 * 16])(struct cpu *, struct arm_instr_call *) |
Definition at line 5075 of file tmp_arm_dpi.cc.
Referenced by Y().
void(* arm_dpi_instr_regshort[2 * 16 * 16])(struct cpu *, struct arm_instr_call *) |
Definition at line 7128 of file tmp_arm_dpi.cc.
Referenced by Y().
void(* arm_load_store_instr_3[2048])(struct cpu *, struct arm_instr_call *) |
Definition at line 5915 of file tmp_arm_loadstore.cc.
void(* arm_load_store_instr_3_pc[2048])(struct cpu *, struct arm_instr_call *) |
Definition at line 7968 of file tmp_arm_loadstore.cc.
void(* arm_load_store_instr_pc[1024])(struct cpu *, struct arm_instr_call *) |
Definition at line 2006 of file tmp_arm_loadstore.cc.
Referenced by Y().
uint32_t(* arm_r[8192])(struct cpu *, struct arm_instr_call *) |
Definition at line 8204 of file tmp_arm_r.cc.
uint8_t condition_ge[16] = { 1,0,1,0, 1,0,1,0, 0,1,0,1, 0,1,0,1 } |
Definition at line 129 of file cpu_arm_instr.cc.
Referenced by A__NAME__ge(), A__NAME__lt(), and arm_cpu_interpret_thumb_SLOW().
uint8_t condition_gt[16] = { 1,0,1,0, 0,0,0,0, 0,1,0,1, 0,0,0,0 } |
Definition at line 130 of file cpu_arm_instr.cc.
Referenced by A__NAME__gt(), A__NAME__le(), and arm_cpu_interpret_thumb_SLOW().
uint8_t condition_hi[16] = { 0,0,1,1, 0,0,0,0, 0,0,1,1, 0,0,0,0 } |
Definition at line 128 of file cpu_arm_instr.cc.
Referenced by A__NAME__hi(), A__NAME__ls(), and arm_cpu_interpret_thumb_SLOW().
void(** multi_opcode_f[256])(struct cpu *, struct arm_instr_call *) |
Definition at line 9510 of file tmp_arm_multi.cc.
Referenced by Y().