Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 1879 → Rev 1880

/trunk/kernel/arch/sparc64/src/trap/exception.c
39,12 → 39,22
#include <arch/asm.h>
#include <debug.h>
#include <typedefs.h>
#include <symtab.h>
#include <print.h>
 
void dump_istate(istate_t *istate)
{
printf("TSTATE=%#llx\n", istate->tstate);
printf("TPC=%#llx (%s)\n", istate->tpc, get_symtab_entry(istate->tpc));
printf("TNPC=%#llx (%s)\n", istate->tnpc, get_symtab_entry(istate->tnpc));
}
 
/** Handle instruction_access_exception. (0x8) */
void instruction_access_exception(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle instruction_access_error. (0xa) */
51,7 → 61,8
void instruction_access_error(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle illegal_instruction. (0x10) */
58,7 → 69,8
void illegal_instruction(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle privileged_opcode. (0x11) */
65,7 → 77,8
void privileged_opcode(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle division_by_zero. (0x28) */
72,7 → 85,8
void division_by_zero(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle data_access_exception. (0x30) */
79,7 → 93,8
void data_access_exception(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s from %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle data_access_error. (0x32) */
86,7 → 101,8
void data_access_error(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s from %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle mem_address_not_aligned. (0x34) */
93,7 → 109,8
void mem_address_not_aligned(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s from %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** Handle privileged_action. (0x37) */
100,7 → 117,8
void privileged_action(int n, istate_t *istate)
{
fault_if_from_uspace(istate, "%s\n", __FUNCTION__);
panic("%s at %p.\n", __FUNCTION__, istate->tpc);
dump_istate(istate);
panic("%s\n", __FUNCTION__);
}
 
/** @}