cpu_arm_instr_loadstore.cc Source File
Back to the index.
Go to the documentation of this file.
47 #if defined(A__SIGNED) && !defined(A__H) && !defined(A__L)
50 #if defined(A__SIGNED) && defined(A__H) && !defined(A__L)
62 #if !defined(A__P) && defined(A__W)
69 uint32_t (*reg_func)(
struct cpu *,
struct arm_instr_call *)
70 = (uint32_t (*)(
struct cpu *,
struct arm_instr_call *))
71 (
void *)(
size_t)
ic->arg[1];
74 #if defined(A__STRD) || defined(A__LDRD)
75 unsigned char data[8];
76 const int datalen = 8;
79 unsigned char data[1];
80 const int datalen = 1;
83 unsigned char data[2];
84 const int datalen = 2;
86 const int datalen = 4;
87 #ifdef HOST_LITTLE_ENDIAN
88 unsigned char *
data = (
unsigned char *)
ic->arg[2];
90 unsigned char data[4];
96 uint32_t
addr, low_pc, offset =
107 cur_ic_page) /
sizeof(
struct arm_instr_call);
118 addr &= ~(datalen - 1);
120 #if defined(A__L) || defined(A__LDRD)
127 #if defined(A__B) && !defined(A__LDRD)
134 #if defined(A__H) && !defined(A__LDRD)
154 reg(((uint32_t *)
ic->arg[2]) + 1) =
163 #if !defined(A__B) && !defined(A__H) && defined(HOST_LITTLE_ENDIAN)
166 *(uint32_t *)(
data + 4) =
reg(
ic->arg[2] + 4);
175 #if !defined(A__H) || defined(A__STRD)
216 #if defined(A__LDRD) || defined(A__STRD)
221 uint32_t (*reg_func)(
struct cpu *,
struct arm_instr_call *)
222 = (uint32_t (*)(
struct cpu *,
struct arm_instr_call *))
223 (
void *)(
size_t)
ic->arg[1];
248 #if !defined(A__P) && defined(A__W)
255 if (!(x & (1 << ((
addr >> 12) & 31))))
361 uint32_t low_pc, tmp;
362 low_pc = ((size_t)
ic - (
size_t)
cpu->
cd.
arm.cur_ic_page) /
363 sizeof(
struct arm_instr_call);
378 uint32_t low_pc, tmp;
380 low_pc = ((size_t)
ic - (
size_t)
cpu->
cd.
arm.cur_ic_page) /
381 sizeof(
struct arm_instr_call);
391 #ifndef A__NOCONDITIONS
void A__NAME__hi(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__cs(struct cpu *cpu, struct arm_instr_call *ic)
#define ARM_IC_ENTRIES_PER_PAGE
void A__NAME_PC__gt(struct cpu *cpu, struct arm_instr_call *ic)
void cpu_functioncall_trace(struct cpu *cpu, uint64_t f)
#define ARM_INSTR_ALIGNMENT_SHIFT
void A__NAME_PC__pl(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__gt(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__le(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__cc(struct cpu *cpu, struct arm_instr_call *ic)
#define MEMORY_USER_ACCESS
void A__NAME(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__ge(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__mi(struct cpu *cpu, struct arm_instr_call *ic)
struct arm_instr_call * ic
void A__NAME_PC__cs(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__ls(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__ge(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__ne(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__lt(struct cpu *cpu, struct arm_instr_call *ic)
#define EMUL_LITTLE_ENDIAN
void A__NAME__vc(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__vs(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__vc(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__eq(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__cc(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__pl(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__vs(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__mi(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME__general(struct cpu *cpu, struct arm_instr_call *ic)
#define quick_pc_to_pointers(cpu)
void A__NAME_PC__hi(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__ls(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__le(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC__eq(struct cpu *cpu, struct arm_instr_call *ic)
int(* memory_rw)(struct cpu *cpu, struct memory *mem, uint64_t vaddr, unsigned char *data, size_t len, int writeflag, int cache_flags)
void A__NAME__lt(struct cpu *cpu, struct arm_instr_call *ic)
uint32_t is_userpage[N_VPH32_ENTRIES/32]
void A__NAME_PC__ne(struct cpu *cpu, struct arm_instr_call *ic)
void A__NAME_PC(struct cpu *cpu, struct arm_instr_call *ic)
Generated on Tue Aug 25 2020 19:25:06 for GXemul by
1.8.18