Subversion Repositories HelenOS-historic

Rev

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

Rev 213 Rev 227
Line 30... Line 30...
30
#include <arch/interrupt.h>
30
#include <arch/interrupt.h>
31
#include <panic.h>
31
#include <panic.h>
32
#include <arch/cp0.h>
32
#include <arch/cp0.h>
33
#include <arch/types.h>
33
#include <arch/types.h>
34
#include <arch.h>
34
#include <arch.h>
-
 
35
#include <debug.h>
35
 
36
 
36
void exception(void)
37
void exception(void)
37
{
38
{
38
    int excno;
39
    int excno;
39
    __u32 epc;
40
    __u32 epc;
40
    __u32 epc_shift = 0;
41
    __u32 epc_shift = 0;
41
    pri_t pri;
42
    pri_t pri;
42
 
43
 
-
 
44
    ASSERT(CPU != NULL);
-
 
45
 
43
    /*
46
    /*
44
     * NOTE ON OPERATION ORDERING
47
     * NOTE ON OPERATION ORDERING
45
     *
48
     *
46
     * On entry, cpu_priority_high() must be called before exception bit is cleared.
49
     * On entry, cpu_priority_high() must be called before exception bit is cleared.
47
     * On exit, exception bit must be set before cpu_priority_restore() is called.
50
     * On exit, exception bit must be set before cpu_priority_restore() is called.