Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 313 → Rev 317

/SPARTAN/trunk/arch/mips/include/exception.h
29,6 → 29,10
#ifndef __EXCEPTION_H__
#define __EXCEPTION_H__
 
#ifndef __mips_TYPES_H_
# include <arch/types.h>
#endif
 
#define EXC_Int 0
#define EXC_Mod 1
#define EXC_TLBL 2
48,6 → 52,44
#define EXC_WATCH 23
#define EXC_VCED 31
 
extern void exception(void);
struct exception_regdump {
__u32 at;
__u32 v0;
__u32 v1;
__u32 a0;
__u32 a1;
__u32 a2;
__u32 a3;
__u32 t0;
__u32 t1;
__u32 t2;
__u32 t3;
__u32 t4;
__u32 t5;
__u32 t6;
__u32 t7;
__u32 s0;
__u32 s1;
__u32 s2;
__u32 s3;
__u32 s4;
__u32 s5;
__u32 s6;
__u32 s7;
__u32 t8;
__u32 t9;
__u32 gp;
__u32 sp;
__u32 s8;
__u32 ra;
__u32 lo;
__u32 hi;
 
__u32 status; /* cp0_status */
__u32 epc; /* cp0_epc */
};
 
extern void exception(struct exception_regdump *pstate);
 
#endif
/SPARTAN/trunk/arch/mips/include/thread.h
29,6 → 29,6
#ifndef __mips_THREAD_H__
#define __mips_THREAD_H__
 
#define ARCH_THREAD_DATA __u32 saved_epc;
#define ARCH_THREAD_DATA
 
#endif
/SPARTAN/trunk/arch/mips/include/mm/tlb.h
29,6 → 29,8
#ifndef __mips_TLB_H__
#define __mips_TLB_H__
 
#include <arch/exception.h>
 
#define PAGE_UNCACHED 2
#define PAGE_CACHEABLE_EXC_WRITE 5
 
63,7 → 65,7
 
typedef struct entry_lo pte_t;
 
extern void tlb_refill(void);
extern void tlb_invalid(void);
extern void tlb_invalid(struct exception_regdump *pstate);
extern void tlb_refill(struct exception_regdump *pstate);
 
#endif
/SPARTAN/trunk/arch/mips/include/context.h
31,45 → 31,6
 
#define STACK_ITEM_SIZE 4
 
/* These are offsets into the register dump saved
* on exception entry
*/
#define EOFFSET_AT 0
#define EOFFSET_V0 4
#define EOFFSET_V1 8
#define EOFFSET_A0 12
#define EOFFSET_A1 16
#define EOFFSET_A2 20
#define EOFFSET_A3 24
#define EOFFSET_A4 28
#define EOFFSET_T1 32
#define EOFFSET_T2 36
#define EOFFSET_T3 40
#define EOFFSET_T4 44
#define EOFFSET_T5 48
#define EOFFSET_T6 52
#define EOFFSET_T7 56
#define EOFFSET_T8 60
#define EOFFSET_T9 64
#define EOFFSET_S0 68
#define EOFFSET_S1 72
#define EOFFSET_S2 76
#define EOFFSET_S3 80
#define EOFFSET_S4 84
#define EOFFSET_S5 88
#define EOFFSET_S6 92
#define EOFFSET_S7 96
#define EOFFSET_S8 100
#define EOFFSET_GP 104
#define EOFFSET_RA 108
#define EOFFSET_SP 112
 
#define EOFFSET_LO 116
#define EOFFSET_HI 120
#define EOFFSET_STATUS 124
 
#define REGISTER_SPACE 128
 
/*
* Put one item onto the stack to support get_stack_base().
*/