source: svn/trunk/newcon3bcm2_21bu/toolchain/mips-linux-uclibc/include/asm/regdef.h

Last change on this file was 2, checked in by jglee, 11 years ago

first commit

  • Property svn:executable set to *
File size: 2.7 KB
Line 
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 */
Note: See TracBrowser for help on using the repository browser.