|  | /* | 
|  | * This file is subject to the terms and conditions of the GNU General Public | 
|  | * License.  See the file "COPYING" in the main directory of this archive | 
|  | * for more details. | 
|  | * | 
|  | * Copyright (C) 1985 MIPS Computer Systems, Inc. | 
|  | * Copyright (C) 1994, 95, 99, 2003 by Ralf Baechle | 
|  | * Copyright (C) 1990 - 1992, 1999 Silicon Graphics, Inc. | 
|  | */ | 
|  | #ifndef _ASM_REGDEF_H | 
|  | #define _ASM_REGDEF_H | 
|  |  | 
|  | #include <asm/sgidefs.h> | 
|  |  | 
|  | #if _MIPS_SIM == _MIPS_SIM_ABI32 | 
|  |  | 
|  | /* | 
|  | * Symbolic register names for 32 bit ABI | 
|  | */ | 
|  | #define zero    $0      /* wired zero */ | 
|  | #define AT      $1      /* assembler temp  - uppercase because of ".set at" */ | 
|  | #define v0      $2      /* return value */ | 
|  | #define v1      $3 | 
|  | #define a0      $4      /* argument registers */ | 
|  | #define a1      $5 | 
|  | #define a2      $6 | 
|  | #define a3      $7 | 
|  | #define t0      $8      /* caller saved */ | 
|  | #define t1      $9 | 
|  | #define t2      $10 | 
|  | #define t3      $11 | 
|  | #define t4      $12 | 
|  | #define t5      $13 | 
|  | #define t6      $14 | 
|  | #define t7      $15 | 
|  | #define s0      $16     /* callee saved */ | 
|  | #define s1      $17 | 
|  | #define s2      $18 | 
|  | #define s3      $19 | 
|  | #define s4      $20 | 
|  | #define s5      $21 | 
|  | #define s6      $22 | 
|  | #define s7      $23 | 
|  | #define t8      $24     /* caller saved */ | 
|  | #define t9      $25 | 
|  | #define jp      $25     /* PIC jump register */ | 
|  | #define k0      $26     /* kernel scratch */ | 
|  | #define k1      $27 | 
|  | #define gp      $28     /* global pointer */ | 
|  | #define sp      $29     /* stack pointer */ | 
|  | #define fp      $30     /* frame pointer */ | 
|  | #define s8	$30	/* same like fp! */ | 
|  | #define ra      $31     /* return address */ | 
|  |  | 
|  | #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ | 
|  |  | 
|  | #if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 | 
|  |  | 
|  | #define zero	$0	/* wired zero */ | 
|  | #define AT	$at	/* assembler temp - uppercase because of ".set at" */ | 
|  | #define v0	$2	/* return value - caller saved */ | 
|  | #define v1	$3 | 
|  | #define a0	$4	/* argument registers */ | 
|  | #define a1	$5 | 
|  | #define a2	$6 | 
|  | #define a3	$7 | 
|  | #define a4	$8	/* arg reg 64 bit; caller saved in 32 bit */ | 
|  | #define ta0	$8 | 
|  | #define a5	$9 | 
|  | #define ta1	$9 | 
|  | #define a6	$10 | 
|  | #define ta2	$10 | 
|  | #define a7	$11 | 
|  | #define ta3	$11 | 
|  | #define t0	$12	/* caller saved */ | 
|  | #define t1	$13 | 
|  | #define t2	$14 | 
|  | #define t3	$15 | 
|  | #define s0	$16	/* callee saved */ | 
|  | #define s1	$17 | 
|  | #define s2	$18 | 
|  | #define s3	$19 | 
|  | #define s4	$20 | 
|  | #define s5	$21 | 
|  | #define s6	$22 | 
|  | #define s7	$23 | 
|  | #define t8	$24	/* caller saved */ | 
|  | #define t9	$25	/* callee address for PIC/temp */ | 
|  | #define jp	$25	/* PIC jump register */ | 
|  | #define k0	$26	/* kernel temporary */ | 
|  | #define k1	$27 | 
|  | #define gp	$28	/* global pointer - caller saved for PIC */ | 
|  | #define sp	$29	/* stack pointer */ | 
|  | #define fp	$30	/* frame pointer */ | 
|  | #define s8	$30	/* callee saved */ | 
|  | #define ra	$31	/* return address */ | 
|  |  | 
|  | #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */ | 
|  |  | 
|  | #endif /* _ASM_REGDEF_H */ |