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

VxWorks

开发平台:

C/C++

  1. /* vxCpu.h - VxWorks CPU definitions header */
  2. /* Copyright 1984-2001 Wind River Systems, Inc. */
  3. /*
  4.  * vxCpu.h is now generated -- DO NOT EDIT
  5.  *
  6.  * To change the boilerplate, edit vxCpu.in
  7.  *
  8.  * To add CPU types or otherwise change the substance,
  9.  * edit $WIND_BASE/host/src/target/architecturedb
  10.  */
  11. /*
  12. modification history
  13. --------------------
  14. 02i,10aug01,pch  Rename to vxCpu.in, revise for use in generating vxCpu.h
  15.                  from host/src/target/architecturedb
  16. 02m,23jul01,scm  change XScale name to conform to coding standards...
  17. 02h,07may01,kab  Fix PPC enum clashes
  18. 02l,04may01,scm  add STRONGARM support...
  19. 02g,25oct00,s_m  renamed PPC405 cpu types
  20. 02f,14jun00,alp  Added PPC405 support
  21. 02k,11dec00,scm  replace references to ARMSA2 with XScale
  22. 02j,31aug00,scm  add sa2 support under arm
  23. 02i,20jan99,cdp  marked old ARM CPU numbers 'obsoleted'.
  24. 02h,13nov98,cdp  added ARMARCH3, ARMARCH4, ARMARCH4_T.
  25. 02n,28mar01,mem  Update SH cpu numbers.
  26. 02m,14dec00,pes  Remove more obsolete MIPS CPU designations.
  27. 02m,01dec00,???  Update ARM block
  28. 02l,06oct00,ish  fix MCF5400
  29. 02k,07jul00,dh   rationalised mcf family to 2 cpus.
  30. 02j,23nov99,yvp  adding CPU_FAMILY FRV and CPU type FR500 for Fujitsu FR-V
  31.                  (a.k.a Venus) family processors
  32. 02i,27mar00,ish  Fixed CPU identifiers in ColdFire support
  33. 02h,15mar00,dra  Added ColdFire support.
  34. 02g,12oct99,yvp  Merge from .../tor2_0_0.coretools-baseline branch to make
  35.                  Tor2 code work with T3 main/LATEST compiler
  36. 02f,09sep99,myz  added CW4000_16 support
  37. 02f,22jul99,jld  Regularize CPU=MCOREx tags.
  38. 02e,17dec97,ur   added MCORE support.
  39. 02f,05nov97,mem  added SPARCV9 support.
  40. 02n,18oct99,dra  added CW4000, CW4011, VR4100, VR5000 and VR5400 support.
  41. 02m,13jul99,bc   Added SH7718 <-> sh3e
  42. 02l,02jul98,st   added SH7750 support (SH4).
  43. 02k,05may98,jmc  added SH-DSP and SH3-DSP support.
  44. 02j,23apr97,hk   added SH support.
  45. 02i,17aug97,tpr  added PowerPC EC 603 support.
  46. 02h,15aug97,cym  added SIMNT support.
  47. 02g,09apr98,hdn  added support for Pentium, PentiumPro.
  48. 02f,26mar97,cdp  added Thumb (ARM7TDMI_T) support.
  49. 02e,28nov96,cdp  added ARM support.
  50. 02d,12jul96,kkk  added CW4000 & R4650 support.
  51. 02c,08feb96,tpr  added PPC505 and PPC860 support.
  52. 02b,23feb96,tpr  undefined the PPC macro defined by the PowerPC Gnu.
  53. 02a,26may94,yao  added PPC support.
  54. 01k,24jul95,ism  added SIMSOLARIS support.
  55. 01j,27dec95,myz  added I960HX stuff.
  56. 01i,20mar95,kvk  added I960JX specific stuff.
  57. 01h,31oct94,kdl  removed comment-within-comment.
  58. 01f,27sep93,cd   added R4000 support.
  59. 01g,26oct94,tmk  added new cpu type MC68LC040
  60. 01f,21jul94,tpr  added MC68060 cpu.
  61. 01f,09jun93,hdn  added support for I80X86
  62. 01g,02dec93,tpr  added definition for the AMD 29200 microcontroller
  63.     pad  added definitions for the AMD 29030 cpu
  64. 01g,11aug93,gae  vxsim hppa.
  65. 01f,22jun93,gae  vxsim: added SIMSPARCSUNOS.
  66. 01e,13nov92,dnw  added test for correct definition of CPU
  67. 01d,22sep92,rrr  added support for c++
  68. 01c,07sep92,smb  added documentation
  69. 01b,23jul92,jwt  restored SPARClite reference omitted in file creation.
  70. 01a,11jul92,smb  CPU definitions moved from vxWorks.h.
  71. */
  72. /*
  73. DESCRIPTION
  74. Depending on the value of CPU passed to the system by the compiler command
  75. line, the CPU_FAMILY is defined.  This must be the first header file
  76. included by vxWorks.h.
  77. */
  78. #ifndef __INCvxCpuh
  79. #define __INCvxCpuh
  80. #ifdef __cplusplus
  81. extern "C" {
  82. #endif
  83. /* CPU types */
  84. /* Turn off stuff that some compilers pre-define ... */
  85. #ifdef MC68000
  86. #undef MC68000
  87. #endif
  88. #ifdef I960
  89. #undef I960
  90. #endif
  91. #ifdef PPC
  92. #undef PPC
  93. #endif
  94. /* Ensure CPU_FAMILY undefined initially */
  95. #ifdef CPU_FAMILY
  96. #undef CPU_FAMILY
  97. #endif
  98. #define MC68000 1 /* CPU */
  99. #define MC68010 2 /* CPU */
  100. #define MC68020 3 /* CPU */
  101. #define MC68030 4 /* CPU */
  102. #define MC68040 5 /* CPU */
  103. #define MC68LC040 6 /* CPU */
  104. #define MC68060 7 /* CPU */
  105. #define CPU32 8 /* CPU */
  106. #define MC680X0 9 /* CPU_FAMILY */
  107. #define SPARC 10 /* CPU & CPU_FAMILY */
  108. #define SPARClite 11 /* CPU */
  109. #define I960 20 /* CPU_FAMILY */
  110. #define I960CA 21 /* CPU */
  111. #define I960KA 22 /* CPU */
  112. #define I960KB 23 /* CPU */
  113. #define I960JX 24 /* CPU */
  114. #define I960HX 25 /* CPU */
  115. #define TRON 30 /* CPU_FAMILY */
  116. #define G100 31 /* CPU */
  117. #define G200 32 /* CPU */
  118. #define MIPS 40 /* CPU_FAMILY */
  119. #define MIPS32 41 /* CPU */
  120. #define MIPS64 42 /* CPU */
  121. #define AM29XXX 50 /* CPU_FAMILY */
  122. #define AM29030 51 /* CPU */
  123. #define AM29200 52 /* CPU */
  124. #define AM29035 53 /* CPU */
  125. #define SIMSPARCSUNOS 60 /* CPU & CPU_FAMILY */
  126. #define SIMSPARCSOLARIS 61 /* CPU & CPU_FAMILY */
  127. #define SIMHPPA 70 /* CPU & CPU_FAMILY */
  128. #define I80X86 80 /* CPU_FAMILY */
  129. #define I80386 81 /* CPU */
  130. #define I80486 82 /* CPU */
  131. #define PENTIUM 83 /* CPU */
  132. #define PENTIUM2 84 /* CPU */
  133. #define PENTIUM3 85 /* CPU */
  134. #define PENTIUM4 86 /* CPU */
  135. #define PPC 90 /* CPU_FAMILY */
  136. #define PPC601 91 /* CPU */
  137. #define PPC602 92 /* CPU */
  138. #define PPC603 93 /* CPU */
  139. #define PPC604 94 /* CPU */
  140. #define PPC403 95 /* CPU */
  141. #define PPC505 96 /* CPU */
  142. #define PPC860 97 /* CPU */
  143. #define PPCEC603 98 /* CPU */
  144. #define PPC555 99 /* CPU */
  145. #define SIMNT 100 /* CPU & CPU_FAMILY */
  146. #define SPARCV9 110 /* CPU_FAMILY */
  147. #define ULTRASPARC 111 /* CPU */
  148. #define ARM 120 /* CPU_FAMILY */
  149. #define ARM710A 121 /* CPU */
  150. #define ARM7TDMI 122 /* CPU */
  151. #define ARM810 123 /* CPU */
  152. #define ARMSA110 124 /* CPU */
  153. #define ARM7TDMI_T 125 /* CPU */
  154. #define ARMARCH3 126 /* CPU */
  155. #define ARMARCH4 127 /* CPU */
  156. #define ARMARCH4_T 128 /* CPU */
  157. #define STRONGARM 129 /* CPU */
  158. #define SH 130 /* CPU_FAMILY */
  159. #define SH7000 131 /* CPU */
  160. #define SH7600 132 /* CPU */
  161. #define SH7040 133 /* CPU */
  162. #define SH7700 134 /* CPU */
  163. #define SH7410 135 /* CPU */
  164. #define SH7729 136 /* CPU */
  165. #define SH7750 137 /* CPU */
  166. #define MCORE 150 /* CPU_FAMILY */
  167. #define MCORE10 151 /* CPU */
  168. #define MCORE15 152 /* CPU */
  169. #define MCORE200 153 /* CPU */
  170. #define MCORE300 154 /* CPU */
  171. #define COLDFIRE 160 /* CPU_FAMILY */
  172. #define MCF5200 161 /* CPU */
  173. #define MCF5400 162 /* CPU */
  174. #define FRV 170 /* CPU_FAMILY */
  175. #define FR500 171 /* CPU */
  176. #define MAP1000 180 /* CPU & CPU_FAMILY */
  177. #define MAP1000A 181 /* CPU */
  178. #define MAPCA 182 /* CPU */
  179. #define XSCALE 1120 /* CPU */
  180. #define ARMARCH5 1121 /* CPU */
  181. #define ARMARCH5_T 1122 /* CPU */
  182. #define PPC509 2000 /* CPU */
  183. #define PPC405 2001 /* CPU */
  184. #define PPC405F 2002 /* CPU */
  185. #define PPC440 2003 /* CPU */
  186. #if (CPU==MC68000 || 
  187.  CPU==MC68010 || 
  188.  CPU==MC68020 || 
  189.  CPU==MC68030 || 
  190.  CPU==MC68040 || 
  191.  CPU==MC68LC040 || 
  192.  CPU==MC68060 || 
  193.  CPU==CPU32)
  194. #define CPU_FAMILY MC680X0
  195. #endif /* CPU_FAMILY==MC680X0 */
  196. #if (CPU==SPARC || 
  197.  CPU==SPARClite)
  198. #define CPU_FAMILY SPARC
  199. #endif /* CPU_FAMILY==SPARC */
  200. #if (CPU==I960CA || 
  201.  CPU==I960KA || 
  202.  CPU==I960KB || 
  203.  CPU==I960JX || 
  204.  CPU==I960HX)
  205. #define CPU_FAMILY I960
  206. #endif /* CPU_FAMILY==I960 */
  207. #if (CPU==G100 || 
  208.  CPU==G200)
  209. #define CPU_FAMILY TRON
  210. #endif /* CPU_FAMILY==TRON */
  211. #if (CPU==MIPS32 || 
  212.  CPU==MIPS64)
  213. #define CPU_FAMILY MIPS
  214. #endif /* CPU_FAMILY==MIPS */
  215. #if (CPU==AM29030 || 
  216.  CPU==AM29200 || 
  217.  CPU==AM29035)
  218. #define CPU_FAMILY AM29XXX
  219. #endif /* CPU_FAMILY==AM29XXX */
  220. #if (CPU==SIMSPARCSUNOS)
  221. #define CPU_FAMILY SIMSPARCSUNOS
  222. #endif /* CPU_FAMILY==SIMSPARCSUNOS */
  223. #if (CPU==SIMSPARCSOLARIS)
  224. #define CPU_FAMILY SIMSPARCSOLARIS
  225. #endif /* CPU_FAMILY==SIMSPARCSOLARIS */
  226. #if (CPU==SIMHPPA)
  227. #define CPU_FAMILY SIMHPPA
  228. #endif /* CPU_FAMILY==SIMHPPA */
  229. #if (CPU==I80386 || 
  230.  CPU==I80486 || 
  231.  CPU==PENTIUM || 
  232.  CPU==PENTIUM2 || 
  233.  CPU==PENTIUM3 || 
  234.  CPU==PENTIUM4)
  235. #define CPU_FAMILY I80X86
  236. #endif /* CPU_FAMILY==I80X86 */
  237. #if (CPU==PPC601 || 
  238.  CPU==PPC602 || 
  239.  CPU==PPC603 || 
  240.  CPU==PPC604 || 
  241.  CPU==PPC403 || 
  242.  CPU==PPC505 || 
  243.  CPU==PPC860 || 
  244.  CPU==PPCEC603 || 
  245.  CPU==PPC555 || 
  246.  CPU==PPC509 || 
  247.  CPU==PPC405 || 
  248.  CPU==PPC405F || 
  249.  CPU==PPC440)
  250. #define CPU_FAMILY PPC
  251. #endif /* CPU_FAMILY==PPC */
  252. #if (CPU==SIMNT)
  253. #define CPU_FAMILY SIMNT
  254. #endif /* CPU_FAMILY==SIMNT */
  255. #if (CPU==ULTRASPARC)
  256. #define CPU_FAMILY SPARCV9
  257. #endif /* CPU_FAMILY==SPARCV9 */
  258. #if (CPU==ARM710A || 
  259.  CPU==ARM7TDMI || 
  260.  CPU==ARM810 || 
  261.  CPU==ARMSA110 || 
  262.  CPU==ARM7TDMI_T || 
  263.  CPU==ARMARCH3 || 
  264.  CPU==ARMARCH4 || 
  265.  CPU==ARMARCH4_T || 
  266.  CPU==STRONGARM || 
  267.  CPU==XSCALE || 
  268.  CPU==ARMARCH5 || 
  269.  CPU==ARMARCH5_T)
  270. #define CPU_FAMILY ARM
  271. #endif /* CPU_FAMILY==ARM */
  272. #if (CPU==SH7000 || 
  273.  CPU==SH7600 || 
  274.  CPU==SH7040 || 
  275.  CPU==SH7700 || 
  276.  CPU==SH7410 || 
  277.  CPU==SH7729 || 
  278.  CPU==SH7750)
  279. #define CPU_FAMILY SH
  280. #endif /* CPU_FAMILY==SH */
  281. #if (CPU==MCORE10 || 
  282.  CPU==MCORE15 || 
  283.  CPU==MCORE200 || 
  284.  CPU==MCORE300)
  285. #define CPU_FAMILY MCORE
  286. #endif /* CPU_FAMILY==MCORE */
  287. #if (CPU==MCF5200 || 
  288.  CPU==MCF5400)
  289. #define CPU_FAMILY COLDFIRE
  290. #endif /* CPU_FAMILY==COLDFIRE */
  291. #if (CPU==FR500)
  292. #define CPU_FAMILY FRV
  293. #endif /* CPU_FAMILY==FRV */
  294. #if (CPU==MAP1000 || 
  295.  CPU==MAP1000A || 
  296.  CPU==MAPCA)
  297. #define CPU_FAMILY MAP
  298. #endif /* CPU_FAMILY==MAP */
  299. /*
  300.  * Check that CPU and CPU_FAMILY are now defined correctly.
  301.  * If CPU is defined to be one of the above valid values then
  302.  * the CPU_FAMILY will have been properly selected.
  303.  * This is required in order to select the right headers
  304.  * and definitions for that CPU in subsequent headers.
  305.  * If CPU or CPU_FAMILY is not defined at this point,
  306.  * we generate an error and abort the compilation.
  307.  */
  308. #if !defined(CPU) || !defined(CPU_FAMILY)
  309. #error CPU is not defined correctly
  310. #endif
  311. #ifdef __cplusplus
  312. }
  313. #endif
  314. #endif /* __INCvxCpuh */