source: trunk/Softwares/Test/Test_020/src/sys/crt0.s @ 100

Last change on this file since 100 was 100, checked in by rosiere, 15 years ago

1) Bug fix (Operation, Instruction)
2) Modif Return Address Stack
3) Add Soft Test
4) Add Soc Test

  • Property svn:keywords set to Id
File size: 9.3 KB
Line 
1/*
2 * Test_020
3 *
4 * end_ko : infinite_loop
5 * end_ok : Write in R1 the stop address and stop an data
6 *          The store in the destination of an jump
7 * start  : Test l.fl1
8 */
9       
10        .file   "crt0.s"
11        /*
12        .section .vector
13        */
14        .section .text
15        .align  4       
16
17/* ---[ 0x0  : Print a error ]------------------------------------------- */
18
19        .org 0x0
20_end_ko        :       
21_infinite_loop :       
22        l.j     _infinite_loop
23        l.nop
24
25_end_ok :
26        l.movhi r1,     hi(_tty)
27        l.ori   r1, r1, lo(_tty)
28        l.sw    4(r1), r1 /* stop address */
29
30
31/* ---[ 0x100: RESET exception ]----------------------------------------- */
32        .org 0x100
33        .global _start
34_start:
35
36        /**********/
37        /* Test 1 */
38        /**********/
39        l.movhi r1,     hi(0xffffffff) /* RA */
40        l.ori   r1, r1, lo(0xffffffff)
41       
42        l.fl1   r2, r1
43
44        /* Test result */
45        l.sfeqi r2, 32
46        l.bnf   _end_ko
47        l.nop
48       
49        /**********/
50        /* Test 2 */
51        /**********/
52        l.movhi r1,     hi(0x7fffffff) /* RA */
53        l.ori   r1, r1, lo(0x7fffffff)
54       
55        l.fl1   r2, r1
56
57        /* Test result */
58        l.sfeqi r2, 31
59        l.bnf   _end_ko
60        l.nop
61
62        /**********/
63        /* Test 3 */
64        /**********/
65        l.movhi r1,     hi(0x3fffffff) /* RA */
66        l.ori   r1, r1, lo(0x3fffffff)
67       
68        l.fl1   r2, r1
69
70        /* Test result */
71        l.sfeqi r2, 30
72        l.bnf   _end_ko
73        l.nop
74       
75        /**********/
76        /* Test 4 */
77        /**********/
78        l.movhi r1,     hi(0x1fffffff) /* RA */
79        l.ori   r1, r1, lo(0x1fffffff)
80       
81        l.fl1   r2, r1
82
83        /* Test result */
84        l.sfeqi r2, 29
85        l.bnf   _end_ko
86        l.nop
87       
88        /**********/
89        /* Test 5 */
90        /**********/
91        l.movhi r1,     hi(0x0fffffff) /* RA */
92        l.ori   r1, r1, lo(0x0fffffff)
93       
94        l.fl1   r2, r1
95
96        /* Test result */
97        l.sfeqi r2, 28
98        l.bnf   _end_ko
99        l.nop
100
101        /**********/
102        /* Test 6 */
103        /**********/
104        l.movhi r1,     hi(0x07ffffff) /* RA */
105        l.ori   r1, r1, lo(0x07ffffff)
106       
107        l.fl1   r2, r1
108
109        /* Test result */
110        l.sfeqi r2, 27
111        l.bnf   _end_ko
112        l.nop
113       
114        /**********/
115        /* Test 7 */
116        /**********/
117        l.movhi r1,     hi(0x03ffffff) /* RA */
118        l.ori   r1, r1, lo(0x03ffffff)
119       
120        l.fl1   r2, r1
121
122        /* Test result */
123        l.sfeqi r2, 26
124        l.bnf   _end_ko
125        l.nop
126
127        /**********/
128        /* Test 8 */
129        /**********/
130        l.movhi r1,     hi(0x01ffffff) /* RA */
131        l.ori   r1, r1, lo(0x01ffffff)
132       
133        l.fl1   r2, r1
134
135        /* Test result */
136        l.sfeqi r2, 25
137        l.bnf   _end_ko
138        l.nop
139       
140        /**********/
141        /* Test 9 */
142        /**********/
143        l.movhi r1,     hi(0x00ffffff) /* RA */
144        l.ori   r1, r1, lo(0x00ffffff)
145       
146        l.fl1   r2, r1
147
148        /* Test result */
149        l.sfeqi r2, 24
150        l.bnf   _end_ko
151        l.nop
152       
153        /**********/
154        /* Test 10*/
155        /**********/
156        l.movhi r1,     hi(0x007fffff) /* RA */
157        l.ori   r1, r1, lo(0x007fffff)
158       
159        l.fl1   r2, r1
160
161        /* Test result */
162        l.sfeqi r2, 23
163        l.bnf   _end_ko
164        l.nop
165       
166        /**********/
167        /* Test 11*/
168        /**********/
169        l.movhi r1,     hi(0x003fffff) /* RA */
170        l.ori   r1, r1, lo(0x003fffff)
171       
172        l.fl1   r2, r1
173
174        /* Test result */
175        l.sfeqi r2, 22
176        l.bnf   _end_ko
177        l.nop
178       
179        /**********/
180        /* Test 12*/
181        /**********/
182        l.movhi r1,     hi(0x001fffff) /* RA */
183        l.ori   r1, r1, lo(0x001fffff)
184       
185        l.fl1   r2, r1
186
187        /* Test result */
188        l.sfeqi r2, 21
189        l.bnf   _end_ko
190        l.nop
191       
192        /**********/
193        /* Test 13*/
194        /**********/
195        l.movhi r1,     hi(0x000fffff) /* RA */
196        l.ori   r1, r1, lo(0x000fffff)
197       
198        l.fl1   r2, r1
199
200        /* Test result */
201        l.sfeqi r2, 20
202        l.bnf   _end_ko
203        l.nop
204       
205        /**********/
206        /* Test 14*/
207        /**********/
208        l.movhi r1,     hi(0x0007ffff) /* RA */
209        l.ori   r1, r1, lo(0x0007ffff)
210       
211        l.fl1   r2, r1
212
213        /* Test result */
214        l.sfeqi r2, 19
215        l.bnf   _end_ko
216        l.nop
217       
218        /**********/
219        /* Test 15*/
220        /**********/
221        l.movhi r1,     hi(0x0003ffff) /* RA */
222        l.ori   r1, r1, lo(0x0003ffff)
223       
224        l.fl1   r2, r1
225
226        /* Test result */
227        l.sfeqi r2, 18
228        l.bnf   _end_ko
229        l.nop
230       
231        /**********/
232        /* Test 16*/
233        /**********/
234        l.movhi r1,     hi(0x0001ffff) /* RA */
235        l.ori   r1, r1, lo(0x0001ffff)
236       
237        l.fl1   r2, r1
238
239        /* Test result */
240        l.sfeqi r2, 17
241        l.bnf   _end_ko
242        l.nop
243       
244        /**********/
245        /* Test 17*/
246        /**********/
247        l.movhi r1,     hi(0x0000ffff) /* RA */
248        l.ori   r1, r1, lo(0x0000ffff)
249       
250        l.fl1   r2, r1
251
252        /* Test result */
253        l.sfeqi r2, 16
254        l.bnf   _end_ko
255        l.nop
256       
257        /**********/
258        /* Test 18*/
259        /**********/
260        l.movhi r1,     hi(0x00007fff) /* RA */
261        l.ori   r1, r1, lo(0x00007fff)
262       
263        l.fl1   r2, r1
264
265        /* Test result */
266        l.sfeqi r2, 15
267        l.bnf   _end_ko
268        l.nop
269       
270        /**********/
271        /* Test 19*/
272        /**********/
273        l.movhi r1,     hi(0x00003fff) /* RA */
274        l.ori   r1, r1, lo(0x00003fff)
275       
276        l.fl1   r2, r1
277
278        /* Test result */
279        l.sfeqi r2, 14
280        l.bnf   _end_ko
281        l.nop
282       
283        /**********/
284        /* Test 20*/
285        /**********/
286        l.movhi r1,     hi(0x00001fff) /* RA */
287        l.ori   r1, r1, lo(0x00001fff)
288       
289        l.fl1   r2, r1
290
291        /* Test result */
292        l.sfeqi r2, 13
293        l.bnf   _end_ko
294        l.nop
295       
296        /**********/
297        /* Test 21*/
298        /**********/
299        l.movhi r1,     hi(0x00000fff) /* RA */
300        l.ori   r1, r1, lo(0x00000fff)
301       
302        l.fl1   r2, r1
303
304        /* Test result */
305        l.sfeqi r2, 12
306        l.bnf   _end_ko
307        l.nop
308       
309        /**********/
310        /* Test 22*/
311        /**********/
312        l.movhi r1,     hi(0x000007ff) /* RA */
313        l.ori   r1, r1, lo(0x000007ff)
314       
315        l.fl1   r2, r1
316
317        /* Test result */
318        l.sfeqi r2, 11
319        l.bnf   _end_ko
320        l.nop
321       
322        /**********/
323        /* Test 23*/
324        /**********/
325        l.movhi r1,     hi(0x000003ff) /* RA */
326        l.ori   r1, r1, lo(0x000003ff)
327       
328        l.fl1   r2, r1
329
330        /* Test result */
331        l.sfeqi r2, 10
332        l.bnf   _end_ko
333        l.nop
334       
335        /**********/
336        /* Test 24*/
337        /**********/
338        l.movhi r1,     hi(0x000001ff) /* RA */
339        l.ori   r1, r1, lo(0x000001ff)
340       
341        l.fl1   r2, r1
342
343        /* Test result */
344        l.sfeqi r2, 9 
345        l.bnf   _end_ko
346        l.nop
347       
348        /**********/
349        /* Test 25*/
350        /**********/
351        l.movhi r1,     hi(0x000000ff) /* RA */
352        l.ori   r1, r1, lo(0x000000ff)
353       
354        l.fl1   r2, r1
355
356        /* Test result */
357        l.sfeqi r2, 8
358        l.bnf   _end_ko
359        l.nop
360       
361        /**********/
362        /* Test 26*/
363        /**********/
364        l.movhi r1,     hi(0x0000007f) /* RA */
365        l.ori   r1, r1, lo(0x0000007f)
366       
367        l.fl1   r2, r1
368
369        /* Test result */
370        l.sfeqi r2, 7
371        l.bnf   _end_ko
372        l.nop
373       
374        /**********/
375        /* Test 27*/
376        /**********/
377        l.movhi r1,     hi(0x0000003f) /* RA */
378        l.ori   r1, r1, lo(0x0000003f)
379       
380        l.fl1   r2, r1
381
382        /* Test result */
383        l.sfeqi r2, 6
384        l.bnf   _end_ko
385        l.nop
386       
387        /**********/
388        /* Test 28*/
389        /**********/
390        l.movhi r1,     hi(0x0000001f) /* RA */
391        l.ori   r1, r1, lo(0x0000001f)
392       
393        l.fl1   r2, r1
394
395        /* Test result */
396        l.sfeqi r2, 5
397        l.bnf   _end_ko
398        l.nop
399       
400        /**********/
401        /* Test 29*/
402        /**********/
403        l.movhi r1,     hi(0x0000000f) /* RA */
404        l.ori   r1, r1, lo(0x0000000f)
405       
406        l.fl1   r2, r1
407
408        /* Test result */
409        l.sfeqi r2, 4
410        l.bnf   _end_ko
411        l.nop
412       
413        /**********/
414        /* Test 30*/
415        /**********/
416        l.movhi r1,     hi(0x00000007) /* RA */
417        l.ori   r1, r1, lo(0x00000007)
418       
419        l.fl1   r2, r1
420
421        /* Test result */
422        l.sfeqi r2, 3
423        l.bnf   _end_ko
424        l.nop
425       
426        /**********/
427        /* Test 31*/
428        /**********/
429        l.movhi r1,     hi(0x00000003) /* RA */
430        l.ori   r1, r1, lo(0x00000003)
431       
432        l.fl1   r2, r1
433
434        /* Test result */
435        l.sfeqi r2, 2
436        l.bnf   _end_ko
437        l.nop
438       
439        /**********/
440        /* Test 32*/
441        /**********/
442        l.movhi r1,     hi(0x00000001) /* RA */
443        l.ori   r1, r1, lo(0x00000001)
444       
445        l.fl1   r2, r1
446
447        /* Test result */
448        l.sfeqi r2, 1
449        l.bnf   _end_ko
450        l.nop
451       
452        /**********/
453        /* Test 33*/
454        /**********/
455        l.movhi r1,     hi(0x00000000) /* RA */
456        l.ori   r1, r1, lo(0x00000000)
457       
458        l.fl1   r2, r1
459
460        /* Test result */
461        l.sfeqi r2, 0
462        l.bnf   _end_ko
463        l.nop
464       
465        /**********/
466        /* End */
467        /**********/
468
469        l.j     _end_ok
470        l.nop
Note: See TracBrowser for help on using the repository browser.