/************************************************************* * File: include/mips.h * Purpose: Machine dependent definitions for the MIPS architecture. * This file contains definitions for stuff that is common * to *all* MIPS CPUs. * Author: Phil Bunce (pjb@carmel.com) * Revision History: * 970313 Removed def for jalr for EPI tools (prob in pmon/mips.s) * 981120 Updated phy2k1 and phy2k0 to use (void *). */ #ifndef _MIPS_H_ #define _MIPS_H_ /* needs to be either big or little endian */ #if !defined(MIPSEB) && !defined(MIPSEL) #define MIPSEB #endif #if !defined(LANGUAGE_C) && !defined(LANGUAGE_ASSEMBLY) #define LANGUAGE_C #endif #include #include "lr4001.h" #include "lr33020.h" #include "lr33300.h" #include "lr33000.h" #include "lr64360.h" #include "lr64363.h" #include "lr64008.h" #include "lr4002.h" #include "lr3000.h" #include "lr4010.h" #include "lr4101.h" #include "lr4102.h" #include "l9a0084.h" #include "lr4102.h" #include "lr64364.h" #include "lr64388.h" #define K0BASE 0x80000000 #define K0SIZE 0x20000000 #define K1BASE 0xa0000000 #define K1SIZE 0x20000000 #define K2BASE 0xc0000000 #define IS_K0SEG(x) ((unsigned)(x)>=K0BASE && (unsigned)(x)=K1BASE && (unsigned)(x)> 16) #define LO_HALF(x) ((x) & 0xffff) /* FPU stuff */ #define CSR_EMASK (0x3f<<12) #define CSR_TMASK (0x1f<<7) #define CSR_SMASK (0x1f<<2) #ifdef BSO_TASKING #ifdef LANGUAGE_ASSEMBLY /* BSO has it's own symbol for setting the gp register */ #define _gp __lc_zp+0x8000 /* BSO does strange things with .comm directives */ #define comm lcomm #endif #define BSS_END __lc_bh #else #ifdef GHS #define BSS_END __ghsend_bss #else #define BSS_END end #endif #endif #endif /* _MIPS_H_ */