xref: /linux/arch/mips/include/asm/fpregdef.h (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
1 /*
2  * Definitions for the FPU register names
3  *
4  * This file is subject to the terms and conditions of the GNU General Public
5  * License.  See the file "COPYING" in the main directory of this archive
6  * for more details.
7  *
8  * Copyright (C) 1995, 1999 Ralf Baechle
9  * Copyright (C) 1985 MIPS Computer Systems, Inc.
10  * Copyright (C) 1990 - 1992, 1999 Silicon Graphics, Inc.
11  */
12 #ifndef _ASM_FPREGDEF_H
13 #define _ASM_FPREGDEF_H
14 
15 #include <asm/sgidefs.h>
16 
17 #if _MIPS_SIM == _MIPS_SIM_ABI32
18 
19 /*
20  * These definitions only cover the R3000-ish 16/32 register model.
21  * But we're trying to be R3000 friendly anyway ...
22  */
23 #define fv0	$f0	 /* return value */
24 #define fv0f	$f1
25 #define fv1	$f2
26 #define fv1f	$f3
27 #define fa0	$f12	 /* argument registers */
28 #define fa0f	$f13
29 #define fa1	$f14
30 #define fa1f	$f15
31 #define ft0	$f4	 /* caller saved */
32 #define ft0f	$f5
33 #define ft1	$f6
34 #define ft1f	$f7
35 #define ft2	$f8
36 #define ft2f	$f9
37 #define ft3	$f10
38 #define ft3f	$f11
39 #define ft4	$f16
40 #define ft4f	$f17
41 #define ft5	$f18
42 #define ft5f	$f19
43 #define fs0	$f20	 /* callee saved */
44 #define fs0f	$f21
45 #define fs1	$f22
46 #define fs1f	$f23
47 #define fs2	$f24
48 #define fs2f	$f25
49 #define fs3	$f26
50 #define fs3f	$f27
51 #define fs4	$f28
52 #define fs4f	$f29
53 #define fs5	$f30
54 #define fs5f	$f31
55 
56 #define fcr31	$31	 /* FPU status register */
57 
58 #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
59 
60 #if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
61 
62 #define fv0	$f0	/* return value */
63 #define fv1	$f2
64 #define fa0	$f12	/* argument registers */
65 #define fa1	$f13
66 #define fa2	$f14
67 #define fa3	$f15
68 #define fa4	$f16
69 #define fa5	$f17
70 #define fa6	$f18
71 #define fa7	$f19
72 #define ft0	$f4	/* caller saved */
73 #define ft1	$f5
74 #define ft2	$f6
75 #define ft3	$f7
76 #define ft4	$f8
77 #define ft5	$f9
78 #define ft6	$f10
79 #define ft7	$f11
80 #define ft8	$f20
81 #define ft9	$f21
82 #define ft10	$f22
83 #define ft11	$f23
84 #define ft12	$f1
85 #define ft13	$f3
86 #define fs0	$f24	/* callee saved */
87 #define fs1	$f25
88 #define fs2	$f26
89 #define fs3	$f27
90 #define fs4	$f28
91 #define fs5	$f29
92 #define fs6	$f30
93 #define fs7	$f31
94 
95 #define fcr31	$31
96 
97 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
98 
99 #endif /* _ASM_FPREGDEF_H */
100