OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gdb/] [gdb-6.8/] [sim/] [testsuite/] [sim/] [sh/] [mulr.s] - Blame information for rev 26

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 26 jlechner
# sh testcase for mulr
2
# mach:  all
3
# as(sh):       -defsym sim_cpu=0
4
# as(shdsp):    -defsym sim_cpu=1 -dsp
5
 
6
        .include "testutils.inc"
7
 
8
        start
9
 
10
mulr_1: ! multiply by one
11
        set_grs_a5a5
12
        mov     #1, r0
13
        mulr    r0, r1
14
        assertreg0   1
15
        test_gr_a5a5 r1
16
        test_gr_a5a5 r2
17
        test_gr_a5a5 r3
18
        test_gr_a5a5 r4
19
        test_gr_a5a5 r5
20
        test_gr_a5a5 r6
21
        test_gr_a5a5 r7
22
        test_gr_a5a5 r8
23
        test_gr_a5a5 r9
24
        test_gr_a5a5 r10
25
        test_gr_a5a5 r11
26
        test_gr_a5a5 r12
27
        test_gr_a5a5 r13
28
        test_gr_a5a5 r14
29
 
30
mulr_2: ! multiply by two
31
        set_grs_a5a5
32
        mov     #2, r0
33
        mov     #12, r1
34
        mulr    r0, r1
35
        assertreg0   2
36
        assertreg 24, r1
37
        test_gr_a5a5 r2
38
        test_gr_a5a5 r3
39
        test_gr_a5a5 r4
40
        test_gr_a5a5 r5
41
        test_gr_a5a5 r6
42
        test_gr_a5a5 r7
43
        test_gr_a5a5 r8
44
        test_gr_a5a5 r9
45
        test_gr_a5a5 r10
46
        test_gr_a5a5 r11
47
        test_gr_a5a5 r12
48
        test_gr_a5a5 r13
49
        test_gr_a5a5 r14
50
 
51
mulr_3: ! multiply five by five
52
        set_grs_a5a5
53
        mov     #5, r0
54
        mov     #5, r1
55
        mulr    r0, r1
56
        assertreg0   5
57
        assertreg 25, r1
58
        test_gr_a5a5 r2
59
        test_gr_a5a5 r3
60
        test_gr_a5a5 r4
61
        test_gr_a5a5 r5
62
        test_gr_a5a5 r6
63
        test_gr_a5a5 r7
64
        test_gr_a5a5 r8
65
        test_gr_a5a5 r9
66
        test_gr_a5a5 r10
67
        test_gr_a5a5 r11
68
        test_gr_a5a5 r12
69
        test_gr_a5a5 r13
70
        test_gr_a5a5 r14
71
 
72
 
73
mulr_4: ! multiply 127 by 127
74
        set_grs_a5a5
75
        mov     #127, r0
76
        mov     #127, r1
77
        mulr    r0, r1
78
        assertreg0   127
79
        assertreg 0x3f01, r1
80
        test_gr_a5a5 r2
81
        test_gr_a5a5 r3
82
        test_gr_a5a5 r4
83
        test_gr_a5a5 r5
84
        test_gr_a5a5 r6
85
        test_gr_a5a5 r7
86
        test_gr_a5a5 r8
87
        test_gr_a5a5 r9
88
        test_gr_a5a5 r10
89
        test_gr_a5a5 r11
90
        test_gr_a5a5 r12
91
        test_gr_a5a5 r13
92
        test_gr_a5a5 r14
93
 
94
mulr_5: ! multiply -1 by -1
95
        set_grs_a5a5
96
        mov     #-1, r0
97
        mov     #-1, r1
98
        mulr    r0, r1
99
        assertreg0   -1
100
        assertreg 1, r1
101
        test_gr_a5a5 r2
102
        test_gr_a5a5 r3
103
        test_gr_a5a5 r4
104
        test_gr_a5a5 r5
105
        test_gr_a5a5 r6
106
        test_gr_a5a5 r7
107
        test_gr_a5a5 r8
108
        test_gr_a5a5 r9
109
        test_gr_a5a5 r10
110
        test_gr_a5a5 r11
111
        test_gr_a5a5 r12
112
        test_gr_a5a5 r13
113
        test_gr_a5a5 r14
114
 
115
mulr_6: ! multiply 46340 by 46340
116
        set_grs_a5a5
117
        movi20  #46340, r0
118
        movi20  #46340, r1
119
        mulr    r0, r1
120
        assertreg0   46340
121
        assertreg 0x7ffea810, r1
122
        test_gr_a5a5 r2
123
        test_gr_a5a5 r3
124
        test_gr_a5a5 r4
125
        test_gr_a5a5 r5
126
        test_gr_a5a5 r6
127
        test_gr_a5a5 r7
128
        test_gr_a5a5 r8
129
        test_gr_a5a5 r9
130
        test_gr_a5a5 r10
131
        test_gr_a5a5 r11
132
        test_gr_a5a5 r12
133
        test_gr_a5a5 r13
134
        test_gr_a5a5 r14
135
 
136
mulr_7: ! multiply 7ffff by 7ffff (overflow)
137
        set_grs_a5a5
138
        movi20  #0x7ffff, r0
139
        movi20  #0x7ffff, r1
140
        mulr    r0, r1
141
        assertreg0   0x7ffff
142
        assertreg 0xfff00001, r1
143
        test_gr_a5a5 r2
144
        test_gr_a5a5 r3
145
        test_gr_a5a5 r4
146
        test_gr_a5a5 r5
147
        test_gr_a5a5 r6
148
        test_gr_a5a5 r7
149
        test_gr_a5a5 r8
150
        test_gr_a5a5 r9
151
        test_gr_a5a5 r10
152
        test_gr_a5a5 r11
153
        test_gr_a5a5 r12
154
        test_gr_a5a5 r13
155
        test_gr_a5a5 r14
156
 
157
 
158
        pass
159
 
160
        exit 0
161
 
162
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.