1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
|
# frv testcase for rstdf $FRk,@($GRi,$GRj)
# mach: frv
# as(frv): -mcpu=frv
.include "testutils.inc"
start
.global add
add:
; No nesr's active
set_gr_gr sp,gr20
set_mem_limmed 0x2222,0x2222,gr20
set_gr_gr gr20,gr27
inc_gr_immed -4,gr27
set_mem_limmed 0x3333,0x3333,gr27
set_gr_gr gr27,gr26
inc_gr_immed -4,gr26
set_mem_limmed 0x4444,0x4444,gr26
set_gr_gr gr26,gr25
inc_gr_immed -4,gr25
set_mem_limmed 0x5555,0x5555,gr25
set_gr_gr gr25,gr24
inc_gr_immed -4,gr24
set_mem_limmed 0x6666,0x6666,gr24
set_gr_gr gr24,gr23
inc_gr_immed -4,gr23
set_mem_limmed 0x7777,0x7777,gr23
set_gr_gr gr23,gr22
inc_gr_immed -4,gr22
set_mem_limmed 0x8888,0x8888,gr22
set_gr_gr gr22,gr21
inc_gr_immed -4,gr21
set_mem_limmed 0x9999,0x9999,gr21
set_gr_limmed 0x1111,0x1111,gr40
set_gr_limmed 0x1111,0x1111,gr41
set_fr_iimmed 0x1111,0x1111,fr40
set_fr_iimmed 0x1111,0x1111,fr41
inc_gr_immed -4,sp
set_gr_immed 0,gr7
set_fr_iimmed 0xeeee,0xeeee,fr8
set_fr_iimmed 0xffff,0xffff,fr9
rstdf fr8,@(sp,gr7)
test_mem_limmed 0xffff,0xffff,gr20
test_mem_limmed 0xeeee,0xeeee,gr27
test_mem_limmed 0x4444,0x4444,gr26
test_mem_limmed 0x5555,0x5555,gr25
test_mem_limmed 0x6666,0x6666,gr24
test_mem_limmed 0x7777,0x7777,gr23
test_mem_limmed 0x8888,0x8888,gr22
test_mem_limmed 0x9999,0x9999,gr21
test_gr_limmed 0x1111,0x1111,gr40
test_gr_limmed 0x1111,0x1111,gr41
test_fr_limmed 0x1111,0x1111,fr40
test_fr_limmed 0x1111,0x1111,fr41
; 1 nesr active with the incorrect address in neear for gr
set_gr_gr sp,gr10
inc_gr_immed -16,gr10
nlddi @(sp,-16),gr40
test_spr_gr neear0,gr10
set_mem_limmed 0x2222,0x2222,gr20
set_mem_limmed 0x3333,0x3333,gr27
set_mem_limmed 0x4444,0x4444,gr26
set_mem_limmed 0x5555,0x5555,gr25
set_mem_limmed 0x6666,0x6666,gr24
set_mem_limmed 0x7777,0x7777,gr23
set_mem_limmed 0x8888,0x8888,gr22
set_mem_limmed 0x9999,0x9999,gr21
set_fr_iimmed 0xeeee,0xeeee,fr8
set_fr_iimmed 0xffff,0xffff,fr9
set_gr_limmed 0x1111,0x1111,gr40
set_gr_limmed 0x1111,0x1111,gr41
set_fr_iimmed 0x1111,0x1111,fr40
set_fr_iimmed 0x1111,0x1111,fr41
set_gr_immed -8,gr7
rstdf fr8,@(sp,gr7)
test_mem_limmed 0x2222,0x2222,gr20
test_mem_limmed 0x3333,0x3333,gr27
test_mem_limmed 0xffff,0xffff,gr26
test_mem_limmed 0xeeee,0xeeee,gr25
test_mem_limmed 0x6666,0x6666,gr24
test_mem_limmed 0x7777,0x7777,gr23
test_mem_limmed 0x8888,0x8888,gr22
test_mem_limmed 0x9999,0x9999,gr21
test_gr_limmed 0x1111,0x1111,gr40
test_gr_limmed 0x1111,0x1111,gr41
test_fr_limmed 0x1111,0x1111,fr40
test_fr_limmed 0x1111,0x1111,fr41
; 1 nesr active with the incorrect address in neear for fr
inc_gr_immed -8,gr10
nlddfi @(sp,-24),fr40
test_spr_gr neear1,gr10
set_mem_limmed 0x2222,0x2222,gr20
set_mem_limmed 0x3333,0x3333,gr27
set_mem_limmed 0x4444,0x4444,gr26
set_mem_limmed 0x5555,0x5555,gr25
set_mem_limmed 0x6666,0x6666,gr24
set_mem_limmed 0x7777,0x7777,gr23
set_mem_limmed 0x8888,0x8888,gr22
set_mem_limmed 0x9999,0x9999,gr21
set_fr_iimmed 0xeeee,0xeeee,fr8
set_fr_iimmed 0xffff,0xffff,fr9
set_gr_limmed 0x1111,0x1111,gr40
set_gr_limmed 0x1111,0x1111,gr41
set_fr_iimmed 0x1111,0x1111,fr40
set_fr_iimmed 0x1111,0x1111,fr41
inc_gr_immed -8,sp
set_gr_immed 8,gr7
rstdf fr8,@(sp,gr7)
test_mem_limmed 0xffff,0xffff,gr20
test_mem_limmed 0xeeee,0xeeee,gr27
test_mem_limmed 0x4444,0x4444,gr26
test_mem_limmed 0x5555,0x5555,gr25
test_mem_limmed 0x6666,0x6666,gr24
test_mem_limmed 0x7777,0x7777,gr23
test_mem_limmed 0x8888,0x8888,gr22
test_mem_limmed 0x9999,0x9999,gr21
test_gr_limmed 0x1111,0x1111,gr40
test_gr_limmed 0x1111,0x1111,gr41
test_fr_limmed 0x1111,0x1111,fr40
test_fr_limmed 0x1111,0x1111,fr41
; 1 nesr active with the correct address in neear for gr
set_mem_limmed 0x2222,0x2222,gr20
set_mem_limmed 0x3333,0x3333,gr27
set_mem_limmed 0x4444,0x4444,gr26
set_mem_limmed 0x5555,0x5555,gr25
set_mem_limmed 0x6666,0x6666,gr24
set_mem_limmed 0x7777,0x7777,gr23
set_mem_limmed 0x8888,0x8888,gr22
set_mem_limmed 0x9999,0x9999,gr21
set_fr_iimmed 0xeeee,0xeeee,fr8
set_fr_iimmed 0xffff,0xffff,fr9
set_gr_limmed 0x1111,0x1111,gr40
set_gr_limmed 0x1111,0x1111,gr41
set_fr_iimmed 0x1111,0x1111,fr40
set_fr_iimmed 0x1111,0x1111,fr41
inc_gr_immed -8,sp
set_gr_immed 0,gr7
rstdf fr8,@(sp,gr7)
test_mem_limmed 0x2222,0x2222,gr20
test_mem_limmed 0x3333,0x3333,gr27
test_mem_limmed 0x4444,0x4444,gr26
test_mem_limmed 0x5555,0x5555,gr25
test_mem_limmed 0xffff,0xffff,gr24
test_mem_limmed 0xeeee,0xeeee,gr23
test_mem_limmed 0x8888,0x8888,gr22
test_mem_limmed 0x9999,0x9999,gr21
test_gr_limmed 0xffff,0xffff,gr41
test_gr_limmed 0xeeee,0xeeee,gr40
test_fr_limmed 0x1111,0x1111,fr41
test_fr_limmed 0x1111,0x1111,fr40
; 1 nesr active with the correct address in neear for fr
set_mem_limmed 0x2222,0x2222,gr20
set_mem_limmed 0x3333,0x3333,gr27
set_mem_limmed 0x4444,0x4444,gr26
set_mem_limmed 0x5555,0x5555,gr25
set_mem_limmed 0x6666,0x6666,gr24
set_mem_limmed 0x7777,0x7777,gr23
set_mem_limmed 0x8888,0x8888,gr22
set_mem_limmed 0x9999,0x9999,gr21
set_fr_iimmed 0xeeee,0xeeee,fr8
set_fr_iimmed 0xffff,0xffff,fr9
set_gr_limmed 0x1111,0x1111,gr40
set_gr_limmed 0x1111,0x1111,gr41
set_fr_iimmed 0x1111,0x1111,fr40
set_fr_iimmed 0x1111,0x1111,fr41
set_gr_immed -8,gr7
rstdf fr8,@(sp,gr7)
test_mem_limmed 0x2222,0x2222,gr20
test_mem_limmed 0x3333,0x3333,gr27
test_mem_limmed 0x4444,0x4444,gr26
test_mem_limmed 0x5555,0x5555,gr25
test_mem_limmed 0x6666,0x6666,gr24
test_mem_limmed 0x7777,0x7777,gr23
test_mem_limmed 0xffff,0xffff,gr22
test_mem_limmed 0xeeee,0xeeee,gr21
test_gr_limmed 0x1111,0x1111,gr41
test_gr_limmed 0x1111,0x1111,gr40
test_fr_limmed 0xffff,0xffff,fr41
test_fr_limmed 0xeeee,0xeeee,fr40
pass
|