Subversion Repositories HelenOS

Rev

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

Rev 124 Rev 317
Line 27... Line 27...
27
 */
27
 */
28
 
28
 
29
#ifndef __EXCEPTION_H__
29
#ifndef __EXCEPTION_H__
30
#define __EXCEPTION_H__
30
#define __EXCEPTION_H__
31
 
31
 
-
 
32
#ifndef __mips_TYPES_H_
-
 
33
#  include <arch/types.h>
-
 
34
#endif
-
 
35
 
32
#define EXC_Int     0
36
#define EXC_Int     0
33
#define EXC_Mod     1
37
#define EXC_Mod     1
34
#define EXC_TLBL    2
38
#define EXC_TLBL    2
35
#define EXC_TLBS    3
39
#define EXC_TLBS    3
36
#define EXC_AdEL    4
40
#define EXC_AdEL    4
Line 46... Line 50...
46
#define EXC_VCEI    14
50
#define EXC_VCEI    14
47
#define EXC_FPE     15
51
#define EXC_FPE     15
48
#define EXC_WATCH   23
52
#define EXC_WATCH   23
49
#define EXC_VCED    31
53
#define EXC_VCED    31
50
 
54
 
51
extern void exception(void);
55
struct exception_regdump {
-
 
56
    __u32 at;
-
 
57
    __u32 v0;
-
 
58
    __u32 v1;
-
 
59
    __u32 a0;
-
 
60
    __u32 a1;
-
 
61
    __u32 a2;
-
 
62
    __u32 a3;
-
 
63
    __u32 t0;
-
 
64
    __u32 t1;
-
 
65
    __u32 t2;
-
 
66
    __u32 t3;
-
 
67
    __u32 t4;
-
 
68
    __u32 t5;
-
 
69
    __u32 t6;
-
 
70
    __u32 t7;
-
 
71
    __u32 s0;
-
 
72
    __u32 s1;
-
 
73
    __u32 s2;
-
 
74
    __u32 s3;
-
 
75
    __u32 s4;
-
 
76
    __u32 s5;
-
 
77
    __u32 s6;
-
 
78
    __u32 s7;
-
 
79
    __u32 t8;
-
 
80
    __u32 t9;
-
 
81
    __u32 gp;
-
 
82
    __u32 sp;
-
 
83
    __u32 s8;
-
 
84
    __u32 ra;
-
 
85
   
-
 
86
    __u32 lo;
-
 
87
    __u32 hi;
-
 
88
 
-
 
89
    __u32 status; /* cp0_status */
-
 
90
    __u32 epc; /* cp0_epc */
-
 
91
};
-
 
92
 
-
 
93
extern void exception(struct exception_regdump *pstate);
52
 
94
 
53
#endif
95
#endif