OSDN Git Service

add sh2a-fpu
[hos/hos-v4a.git] / kernel / source / arch / proc / sh / sh2a-fpu / gcc / kexc_hdr.S
1 /* ------------------------------------------------------------------------ */
2 /* Hyper Operating System V4 Advance                                        */
3 /*                                                                          */
4 /*                                  Copyright (C) 1998-2006 by Project HOS  */
5 /*                                  http://sourceforge.jp/projects/hos/     */
6 /* ------------------------------------------------------------------------ */
7
8
9                                 .global __kernel_exc_hdr
10
11
12
13                                 .text
14
15
16 /************************************************
17    高速割り込みベクタ利用時、bra で分岐可能な
18  位置にベクタ入り口を設置。ただし未使用の
19  ベクタまでリンクされてしまう。
20  ************************************************/
21
22 #ifdef _KERNEL_FAST_EXCVEC
23
24                                 .global __kernel_vector_004
25                                 .global __kernel_vector_005
26                                 .global __kernel_vector_006
27                                 .global __kernel_vector_007
28                                 .global __kernel_vector_008
29                                 .global __kernel_vector_009
30                                 .global __kernel_vector_010
31                                 .global __kernel_vector_011
32                                 .global __kernel_vector_012
33                                 .global __kernel_vector_013
34                                 .global __kernel_vector_014
35                                 .global __kernel_vector_015
36                                 .global __kernel_vector_016
37                                 .global __kernel_vector_017
38                                 .global __kernel_vector_018
39                                 .global __kernel_vector_019
40                                 .global __kernel_vector_020
41                                 .global __kernel_vector_021
42                                 .global __kernel_vector_022
43                                 .global __kernel_vector_023
44                                 .global __kernel_vector_024
45                                 .global __kernel_vector_025
46                                 .global __kernel_vector_026
47                                 .global __kernel_vector_027
48                                 .global __kernel_vector_028
49                                 .global __kernel_vector_029
50                                 .global __kernel_vector_030
51                                 .global __kernel_vector_031
52                                 .global __kernel_vector_032
53                                 .global __kernel_vector_033
54                                 .global __kernel_vector_034
55                                 .global __kernel_vector_035
56                                 .global __kernel_vector_036
57                                 .global __kernel_vector_037
58                                 .global __kernel_vector_038
59                                 .global __kernel_vector_039
60                                 .global __kernel_vector_040
61                                 .global __kernel_vector_041
62                                 .global __kernel_vector_042
63                                 .global __kernel_vector_043
64                                 .global __kernel_vector_044
65                                 .global __kernel_vector_045
66                                 .global __kernel_vector_046
67                                 .global __kernel_vector_047
68                                 .global __kernel_vector_048
69                                 .global __kernel_vector_049
70                                 .global __kernel_vector_050
71                                 .global __kernel_vector_051
72                                 .global __kernel_vector_052
73                                 .global __kernel_vector_053
74                                 .global __kernel_vector_054
75                                 .global __kernel_vector_055
76                                 .global __kernel_vector_056
77                                 .global __kernel_vector_057
78                                 .global __kernel_vector_058
79                                 .global __kernel_vector_059
80                                 .global __kernel_vector_060
81                                 .global __kernel_vector_061
82                                 .global __kernel_vector_062
83                                 .global __kernel_vector_063
84
85 __kernel_vector_004:
86                                 mov.l   r4, @-r15
87                                 bra             __kernel_exc_hdr
88                                 mov             #4, r4
89
90 __kernel_vector_005:
91                                 mov.l   r4, @-r15
92                                 bra             __kernel_exc_hdr
93                                 mov             #5, r4
94
95 __kernel_vector_006:
96                                 mov.l   r4, @-r15
97                                 bra             __kernel_exc_hdr
98                                 mov             #6, r4
99
100 __kernel_vector_007:
101                                 mov.l   r4, @-r15
102                                 bra             __kernel_exc_hdr
103                                 mov             #7, r4
104
105 __kernel_vector_008:
106                                 mov.l   r4, @-r15
107                                 bra             __kernel_exc_hdr
108                                 mov             #8, r4
109
110 __kernel_vector_009:
111                                 mov.l   r4, @-r15
112                                 bra             __kernel_exc_hdr
113                                 mov             #9, r4
114
115 __kernel_vector_010:
116                                 mov.l   r4, @-r15
117                                 bra             __kernel_exc_hdr
118                                 mov             #10, r4
119
120 __kernel_vector_011:
121                                 mov.l   r4, @-r15
122                                 bra             __kernel_exc_hdr
123                                 mov             #11, r4
124
125 __kernel_vector_012:
126                                 mov.l   r4, @-r15
127                                 bra             __kernel_exc_hdr
128                                 mov             #12, r4
129
130 __kernel_vector_013:
131                                 mov.l   r4, @-r15
132                                 bra             __kernel_exc_hdr
133                                 mov             #13, r4
134
135 __kernel_vector_014:
136                                 mov.l   r4, @-r15
137                                 bra             __kernel_exc_hdr
138                                 mov             #14, r4
139
140 __kernel_vector_015:
141                                 mov.l   r4, @-r15
142                                 bra             __kernel_exc_hdr
143                                 mov             #15, r4
144
145 __kernel_vector_016:
146                                 mov.l   r4, @-r15
147                                 bra             __kernel_exc_hdr
148                                 mov             #16, r4
149
150 __kernel_vector_017:
151                                 mov.l   r4, @-r15
152                                 bra             __kernel_exc_hdr
153                                 mov             #17, r4
154
155 __kernel_vector_018:
156                                 mov.l   r4, @-r15
157                                 bra             __kernel_exc_hdr
158                                 mov             #18, r4
159
160 __kernel_vector_019:
161                                 mov.l   r4, @-r15
162                                 bra             __kernel_exc_hdr
163                                 mov             #19, r4
164
165 __kernel_vector_020:
166                                 mov.l   r4, @-r15
167                                 bra             __kernel_exc_hdr
168                                 mov             #20, r4
169
170 __kernel_vector_021:
171                                 mov.l   r4, @-r15
172                                 bra             __kernel_exc_hdr
173                                 mov             #21, r4
174
175 __kernel_vector_022:
176                                 mov.l   r4, @-r15
177                                 bra             __kernel_exc_hdr
178                                 mov             #22, r4
179
180 __kernel_vector_023:
181                                 mov.l   r4, @-r15
182                                 bra             __kernel_exc_hdr
183                                 mov             #23, r4
184
185 __kernel_vector_024:
186                                 mov.l   r4, @-r15
187                                 bra             __kernel_exc_hdr
188                                 mov             #24, r4
189
190 __kernel_vector_025:
191                                 mov.l   r4, @-r15
192                                 bra             __kernel_exc_hdr
193                                 mov             #25, r4
194
195 __kernel_vector_026:
196                                 mov.l   r4, @-r15
197                                 bra             __kernel_exc_hdr
198                                 mov             #26, r4
199
200 __kernel_vector_027:
201                                 mov.l   r4, @-r15
202                                 bra             __kernel_exc_hdr
203                                 mov             #27, r4
204
205 __kernel_vector_028:
206                                 mov.l   r4, @-r15
207                                 bra             __kernel_exc_hdr
208                                 mov             #28, r4
209
210 __kernel_vector_029:
211                                 mov.l   r4, @-r15
212                                 bra             __kernel_exc_hdr
213                                 mov             #29, r4
214
215 __kernel_vector_030:
216                                 mov.l   r4, @-r15
217                                 bra             __kernel_exc_hdr
218                                 mov             #30, r4
219
220 __kernel_vector_031:
221                                 mov.l   r4, @-r15
222                                 bra             __kernel_exc_hdr
223                                 mov             #31, r4
224
225 __kernel_vector_032:
226                                 mov.l   r4, @-r15
227                                 bra             __kernel_exc_hdr
228                                 mov             #32, r4
229
230 __kernel_vector_033:
231                                 mov.l   r4, @-r15
232                                 bra             __kernel_exc_hdr
233                                 mov             #33, r4
234
235 __kernel_vector_034:
236                                 mov.l   r4, @-r15
237                                 bra             __kernel_exc_hdr
238                                 mov             #34, r4
239
240 __kernel_vector_035:
241                                 mov.l   r4, @-r15
242                                 bra             __kernel_exc_hdr
243                                 mov             #35, r4
244
245 __kernel_vector_036:
246                                 mov.l   r4, @-r15
247                                 bra             __kernel_exc_hdr
248                                 mov             #36, r4
249
250 __kernel_vector_037:
251                                 mov.l   r4, @-r15
252                                 bra             __kernel_exc_hdr
253                                 mov             #37, r4
254
255 __kernel_vector_038:
256                                 mov.l   r4, @-r15
257                                 bra             __kernel_exc_hdr
258                                 mov             #38, r4
259
260 __kernel_vector_039:
261                                 mov.l   r4, @-r15
262                                 bra             __kernel_exc_hdr
263                                 mov             #39, r4
264
265 __kernel_vector_040:
266                                 mov.l   r4, @-r15
267                                 bra             __kernel_exc_hdr
268                                 mov             #40, r4
269
270 __kernel_vector_041:
271                                 mov.l   r4, @-r15
272                                 bra             __kernel_exc_hdr
273                                 mov             #41, r4
274
275 __kernel_vector_042:
276                                 mov.l   r4, @-r15
277                                 bra             __kernel_exc_hdr
278                                 mov             #42, r4
279
280 __kernel_vector_043:
281                                 mov.l   r4, @-r15
282                                 bra             __kernel_exc_hdr
283                                 mov             #43, r4
284
285 __kernel_vector_044:
286                                 mov.l   r4, @-r15
287                                 bra             __kernel_exc_hdr
288                                 mov             #44, r4
289
290 __kernel_vector_045:
291                                 mov.l   r4, @-r15
292                                 bra             __kernel_exc_hdr
293                                 mov             #45, r4
294
295 __kernel_vector_046:
296                                 mov.l   r4, @-r15
297                                 bra             __kernel_exc_hdr
298                                 mov             #46, r4
299
300 __kernel_vector_047:
301                                 mov.l   r4, @-r15
302                                 bra             __kernel_exc_hdr
303                                 mov             #47, r4
304
305 __kernel_vector_048:
306                                 mov.l   r4, @-r15
307                                 bra             __kernel_exc_hdr
308                                 mov             #48, r4
309
310 __kernel_vector_049:
311                                 mov.l   r4, @-r15
312                                 bra             __kernel_exc_hdr
313                                 mov             #49, r4
314
315 __kernel_vector_050:
316                                 mov.l   r4, @-r15
317                                 bra             __kernel_exc_hdr
318                                 mov             #50, r4
319
320 __kernel_vector_051:
321                                 mov.l   r4, @-r15
322                                 bra             __kernel_exc_hdr
323                                 mov             #51, r4
324
325 __kernel_vector_052:
326                                 mov.l   r4, @-r15
327                                 bra             __kernel_exc_hdr
328                                 mov             #52, r4
329
330 __kernel_vector_053:
331                                 mov.l   r4, @-r15
332                                 bra             __kernel_exc_hdr
333                                 mov             #53, r4
334
335 __kernel_vector_054:
336                                 mov.l   r4, @-r15
337                                 bra             __kernel_exc_hdr
338                                 mov             #54, r4
339
340 __kernel_vector_055:
341                                 mov.l   r4, @-r15
342                                 bra             __kernel_exc_hdr
343                                 mov             #55, r4
344
345 __kernel_vector_056:
346                                 mov.l   r4, @-r15
347                                 bra             __kernel_exc_hdr
348                                 mov             #56, r4
349
350 __kernel_vector_057:
351                                 mov.l   r4, @-r15
352                                 bra             __kernel_exc_hdr
353                                 mov             #57, r4
354
355 __kernel_vector_058:
356                                 mov.l   r4, @-r15
357                                 bra             __kernel_exc_hdr
358                                 mov             #58, r4
359
360 __kernel_vector_059:
361                                 mov.l   r4, @-r15
362                                 bra             __kernel_exc_hdr
363                                 mov             #59, r4
364
365 __kernel_vector_060:
366                                 mov.l   r4, @-r15
367                                 bra             __kernel_exc_hdr
368                                 mov             #60, r4
369
370 __kernel_vector_061:
371                                 mov.l   r4, @-r15
372                                 bra             __kernel_exc_hdr
373                                 mov             #61, r4
374
375 __kernel_vector_062:
376                                 mov.l   r4, @-r15
377                                 bra             __kernel_exc_hdr
378                                 mov             #62, r4
379
380 __kernel_vector_063:
381                                 mov.l   r4, @-r15
382                                 bra             __kernel_exc_hdr
383                                 mov             #63, r4
384
385 #endif
386
387
388 /************************************************
389   CPU例外ハンドラ
390
391   r4をスタックに積んだ後、r4に割り込み番号を
392   格納してここに分岐するものとする
393 ************************************************/
394 __kernel_exc_hdr:
395                         /* まだ未実装 */
396
397                                 mov.l   @r15+, r4
398                                 rte
399                                 nop
400
401
402                                 .end
403
404
405 /* end of file */