Subversion Repositories HelenOS

Rev

Rev 4055 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4055 Rev 4156
Line 41... Line 41...
41
#include <cpu.h>
41
#include <cpu.h>
42
#include <arch/asm.h>
42
#include <arch/asm.h>
43
#include <mm/tlb.h>
43
#include <mm/tlb.h>
44
#include <mm/as.h>
44
#include <mm/as.h>
45
#include <arch.h>
45
#include <arch.h>
46
#include <symtab.h>
-
 
47
#include <arch/asm.h>
46
#include <arch/asm.h>
48
#include <proc/scheduler.h>
47
#include <proc/scheduler.h>
49
#include <proc/thread.h>
48
#include <proc/thread.h>
50
#include <proc/task.h>
49
#include <proc/task.h>
51
#include <synch/spinlock.h>
50
#include <synch/spinlock.h>
52
#include <arch/ddi/ddi.h>
51
#include <arch/ddi/ddi.h>
53
#include <interrupt.h>
52
#include <interrupt.h>
54
#include <ddi/irq.h>
53
#include <ddi/irq.h>
-
 
54
#include <symtab.h>
55
 
55
 
56
/*
56
/*
57
 * Interrupt and exception dispatching.
57
 * Interrupt and exception dispatching.
58
 */
58
 */
59
 
59
 
Line 62... Line 62...
62
void (* eoi_function)(void) = NULL;
62
void (* eoi_function)(void) = NULL;
63
 
63
 
64
void decode_istate(int n, istate_t *istate)
64
void decode_istate(int n, istate_t *istate)
65
{
65
{
66
    char *symbol;
66
    char *symbol;
67
/*  uint64_t *x = &istate->stack[0]; */
-
 
68
 
67
 
69
    if (!(symbol = get_symtab_entry(istate->rip)))
68
    symbol = symtab_fmt_name_lookup(istate->rip);
70
        symbol = "";
-
 
71
 
69
 
72
    printf("-----EXCEPTION(%d) OCCURED----- ( %s )\n", n, __func__);
70
    printf("-----EXCEPTION(%d) OCCURED----- ( %s )\n", n, __func__);
73
    printf("%%rip: %#llx (%s)\n", istate->rip, symbol);
71
    printf("%%rip: %#llx (%s)\n", istate->rip, symbol);
74
    printf("ERROR_WORD=%#llx\n", istate->error_word);
72
    printf("ERROR_WORD=%#llx\n", istate->error_word);
75
    printf("%%cs=%#llx, rflags=%#llx, %%cr0=%#llx\n", istate->cs,
73
    printf("%%cs=%#llx, rflags=%#llx, %%cr0=%#llx\n", istate->cs,