home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-mips / regdef.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  2.7 KB  |  101 lines

  1. /*
  2.  * This file is subject to the terms and conditions of the GNU General Public
  3.  * License.  See the file "COPYING" in the main directory of this archive
  4.  * for more details.
  5.  *
  6.  * Copyright (C) 1985 MIPS Computer Systems, Inc.
  7.  * Copyright (C) 1994, 95, 99, 2003 by Ralf Baechle
  8.  * Copyright (C) 1990 - 1992, 1999 Silicon Graphics, Inc.
  9.  */
  10. #ifndef _ASM_REGDEF_H
  11. #define _ASM_REGDEF_H
  12.  
  13. #include <asm/sgidefs.h>
  14.  
  15. #if _MIPS_SIM == _MIPS_SIM_ABI32
  16.  
  17. /*
  18.  * Symbolic register names for 32 bit ABI
  19.  */
  20. #define zero    $0      /* wired zero */
  21. #define AT      $1      /* assembler temp  - uppercase because of ".set at" */
  22. #define v0      $2      /* return value */
  23. #define v1      $3
  24. #define a0      $4      /* argument registers */
  25. #define a1      $5
  26. #define a2      $6
  27. #define a3      $7
  28. #define t0      $8      /* caller saved */
  29. #define t1      $9
  30. #define t2      $10
  31. #define t3      $11
  32. #define t4      $12
  33. #define t5      $13
  34. #define t6      $14
  35. #define t7      $15
  36. #define s0      $16     /* callee saved */
  37. #define s1      $17
  38. #define s2      $18
  39. #define s3      $19
  40. #define s4      $20
  41. #define s5      $21
  42. #define s6      $22
  43. #define s7      $23
  44. #define t8      $24     /* caller saved */
  45. #define t9      $25
  46. #define jp      $25     /* PIC jump register */
  47. #define k0      $26     /* kernel scratch */
  48. #define k1      $27
  49. #define gp      $28     /* global pointer */
  50. #define sp      $29     /* stack pointer */
  51. #define fp      $30     /* frame pointer */
  52. #define s8    $30    /* same like fp! */
  53. #define ra      $31     /* return address */
  54.  
  55. #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
  56.  
  57. #if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
  58.  
  59. #define zero    $0    /* wired zero */
  60. #define AT    $at    /* assembler temp - uppercase because of ".set at" */
  61. #define v0    $2    /* return value - caller saved */
  62. #define v1    $3
  63. #define a0    $4    /* argument registers */
  64. #define a1    $5
  65. #define a2    $6
  66. #define a3    $7
  67. #define a4    $8    /* arg reg 64 bit; caller saved in 32 bit */
  68. #define ta0    $8
  69. #define a5    $9
  70. #define ta1    $9
  71. #define a6    $10
  72. #define ta2    $10
  73. #define a7    $11
  74. #define ta3    $11
  75. #define t0    $12    /* caller saved */
  76. #define t1    $13
  77. #define t2    $14
  78. #define t3    $15
  79. #define s0    $16    /* callee saved */
  80. #define s1    $17
  81. #define s2    $18
  82. #define s3    $19
  83. #define s4    $20
  84. #define s5    $21
  85. #define s6    $22
  86. #define s7    $23
  87. #define t8    $24    /* caller saved */
  88. #define t9    $25    /* callee address for PIC/temp */
  89. #define jp    $25    /* PIC jump register */
  90. #define k0    $26    /* kernel temporary */
  91. #define k1    $27
  92. #define gp    $28    /* global pointer - caller saved for PIC */
  93. #define sp    $29    /* stack pointer */
  94. #define fp    $30    /* frame pointer */
  95. #define s8    $30    /* callee saved */
  96. #define ra    $31    /* return address */
  97.  
  98. #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
  99.  
  100. #endif /* _ASM_REGDEF_H */
  101.