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 (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) | |
Y (blx) 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) | |
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().
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 2357 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, cmps, and instr.
Definition at line 2177 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2200 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2295 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 2326 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 2149 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2120 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Definition at line 2222 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 2247 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 | ( | nop | ) |
Definition at line 228 of file cpu_arm_instr.cc.
X | ( | b | ) |
Definition at line 238 of file cpu_arm_instr.cc.
X | ( | b_samepage__eq | ) |
Definition at line 259 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 263 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 267 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 271 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 275 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 279 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 283 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 287 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 291 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__ls | ) |
Definition at line 296 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__ge | ) |
Definition at line 300 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__lt | ) |
Definition at line 305 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__gt | ) |
Definition at line 309 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | b_samepage__le | ) |
Definition at line 314 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, arm_cpu::flags, and ic.
X | ( | bx | ) |
Definition at line 335 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, cpu::cd, arm_cpu::cpsr, fatal(), ic, INVALIDATE_ALL, cpu::invalidate_translation_caches, cpu::n_translated_instrs, cpu::pc, reg, and cpu::running.
X | ( | reboot | ) |
Definition at line 898 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and cpu::running.
X | ( | swi | ) |
Definition at line 909 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 1055 of file cpu_arm_instr.cc.
References addr, cpu::arm, ARM_FLAG_MODE, ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, 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, if(), 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.
X | ( | multi_0x08b15018 | ) |
X | ( | multi_0x08ac000c__ge | ) |
X | ( | multi_0x08a05018 | ) |
X | ( | netbsd_memset | ) |
Definition at line 1373 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 1434 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 1492 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 1513 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 1527 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, and arm_cpu::r.
X | ( | netbsd_idle | ) |
Definition at line 1569 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 1625 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 1662 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, cpu::n_translated_instrs, and reg.
X | ( | netbsd_copyin | ) |
Definition at line 1682 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 1717 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 1745 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 1765 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 1787 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 1802 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 1820 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 1843 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 1863 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 1885 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 1907 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 1929 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 1951 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 1973 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 1995 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 2017 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 2038 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 2056 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 2079 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 2097 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 2537 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 2270 of file cpu_arm_instr.cc.
References ARM_IC_ENTRIES_PER_PAGE, ARM_INSTR_ALIGNMENT_SHIFT, and instr.
Y | ( | b | ) |
Definition at line 245 of file cpu_arm_instr.cc.
Y | ( | bx | ) |
Definition at line 358 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, ARM_LR, cpu::cd, arm_cpu::cpsr, fatal(), INVALIDATE_ALL, cpu::invalidate_translation_caches, cpu::n_translated_instrs, cpu::pc, arm_cpu::r, and cpu::running.
Y | ( | bx_trace | ) |
Definition at line 391 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 410 of file cpu_arm_instr.cc.
References cpu::arm, ARM_FLAG_T, ARM_LR, cpu::cd, arm_cpu::cpsr, fatal(), ic, INVALIDATE_ALL, cpu::invalidate_translation_caches, cpu::n_translated_instrs, cpu::pc, arm_cpu::r, reg, and cpu::running.
Y | ( | blx | ) |
Definition at line 444 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 465 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 479 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 505 of file cpu_arm_instr.cc.
Y | ( | clz | ) |
Definition at line 535 of file cpu_arm_instr.cc.
Y | ( | mul | ) |
Definition at line 549 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 561 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, and arm_cpu::r.
Y | ( | mla | ) |
Definition at line 579 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 595 of file cpu_arm_instr.cc.
References cpu::arm, cpu::cd, ic, and arm_cpu::r.
Y | ( | mull | ) |
Definition at line 626 of file cpu_arm_instr.cc.
Y | ( | smulbb | ) |
Definition at line 641 of file cpu_arm_instr.cc.
Y | ( | smultb | ) |
Definition at line 647 of file cpu_arm_instr.cc.
Y | ( | smulbt | ) |
Definition at line 653 of file cpu_arm_instr.cc.
Y | ( | smultt | ) |
Definition at line 659 of file cpu_arm_instr.cc.
Y | ( | mov_reg_reg | ) |
Definition at line 672 of file cpu_arm_instr.cc.
Y | ( | mov_reg_pc | ) |
Definition at line 685 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 719 of file cpu_arm_instr.cc.
References cpu::arm, ARM_LR, cpu::cd, cpu::pc, and arm_cpu::r.
Y | ( | ret | ) |
Definition at line 725 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 765 of file cpu_arm_instr.cc.
Y | ( | msr | ) |
Definition at line 771 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 811 of file cpu_arm_instr.cc.
Y | ( | msr_spsr | ) |
Definition at line 817 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 831 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 854 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 870 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 878 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 916 of file cpu_arm_instr.cc.
References arm_exception(), ARM_EXCEPTION_PREF_ABT, ic, and cpu::pc.
Y | ( | bkpt | ) |
Definition at line 929 of file cpu_arm_instr.cc.
References arm_exception(), ARM_EXCEPTION_UND, ic, and cpu::pc.
Y | ( | und | ) |
Definition at line 942 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 978 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 1233 of file cpu_arm_instr.cc.
References addr, 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_SYS32, ARM_MODE_UND32, ARM_MODE_USR32, ARM_PC, bdt_store(), cpu::byte_order, CACHE_DATA, cpu::cd, arm_cpu::cpsr, data, arm_cpu::default_r8_r14, EMUL_BIG_ENDIAN, EMUL_LITTLE_ENDIAN, if(), cpu::mem, MEM_WRITE, cpu::memory_rw, multi_opcode, multi_opcode_f, page, cpu::pc, arm_cpu::r, X(), and Y.
Y | ( | bdt_store | ) |
void(* arm_cond_instr_b_samepage[16])(struct cpu *, struct arm_instr_call *) |
Definition at line 318 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(), and A__NAME__lt().
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(), and A__NAME__le().
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(), and A__NAME__ls().
void(** multi_opcode_f[256])(struct cpu *, struct arm_instr_call *) |
Definition at line 9510 of file tmp_arm_multi.cc.
Referenced by Y().