Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 /*
0003  * Various register offset definitions for debuggers, core file
0004  * examiners and whatnot.
0005  *
0006  * This file is subject to the terms and conditions of the GNU General Public
0007  * License.  See the file "COPYING" in the main directory of this archive
0008  * for more details.
0009  *
0010  * Copyright (C) 1995, 1999 Ralf Baechle
0011  * Copyright (C) 1995, 1999 Silicon Graphics
0012  */
0013 #ifndef __UAPI_ASM_MIPS_REG_H
0014 #define __UAPI_ASM_MIPS_REG_H
0015 
0016 #define MIPS32_EF_R0        6
0017 #define MIPS32_EF_R1        7
0018 #define MIPS32_EF_R2        8
0019 #define MIPS32_EF_R3        9
0020 #define MIPS32_EF_R4        10
0021 #define MIPS32_EF_R5        11
0022 #define MIPS32_EF_R6        12
0023 #define MIPS32_EF_R7        13
0024 #define MIPS32_EF_R8        14
0025 #define MIPS32_EF_R9        15
0026 #define MIPS32_EF_R10       16
0027 #define MIPS32_EF_R11       17
0028 #define MIPS32_EF_R12       18
0029 #define MIPS32_EF_R13       19
0030 #define MIPS32_EF_R14       20
0031 #define MIPS32_EF_R15       21
0032 #define MIPS32_EF_R16       22
0033 #define MIPS32_EF_R17       23
0034 #define MIPS32_EF_R18       24
0035 #define MIPS32_EF_R19       25
0036 #define MIPS32_EF_R20       26
0037 #define MIPS32_EF_R21       27
0038 #define MIPS32_EF_R22       28
0039 #define MIPS32_EF_R23       29
0040 #define MIPS32_EF_R24       30
0041 #define MIPS32_EF_R25       31
0042 
0043 /*
0044  * k0/k1 unsaved
0045  */
0046 #define MIPS32_EF_R26       32
0047 #define MIPS32_EF_R27       33
0048 
0049 #define MIPS32_EF_R28       34
0050 #define MIPS32_EF_R29       35
0051 #define MIPS32_EF_R30       36
0052 #define MIPS32_EF_R31       37
0053 
0054 /*
0055  * Saved special registers
0056  */
0057 #define MIPS32_EF_LO        38
0058 #define MIPS32_EF_HI        39
0059 
0060 #define MIPS32_EF_CP0_EPC   40
0061 #define MIPS32_EF_CP0_BADVADDR  41
0062 #define MIPS32_EF_CP0_STATUS    42
0063 #define MIPS32_EF_CP0_CAUSE 43
0064 #define MIPS32_EF_UNUSED0   44
0065 
0066 #define MIPS32_EF_SIZE      180
0067 
0068 #define MIPS64_EF_R0        0
0069 #define MIPS64_EF_R1        1
0070 #define MIPS64_EF_R2        2
0071 #define MIPS64_EF_R3        3
0072 #define MIPS64_EF_R4        4
0073 #define MIPS64_EF_R5        5
0074 #define MIPS64_EF_R6        6
0075 #define MIPS64_EF_R7        7
0076 #define MIPS64_EF_R8        8
0077 #define MIPS64_EF_R9        9
0078 #define MIPS64_EF_R10       10
0079 #define MIPS64_EF_R11       11
0080 #define MIPS64_EF_R12       12
0081 #define MIPS64_EF_R13       13
0082 #define MIPS64_EF_R14       14
0083 #define MIPS64_EF_R15       15
0084 #define MIPS64_EF_R16       16
0085 #define MIPS64_EF_R17       17
0086 #define MIPS64_EF_R18       18
0087 #define MIPS64_EF_R19       19
0088 #define MIPS64_EF_R20       20
0089 #define MIPS64_EF_R21       21
0090 #define MIPS64_EF_R22       22
0091 #define MIPS64_EF_R23       23
0092 #define MIPS64_EF_R24       24
0093 #define MIPS64_EF_R25       25
0094 
0095 /*
0096  * k0/k1 unsaved
0097  */
0098 #define MIPS64_EF_R26       26
0099 #define MIPS64_EF_R27       27
0100 
0101 
0102 #define MIPS64_EF_R28       28
0103 #define MIPS64_EF_R29       29
0104 #define MIPS64_EF_R30       30
0105 #define MIPS64_EF_R31       31
0106 
0107 /*
0108  * Saved special registers
0109  */
0110 #define MIPS64_EF_LO        32
0111 #define MIPS64_EF_HI        33
0112 
0113 #define MIPS64_EF_CP0_EPC   34
0114 #define MIPS64_EF_CP0_BADVADDR  35
0115 #define MIPS64_EF_CP0_STATUS    36
0116 #define MIPS64_EF_CP0_CAUSE 37
0117 
0118 #define MIPS64_EF_SIZE      304 /* size in bytes */
0119 
0120 #if _MIPS_SIM == _MIPS_SIM_ABI32
0121 
0122 #define EF_R0           MIPS32_EF_R0
0123 #define EF_R1           MIPS32_EF_R1
0124 #define EF_R2           MIPS32_EF_R2
0125 #define EF_R3           MIPS32_EF_R3
0126 #define EF_R4           MIPS32_EF_R4
0127 #define EF_R5           MIPS32_EF_R5
0128 #define EF_R6           MIPS32_EF_R6
0129 #define EF_R7           MIPS32_EF_R7
0130 #define EF_R8           MIPS32_EF_R8
0131 #define EF_R9           MIPS32_EF_R9
0132 #define EF_R10          MIPS32_EF_R10
0133 #define EF_R11          MIPS32_EF_R11
0134 #define EF_R12          MIPS32_EF_R12
0135 #define EF_R13          MIPS32_EF_R13
0136 #define EF_R14          MIPS32_EF_R14
0137 #define EF_R15          MIPS32_EF_R15
0138 #define EF_R16          MIPS32_EF_R16
0139 #define EF_R17          MIPS32_EF_R17
0140 #define EF_R18          MIPS32_EF_R18
0141 #define EF_R19          MIPS32_EF_R19
0142 #define EF_R20          MIPS32_EF_R20
0143 #define EF_R21          MIPS32_EF_R21
0144 #define EF_R22          MIPS32_EF_R22
0145 #define EF_R23          MIPS32_EF_R23
0146 #define EF_R24          MIPS32_EF_R24
0147 #define EF_R25          MIPS32_EF_R25
0148 #define EF_R26          MIPS32_EF_R26
0149 #define EF_R27          MIPS32_EF_R27
0150 #define EF_R28          MIPS32_EF_R28
0151 #define EF_R29          MIPS32_EF_R29
0152 #define EF_R30          MIPS32_EF_R30
0153 #define EF_R31          MIPS32_EF_R31
0154 #define EF_LO           MIPS32_EF_LO
0155 #define EF_HI           MIPS32_EF_HI
0156 #define EF_CP0_EPC      MIPS32_EF_CP0_EPC
0157 #define EF_CP0_BADVADDR     MIPS32_EF_CP0_BADVADDR
0158 #define EF_CP0_STATUS       MIPS32_EF_CP0_STATUS
0159 #define EF_CP0_CAUSE        MIPS32_EF_CP0_CAUSE
0160 #define EF_UNUSED0      MIPS32_EF_UNUSED0
0161 #define EF_SIZE         MIPS32_EF_SIZE
0162 
0163 #elif _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
0164 
0165 #define EF_R0           MIPS64_EF_R0
0166 #define EF_R1           MIPS64_EF_R1
0167 #define EF_R2           MIPS64_EF_R2
0168 #define EF_R3           MIPS64_EF_R3
0169 #define EF_R4           MIPS64_EF_R4
0170 #define EF_R5           MIPS64_EF_R5
0171 #define EF_R6           MIPS64_EF_R6
0172 #define EF_R7           MIPS64_EF_R7
0173 #define EF_R8           MIPS64_EF_R8
0174 #define EF_R9           MIPS64_EF_R9
0175 #define EF_R10          MIPS64_EF_R10
0176 #define EF_R11          MIPS64_EF_R11
0177 #define EF_R12          MIPS64_EF_R12
0178 #define EF_R13          MIPS64_EF_R13
0179 #define EF_R14          MIPS64_EF_R14
0180 #define EF_R15          MIPS64_EF_R15
0181 #define EF_R16          MIPS64_EF_R16
0182 #define EF_R17          MIPS64_EF_R17
0183 #define EF_R18          MIPS64_EF_R18
0184 #define EF_R19          MIPS64_EF_R19
0185 #define EF_R20          MIPS64_EF_R20
0186 #define EF_R21          MIPS64_EF_R21
0187 #define EF_R22          MIPS64_EF_R22
0188 #define EF_R23          MIPS64_EF_R23
0189 #define EF_R24          MIPS64_EF_R24
0190 #define EF_R25          MIPS64_EF_R25
0191 #define EF_R26          MIPS64_EF_R26
0192 #define EF_R27          MIPS64_EF_R27
0193 #define EF_R28          MIPS64_EF_R28
0194 #define EF_R29          MIPS64_EF_R29
0195 #define EF_R30          MIPS64_EF_R30
0196 #define EF_R31          MIPS64_EF_R31
0197 #define EF_LO           MIPS64_EF_LO
0198 #define EF_HI           MIPS64_EF_HI
0199 #define EF_CP0_EPC      MIPS64_EF_CP0_EPC
0200 #define EF_CP0_BADVADDR     MIPS64_EF_CP0_BADVADDR
0201 #define EF_CP0_STATUS       MIPS64_EF_CP0_STATUS
0202 #define EF_CP0_CAUSE        MIPS64_EF_CP0_CAUSE
0203 #define EF_SIZE         MIPS64_EF_SIZE
0204 
0205 #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
0206 
0207 #endif /* __UAPI_ASM_MIPS_REG_H */