static void * t2h_addr (host_callback *cb, struct cb_syscall *sc, unsigned long taddr) { void *addr; SIM_DESC sd = (SIM_DESC) sc->p1; SIM_CPU *cpu = (SIM_CPU *) sc->p2; if (taddr == 0) return NULL; return sim_core_trans_addr (sd, cpu, read_map, taddr); }
const char * aarch64_get_mem_ptr (sim_cpu *cpu, uint64_t address) { char *addr = sim_core_trans_addr (CPU_STATE (cpu), cpu, read_map, address); if (addr == NULL) { mem_error (cpu, "request for non-existant mem addr of", address); sim_engine_halt (CPU_STATE (cpu), cpu, NULL, aarch64_get_PC (cpu), sim_stopped, SIM_SIGBUS); } return addr; }