• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef GOOGLE_BREAKPAD_COMMON_ANDROID_INCLUDE_ASM_MIPS_ASM_H
2 #define GOOGLE_BREAKPAD_COMMON_ANDROID_INCLUDE_ASM_MIPS_ASM_H
3 
4 #if defined(__has_include_next) && __has_include_next(<asm/asm.h>)
5 #include_next <asm/asm.h>
6 #else
7 
8 /****************************************************************************
9  ****************************************************************************
10  ***
11  ***   This header was automatically generated from a Linux kernel header
12  ***   of the same name, to make information necessary for userspace to
13  ***   call into the kernel available to libc.  It contains only constants,
14  ***   structures, and macros generated from the original header, and thus,
15  ***   contains no copyrightable information.
16  ***
17  ***   To edit the content of this header, modify the corresponding
18  ***   source file (e.g. under external/kernel-headers/original/) then
19  ***   run bionic/libc/kernel/tools/update_all.py
20  ***
21  ***   Any manual change here will be lost the next time this script will
22  ***   be run. You've been warned!
23  ***
24  ****************************************************************************
25  ****************************************************************************/
26 
27 #include <asm/sgidefs.h>
28 #ifndef CAT
29 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
30 #ifdef __STDC__
31 #define __CAT(str1, str2) str1##str2
32 #else
33 #define __CAT(str1, str2) str1 str2
34 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
35 #endif
36 #define CAT(str1, str2) __CAT(str1, str2)
37 #endif
38 #ifdef __PIC__
39 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
40 #define CPRESTORE(register)   .cprestore register
41 #define CPADD(register)   .cpadd register
42 #define CPLOAD(register)   .cpload register
43 #else
44 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
45 #define CPRESTORE(register)
46 #define CPADD(register)
47 #define CPLOAD(register)
48 #endif
49 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
50 #define LEAF(symbol)   .globl symbol;   .align 2;   .type symbol, @function;   .ent symbol, 0;  symbol: .frame sp, 0, ra
51 #define NESTED(symbol, framesize, rpc)   .globl symbol;   .align 2;   .type symbol, @function;   .ent symbol, 0;  symbol: .frame sp, framesize, rpc
52 #define END(function)   .end function;   .size function, .-function
53 #define EXPORT(symbol)   .globl symbol;  symbol:
54 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
55 #define FEXPORT(symbol)   .globl symbol;   .type symbol, @function;  symbol:
56 #define ABS(symbol,value)   .globl symbol;  symbol = value
57 #define PANIC(msg)   .set push;   .set reorder;   PTR_LA a0, 8f;   jal panic;  9: b 9b;   .set pop;   TEXT(msg)
58 #define PRINT(string)
59 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
60 #define TEXT(msg)   .pushsection .data;  8: .asciiz msg;   .popsection;
61 #define TTABLE(string)   .pushsection .text;   .word 1f;   .popsection   .pushsection .data;  1: .asciiz string;   .popsection
62 #define PREF(hint, addr)
63 #define PREFX(hint, addr)
64 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
65 #if _MIPS_ISA == _MIPS_ISA_MIPS1
66 #define MOVN(rd, rs, rt)   .set push;   .set reorder;   beqz rt, 9f;   move rd, rs;   .set pop;  9:
67 #define MOVZ(rd, rs, rt)   .set push;   .set reorder;   bnez rt, 9f;   move rd, rs;   .set pop;  9:
68 #endif
69 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
70 #if _MIPS_ISA == _MIPS_ISA_MIPS2 || _MIPS_ISA == _MIPS_ISA_MIPS3
71 #define MOVN(rd, rs, rt)   .set push;   .set noreorder;   bnezl rt, 9f;   move rd, rs;   .set pop;  9:
72 #define MOVZ(rd, rs, rt)   .set push;   .set noreorder;   beqzl rt, 9f;   move rd, rs;   .set pop;  9:
73 #endif
74 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
75 #if _MIPS_ISA == _MIPS_ISA_MIPS4 || _MIPS_ISA == _MIPS_ISA_MIPS5 || _MIPS_ISA == _MIPS_ISA_MIPS32 || _MIPS_ISA == _MIPS_ISA_MIPS64
76 #define MOVN(rd, rs, rt)   movn rd, rs, rt
77 #define MOVZ(rd, rs, rt)   movz rd, rs, rt
78 #endif
79 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
80 #if _MIPS_SIM == _MIPS_SIM_ABI32
81 #define ALSZ 7
82 #define ALMASK ~7
83 #endif
84 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
85 #if _MIPS_SIM == _MIPS_SIM_NABI32 || _MIPS_SIM == _MIPS_SIM_ABI64
86 #define ALSZ 15
87 #define ALMASK ~15
88 #endif
89 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
90 #ifdef __mips64
91 #define SZREG 8
92 #else
93 #define SZREG 4
94 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
95 #endif
96 #if _MIPS_SIM == _MIPS_SIM_ABI32
97 #define REG_S sw
98 #define REG_L lw
99 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
100 #define REG_SUBU subu
101 #define REG_ADDU addu
102 #endif
103 #if _MIPS_SIM == _MIPS_SIM_NABI32 || _MIPS_SIM == _MIPS_SIM_ABI64
104 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
105 #define REG_S sd
106 #define REG_L ld
107 #define REG_SUBU dsubu
108 #define REG_ADDU daddu
109 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
110 #endif
111 #if _MIPS_SZINT == 32
112 #define INT_ADD add
113 #define INT_ADDU addu
114 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
115 #define INT_ADDI addi
116 #define INT_ADDIU addiu
117 #define INT_SUB sub
118 #define INT_SUBU subu
119 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
120 #define INT_L lw
121 #define INT_S sw
122 #define INT_SLL sll
123 #define INT_SLLV sllv
124 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
125 #define INT_SRL srl
126 #define INT_SRLV srlv
127 #define INT_SRA sra
128 #define INT_SRAV srav
129 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
130 #endif
131 #if _MIPS_SZINT == 64
132 #define INT_ADD dadd
133 #define INT_ADDU daddu
134 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
135 #define INT_ADDI daddi
136 #define INT_ADDIU daddiu
137 #define INT_SUB dsub
138 #define INT_SUBU dsubu
139 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
140 #define INT_L ld
141 #define INT_S sd
142 #define INT_SLL dsll
143 #define INT_SLLV dsllv
144 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
145 #define INT_SRL dsrl
146 #define INT_SRLV dsrlv
147 #define INT_SRA dsra
148 #define INT_SRAV dsrav
149 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
150 #endif
151 #if _MIPS_SZLONG == 32
152 #define LONG_ADD add
153 #define LONG_ADDU addu
154 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
155 #define LONG_ADDI addi
156 #define LONG_ADDIU addiu
157 #define LONG_SUB sub
158 #define LONG_SUBU subu
159 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
160 #define LONG_L lw
161 #define LONG_S sw
162 #define LONG_SLL sll
163 #define LONG_SLLV sllv
164 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
165 #define LONG_SRL srl
166 #define LONG_SRLV srlv
167 #define LONG_SRA sra
168 #define LONG_SRAV srav
169 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
170 #define LONG .word
171 #define LONGSIZE 4
172 #define LONGMASK 3
173 #define LONGLOG 2
174 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
175 #endif
176 #if _MIPS_SZLONG == 64
177 #define LONG_ADD dadd
178 #define LONG_ADDU daddu
179 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
180 #define LONG_ADDI daddi
181 #define LONG_ADDIU daddiu
182 #define LONG_SUB dsub
183 #define LONG_SUBU dsubu
184 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
185 #define LONG_L ld
186 #define LONG_S sd
187 #define LONG_SLL dsll
188 #define LONG_SLLV dsllv
189 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
190 #define LONG_SRL dsrl
191 #define LONG_SRLV dsrlv
192 #define LONG_SRA dsra
193 #define LONG_SRAV dsrav
194 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
195 #define LONG .dword
196 #define LONGSIZE 8
197 #define LONGMASK 7
198 #define LONGLOG 3
199 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
200 #endif
201 #if _MIPS_SZPTR == 32
202 #define PTR_ADD add
203 #define PTR_ADDU addu
204 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
205 #define PTR_ADDI addi
206 #define PTR_ADDIU addiu
207 #define PTR_SUB sub
208 #define PTR_SUBU subu
209 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
210 #define PTR_L lw
211 #define PTR_S sw
212 #define PTR_LA la
213 #define PTR_LI li
214 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
215 #define PTR_SLL sll
216 #define PTR_SLLV sllv
217 #define PTR_SRL srl
218 #define PTR_SRLV srlv
219 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
220 #define PTR_SRA sra
221 #define PTR_SRAV srav
222 #define PTR_SCALESHIFT 2
223 #define PTR .word
224 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
225 #define PTRSIZE 4
226 #define PTRLOG 2
227 #endif
228 #if _MIPS_SZPTR == 64
229 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
230 #define PTR_ADD dadd
231 #define PTR_ADDU daddu
232 #define PTR_ADDI daddi
233 #define PTR_ADDIU daddiu
234 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
235 #define PTR_SUB dsub
236 #define PTR_SUBU dsubu
237 #define PTR_L ld
238 #define PTR_S sd
239 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
240 #define PTR_LA dla
241 #define PTR_LI dli
242 #define PTR_SLL dsll
243 #define PTR_SLLV dsllv
244 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
245 #define PTR_SRL dsrl
246 #define PTR_SRLV dsrlv
247 #define PTR_SRA dsra
248 #define PTR_SRAV dsrav
249 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
250 #define PTR_SCALESHIFT 3
251 #define PTR .dword
252 #define PTRSIZE 8
253 #define PTRLOG 3
254 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
255 #endif
256 #if _MIPS_SIM == _MIPS_SIM_ABI32
257 #define MFC0 mfc0
258 #define MTC0 mtc0
259 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
260 #endif
261 #if _MIPS_SIM == _MIPS_SIM_NABI32 || _MIPS_SIM == _MIPS_SIM_ABI64
262 #define MFC0 dmfc0
263 #define MTC0 dmtc0
264 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
265 #endif
266 #define SSNOP sll zero, zero, 1
267 #define R10KCBARRIER(addr)
268 #endif  // defined(__has_include_next) && __has_include_next(<asm/asm.h>)
269 #endif  // GOOGLE_BREAKPAD_COMMON_ANDROID_INCLUDE_ASM_MIPS_ASM_H
270 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
271