regs.h
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:3k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* regs.h - CPU registers */
  2. /* Copyright 1984-2000 Wind River Systems, Inc. */
  3. /*
  4. modification history
  5. --------------------
  6. 03d,22oct01,dee  Merge from T2.1.0 ColdFire
  7. 03c,01mar00,frf  Add SH4 support for T2.
  8. 03b,23apr97,hk   added SH support.
  9. 03b,15aug97,cym  added SIMNT support.
  10. 03b,28nov96,cdp  added ARM support.
  11. 03a,26may94,yao  added PPC support.
  12. 02i,12jul95,ism  added simsolaris support
  13. 02h,19mar95,dvs  removed #ifdef TRON - tron no longer supported.
  14. 02g,04feb94,cd   added extra field to REG_INDEX for MIPS (probably safe
  15.  for all architectures really)
  16. 02f,09jun93,hdn  added support for I80X86
  17. 02e,02dec93,pme  added Am29K support.
  18. 02d,11aug93,gae  vxsim hppa.
  19. 02c,20jun93,gae  vxsim.
  20. 02b,22sep92,rrr  added support for c++
  21. 02a,04jul92,jcf  cleaned up.
  22. 01k,26may92,rrr  the tree shuffle
  23.   -changed includes to have absolute path from h/
  24. 01j,20feb92,yao  added REG_INDEX.
  25. 01i,09jan92,jwt  converted CPU==SPARC to CPU_FAMILY==SPARC.
  26. 01h,04oct91,rrr  passed through the ansification filter
  27.   -fixed #else and #endif
  28.   -changed copyright notice
  29. 01g,02aug91,ajm  added MIPS support
  30. 01f,19jul91,gae  renamed architecture specific include file to be xx<arch>.h.
  31. 01e,29apr91,hdn  added defines and macros for TRON architecture.
  32. 01d,25oct90,shl  fixed CPU_FAMILY logic so 68k and sparc won't clash when
  33.  compiling for sparc.
  34. 01c,05oct90,shl  added copyright notice.
  35.                  made #endif ANSI style.
  36. 01b,28sep90,del  added include i960/regs.h for I960 CPU_FAMILY.
  37. 01a,07aug89,gae  written.
  38. */
  39. #ifndef __INCregsh
  40. #define __INCregsh
  41. #ifdef __cplusplus
  42. extern "C" {
  43. #endif
  44. #if  CPU_FAMILY==I960
  45. #include "arch/i960/regsI960.h"
  46. #endif /* CPU_FAMILY==I960 */
  47. #if  CPU_FAMILY==MC680X0
  48. #include "arch/mc68k/regsMc68k.h"
  49. #endif /* CPU_FAMILY==MC680X0 */
  50. #if  CPU_FAMILY==COLDFIRE
  51. #include "arch/coldfire/regsColdfire.h"
  52. #endif /* CPU_FAMILY==COLDFIRE */
  53. #if     CPU_FAMILY==MIPS
  54. #include "arch/mips/regsMips.h"
  55. #endif /* CPU_FAMILY==MIPS */
  56. #if     CPU_FAMILY==PPC
  57. #include "arch/ppc/regsPpc.h"
  58. #endif  /* CPU_FAMILY==PPC */
  59. #if CPU_FAMILY==SPARC
  60. #include "arch/sparc/regsSparc.h"
  61. #endif /* CPU_FAMILY==SPARC */
  62. #if CPU_FAMILY==SIMSPARCSUNOS
  63. #include "arch/simsparc/regsSimsparc.h"
  64. #endif /* CPU_FAMILY==SIMSPARCSUNOS */
  65. #if CPU_FAMILY==SIMSPARCSOLARIS
  66. #include "arch/simsolaris/regsSimsolaris.h"
  67. #endif /* CPU_FAMILY==SIMSPARCSOLARIS */
  68. #if CPU_FAMILY==SIMHPPA
  69. #include "arch/simhppa/regsSimhppa.h"
  70. #endif /* CPU_FAMILY==SIMHPPA */
  71. #if CPU_FAMILY==SIMNT
  72. #include "arch/simnt/regsSimnt.h"
  73. #endif /* CPU_FAMILY==SIMNT */
  74. #if     CPU_FAMILY==I80X86
  75. #include "arch/i86/regsI86.h"
  76. #endif /* CPU_FAMILY==I80X86 */
  77. #if     CPU_FAMILY==AM29XXX
  78. #include "arch/am29k/regsAm29k.h"
  79. #endif /* CPU_FAMILY==AM29XXX */
  80. #if CPU_FAMILY==SH
  81. #include "arch/sh/regsSh.h"
  82. #endif /* CPU_FAMILY==SH */
  83. #if     CPU_FAMILY==ARM
  84. #include "arch/arm/regsArm.h"
  85. #endif  /* CPU_FAMILY==ARM */
  86. #ifndef _ASMLANGUAGE
  87. typedef struct regindex
  88.     {
  89.     char *regName; /* pointer to register name */
  90.     int regOff; /* offset to entry in REG_SET */
  91. #if CPU_FAMILY==MIPS
  92.     int regWidth; /* register width */
  93. #endif
  94. #if (CPU_FAMILY==COLDFIRE)
  95.     int regWidth; /* register width */
  96.     int regStandard; /* register is a "standard" register */
  97. #endif
  98.     } REG_INDEX;
  99. #endif /* _ASMLANGUAGE */
  100. #ifdef __cplusplus
  101. }
  102. #endif
  103. #endif /* __INCregsh */