Lines Matching defs:arm_ctx
131 static inline void update_arm_exception_state(abort_information_context_t *arm_ctx, uint32_t exception_type)
135 thread->machine.es.fsr = arm_ctx->fsr;
136 thread->machine.es.far = arm_ctx->far;
189 void sleh_fatal_exception(abort_information_context_t * arm_ctx, char *message)
198 "cpsr: 0x%08x fsr: 0x%08x far: 0x%08x\n", arm_ctx,
199 arm_ctx->r[0], arm_ctx->r[1], arm_ctx->r[2], arm_ctx->r[3],
200 arm_ctx->r[4], arm_ctx->r[5], arm_ctx->r[6], arm_ctx->r[7],
201 arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10], arm_ctx->r[11],
202 arm_ctx->r[12], arm_ctx->sp, arm_ctx->lr, arm_ctx->pc, arm_ctx->cpsr,
203 arm_ctx->fsr, arm_ctx->far);
230 abort_information_context_t *arm_ctx =
238 kprintf("sleh_abort: pc %x lr %x far %x fsr %x psr %x\n", arm_ctx->pc, arm_ctx->lr, arm_ctx->far, arm_ctx->fsr, arm_ctx->cpsr);
241 dfsr = arm_ctx->fsr;
242 dfar = arm_ctx->far;
244 ifsr = arm_ctx->fsr;
245 ifar = arm_ctx->far;
247 sleh_fatal_exception(arm_ctx, "sleh_abort: weird abort");
254 sleh_fatal_exception(arm_ctx, "sleh_abort: recursive abort");
262 sleh_fatal_exception(arm_ctx, "sleh_abort: alignment fault");
266 sleh_fatal_exception(arm_ctx,
271 sleh_fatal_exception(arm_ctx, "sleh_abort: current thread is null?");
275 sleh_fatal_exception(arm_ctx, "sleh_abort: Abort in interrupt handler");
281 cpsr = arm_ctx->cpsr & 0x1F;
308 vm_fault(map, vm_map_trunc_page(arm_ctx->pc),
315 if (kdp_raise_exception(EXC_BREAKPOINT, 0, 0, &arm_ctx))
322 panic_context(0, (void *) arm_ctx,
329 ifar, arm_ctx, arm_ctx->r[0], arm_ctx->r[1],
330 arm_ctx->r[2], arm_ctx->r[3], arm_ctx->r[4],
331 arm_ctx->r[5], arm_ctx->r[6], arm_ctx->r[7],
332 arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10],
333 arm_ctx->r[11], arm_ctx->r[12], arm_ctx->sp,
334 arm_ctx->lr, arm_ctx->pc, arm_ctx->cpsr, ifsr,
372 panic_context(0, (void *) arm_ctx,
379 dfar, arm_ctx, arm_ctx->r[0], arm_ctx->r[1],
380 arm_ctx->r[2], arm_ctx->r[3],
381 arm_ctx->r[4], arm_ctx->r[5],
382 arm_ctx->r[6], arm_ctx->r[7],
383 arm_ctx->r[8], arm_ctx->r[9],
384 arm_ctx->r[10], arm_ctx->r[11],
385 arm_ctx->r[12], arm_ctx->sp,
386 arm_ctx->lr, arm_ctx->pc,
387 arm_ctx->cpsr, dfsr, dfar);
397 sleh_fatal_exception(arm_ctx,
400 arm_ctx->pc = thread->recover;
401 arm_ctx->cpsr &= ~(1 << 5);
437 vm_fault(map, vm_map_trunc_page(arm_ctx->pc),
448 if((arm_ctx->pc & 0xfff) >= 0xff0)
449 vm_fault(map, vm_map_trunc_page(arm_ctx->pc) + PAGE_SIZE,
456 update_arm_exception_state(arm_ctx, exception_type);
464 proc_pid(thread->task->bsd_info), arm_ctx->pc, map,
471 " cpsr: 0x%08x\n", arm_ctx->r[0], arm_ctx->r[1],
472 arm_ctx->r[2], arm_ctx->r[3], arm_ctx->r[4],
473 arm_ctx->r[5], arm_ctx->r[6], arm_ctx->r[7],
474 arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10],
475 arm_ctx->r[11], arm_ctx->r[12], arm_ctx->sp,
476 arm_ctx->lr, arm_ctx->pc, arm_ctx->cpsr);
516 update_arm_exception_state(arm_ctx, exception_type);
531 " cpsr: 0x%08x\n", arm_ctx->r[0], arm_ctx->r[1],
532 arm_ctx->r[2], arm_ctx->r[3], arm_ctx->r[4],
533 arm_ctx->r[5], arm_ctx->r[6], arm_ctx->r[7],
534 arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10],
535 arm_ctx->r[11], arm_ctx->r[12], arm_ctx->sp,
536 arm_ctx->lr, arm_ctx->pc, arm_ctx->cpsr);
551 update_arm_exception_state(arm_ctx, exception_type);
625 arm_saved_state_t *arm_ctx = (arm_saved_state_t *) state;
635 cpsr = arm_ctx->cpsr & 0x1F;
644 panic_context(0, (void *) arm_ctx,
650 "cpsr: 0x%08x\n", arm_ctx, arm_ctx->r[0], arm_ctx->r[1],
651 arm_ctx->r[2], arm_ctx->r[3], arm_ctx->r[4],
652 arm_ctx->r[5], arm_ctx->r[6], arm_ctx->r[7],
653 arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10],
654 arm_ctx->r[11], arm_ctx->r[12], arm_ctx->sp, arm_ctx->lr,
655 arm_ctx->pc, arm_ctx->cpsr);
668 thumb_offset = (arm_ctx->cpsr & (1 << 5)) ? 1 : 0;
669 copyin((uint8_t *) (arm_ctx->pc + thumb_offset), &instruction,
707 proc_pid(thread->task->bsd_info), arm_ctx->pc, map, map->pmap);
713 " cpsr: 0x%08x\n", arm_ctx->r[0], arm_ctx->r[1], arm_ctx->r[2],
714 arm_ctx->r[3], arm_ctx->r[4], arm_ctx->r[5], arm_ctx->r[6],
715 arm_ctx->r[7], arm_ctx->r[8], arm_ctx->r[9], arm_ctx->r[10],
716 arm_ctx->r[11], arm_ctx->r[12], arm_ctx->sp, arm_ctx->lr,
717 arm_ctx->pc, arm_ctx->cpsr);
726 update_arm_exception_state(arm_ctx, exception_type);