source: trunk/Softwares/Test/Test_023/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: 1.8 KB
Line 
1/*
2 * Test_023
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.jalr
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        l.and r1, r0, r0 /* counter 1 */
36        l.ori r2, r0, 10 /* limit */
37        l.j     _go0
38        l.nop
39        l.j     _end_ko
40        l.nop
41       
42        .org 0x140
43_go0    :
44        l.nop
45        l.nop
46        l.movhi r3,     hi(_go1)
47        l.ori   r3, r3, lo(_go1)
48        l.jalr  r3
49        l.sfeqi r9, 0x158
50        l.j     _end_ko
51        l.nop
52
53        .org 0x180
54_go2    :
55        l.bnf   _end_ko
56        l.nop
57        l.movhi r3,     hi(_go3)
58        l.ori   r3, r3, lo(_go3)
59        l.jalr  r3
60        l.sfeqi r9, 0x198
61        l.j     _end_ko
62        l.nop
63
64        .org 0x1c0
65_go1    :
66        l.bnf   _end_ko
67        l.nop
68        l.movhi r3,     hi(_go2)
69        l.ori   r3, r3, lo(_go2)
70        l.jalr  r3
71        l.sfeqi r9,0x1d8
72        l.j     _end_ko
73        l.nop
74
75        .org 0x200
76_go3    :
77        l.bnf   _end_ko
78        l.nop
79        l.movhi r3,     hi(_go4)
80        l.ori   r3, r3, lo(_go4)
81        l.jalr  r3
82        l.sfeqi r9,0x218
83        l.j     _end_ko
84        l.nop
85       
86        .org 0x240
87_go4    :
88        l.bnf   _end_ko
89        l.nop
90        l.addi  r1, r1, 1
91        l.sfeq  r1, r2
92        l.bf    _end_ok
93        l.nop
94        l.j     _go0
95        l.nop
96        l.j     _end_ko
97        l.nop
Note: See TracBrowser for help on using the repository browser.