root/arch/mips/include/asm/regdef.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


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

/* [<][>][^][v][top][bottom][index][help] */