source: trunk/Softwares/Test/Test_024/src/sys/crt0.s @ 123

Last change on this file since 123 was 101, checked in by rosiere, 16 years ago

1) Add soc test
2) fix bug (Pc management, Decod and execute, Update prediction ...)

  • Property svn:keywords set to Id
File size: 1.7 KB
Line 
1/*
2 * Test_025
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.jr (no return procedure)
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        l.movhi r1,     hi(_tty)
22        l.ori   r1, r1, lo(_tty)
23        l.sw    4(r1), r1 /* stop address */
24_infinite_loop :       
25        l.j     _infinite_loop
26        l.nop
27
28_end_ok :
29        l.movhi r1,     hi(_tty)
30        l.ori   r1, r1, lo(_tty)
31        l.sw    4(r1), r0 /* stop address */
32
33
34/* ---[ 0x100: RESET exception ]----------------------------------------- */
35        .org 0x100
36        .global _start
37_start:
38        l.and r1, r0, r0 /* counter 1 */
39        l.ori r2, r0, 10 /* limit */
40        l.j     _go0
41        l.nop
42        l.j     _end_ko
43        l.nop
44       
45        .org 0x140
46_go0    :
47        l.movhi r3,     hi(_go1)
48        l.ori   r3, r3, lo(_go1)
49        l.jr    r3
50        l.nop
51        l.j     _end_ko
52        l.nop
53
54        .org 0x180
55_go2    :
56        l.movhi r3,     hi(_go3)
57        l.ori   r3, r3, lo(_go3)
58        l.jr    r3
59        l.nop
60        l.j     _end_ko
61        l.nop
62
63        .org 0x1c0
64_go1    :
65        l.movhi r3,     hi(_go2)
66        l.ori   r3, r3, lo(_go2)
67        l.jr    r3
68        l.nop
69        l.j     _end_ko
70        l.nop
71
72        .org 0x200
73_go3    :
74        l.movhi r3,     hi(_go4)
75        l.ori   r3, r3, lo(_go4)
76        l.jr    r3
77        l.nop
78        l.j     _end_ko
79        l.nop
80       
81        .org 0x240
82_go4    :
83        l.addi  r1, r1, 1
84        l.sfeq  r1, r2
85        l.bf    _end_ok
86        l.nop
87        l.j     _go0
88        l.nop
89        l.j     _end_ko
90        l.nop
Note: See TracBrowser for help on using the repository browser.