projects
/
sdk
/
emulator
/
qemu.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
history
|
raw
|
HEAD
[Title] Add logging
[sdk/emulator/qemu.git]
/
tests
/
xtensa
/
test_quo.S
1
.include "macros.inc"
2
3
test_suite quo
4
5
test quou_pp
6
movi a2, 0x5a5a137f
7
mov a3, a2
8
movi a4, 0x137f5a5a
9
movi a6, 0x4
10
quou a5, a2, a4
11
assert eq, a5, a6
12
quou a2, a2, a4
13
assert eq, a2, a6
14
quou a4, a3, a4
15
assert eq, a4, a6
16
test_end
17
18
test quou_np
19
movi a2, 0xa5a5137f
20
mov a3, a2
21
movi a4, 0x137f5a5a
22
movi a6, 0x8
23
quou a5, a2, a4
24
assert eq, a5, a6
25
quou a2, a2, a4
26
assert eq, a2, a6
27
quou a4, a3, a4
28
assert eq, a4, a6
29
test_end
30
31
test quou_pn
32
movi a2, 0x5a5a137f
33
mov a3, a2
34
movi a4, 0xf7315a5a
35
movi a6, 0
36
quou a5, a2, a4
37
assert eq, a5, a6
38
quou a2, a2, a4
39
assert eq, a2, a6
40
quou a4, a3, a4
41
assert eq, a4, a6
42
test_end
43
44
test quou_nn
45
movi a2, 0xf7315a5a
46
mov a3, a2
47
movi a4, 0xa5a5137f
48
movi a6, 0x1
49
quou a5, a2, a4
50
assert eq, a5, a6
51
quou a2, a2, a4
52
assert eq, a2, a6
53
quou a4, a3, a4
54
assert eq, a4, a6
55
test_end
56
57
test quou_exc
58
set_vector kernel, 2f
59
movi a2, 0xf7315a5a
60
movi a4, 0x00000000
61
1:
62
quou a5, a2, a4
63
test_fail
64
2:
65
rsr a2, exccause
66
assert eqi, a2, 6 /* INTEGER_DIVIDE_BY_ZERO_CAUSE */
67
rsr a2, epc1
68
movi a3, 1b
69
assert eq, a2, a3
70
test_end
71
72
test quos_pp
73
movi a2, 0x5a5a137f
74
mov a3, a2
75
movi a4, 0x137f5a5a
76
movi a6, 0x4
77
quos a5, a2, a4
78
assert eq, a5, a6
79
quos a2, a2, a4
80
assert eq, a2, a6
81
quos a4, a3, a4
82
assert eq, a4, a6
83
test_end
84
85
test quos_np
86
movi a2, 0xa5a5137f
87
mov a3, a2
88
movi a4, 0x137f5a5a
89
movi a6, 0xfffffffc
90
quos a5, a2, a4
91
assert eq, a5, a6
92
quos a2, a2, a4
93
assert eq, a2, a6
94
quos a4, a3, a4
95
assert eq, a4, a6
96
test_end
97
98
test quos_pn
99
movi a2, 0x5a5a137f
100
mov a3, a2
101
movi a4, 0xf7315a5a
102
movi a6, 0xfffffff6
103
quos a5, a2, a4
104
assert eq, a5, a6
105
quos a2, a2, a4
106
assert eq, a2, a6
107
quos a4, a3, a4
108
assert eq, a4, a6
109
test_end
110
111
test quos_nn
112
movi a2, 0xf7315a5a
113
mov a3, a2
114
movi a4, 0xa5a5137f
115
movi a6, 0
116
quos a5, a2, a4
117
assert eq, a5, a6
118
quos a2, a2, a4
119
assert eq, a2, a6
120
quos a4, a3, a4
121
assert eq, a4, a6
122
test_end
123
124
test quos_over
125
movi a2, 0x80000000
126
movi a4, 0xffffffff
127
movi a6, 0x80000000
128
quos a5, a2, a4
129
assert eq, a5, a6
130
test_end
131
132
test quos_exc
133
set_vector kernel, 2f
134
movi a2, 0xf7315a5a
135
movi a4, 0x00000000
136
1:
137
quos a5, a2, a4
138
test_fail
139
2:
140
rsr a2, exccause
141
assert eqi, a2, 6 /* INTEGER_DIVIDE_BY_ZERO_CAUSE */
142
rsr a2, epc1
143
movi a3, 1b
144
assert eq, a2, a3
145
test_end
146
147
test_suite_end