master
s
87 lines
1.63 KB
|
1
|
#include "macros.inc" |
|
2
|
|
|
3
|
test_suite mul16 |
|
4
|
|
|
5
|
#if XCHAL_HAVE_MUL16 |
|
6
|
|
|
7
|
test mul16u_pp |
|
8
|
movi a2, 0x137f5a5a |
|
9
|
mov a3, a2 |
|
10
|
movi a4, 0xa5a5137f |
|
11
|
movi a6, 0x06e180a6 |
|
12
|
mul16u a5, a2, a4 |
|
13
|
assert eq, a5, a6 |
|
14
|
mul16u a2, a2, a4 |
|
15
|
assert eq, a2, a6 |
|
16
|
mul16u a3, a4, a3 |
|
17
|
assert eq, a3, a6 |
|
18
|
test_end |
|
19
|
|
|
20
|
test mul16u_np |
|
21
|
movi a2, 0x137fa5a5 |
|
22
|
mov a3, a2 |
|
23
|
movi a4, 0xa5a5137f |
|
24
|
movi a6, 0x0c9d6bdb |
|
25
|
mul16u a5, a2, a4 |
|
26
|
assert eq, a5, a6 |
|
27
|
mul16u a2, a2, a4 |
|
28
|
assert eq, a2, a6 |
|
29
|
mul16u a3, a4, a3 |
|
30
|
assert eq, a3, a6 |
|
31
|
test_end |
|
32
|
|
|
33
|
test mul16u_nn |
|
34
|
movi a2, 0x137fa5a5 |
|
35
|
mov a3, a2 |
|
36
|
movi a4, 0xa5a5f731 |
|
37
|
movi a6, 0x9ff1e795 |
|
38
|
mul16u a5, a2, a4 |
|
39
|
assert eq, a5, a6 |
|
40
|
mul16u a2, a2, a4 |
|
41
|
assert eq, a2, a6 |
|
42
|
mul16u a3, a4, a3 |
|
43
|
assert eq, a3, a6 |
|
44
|
test_end |
|
45
|
|
|
46
|
test mul16s_pp |
|
47
|
movi a2, 0x137f5a5a |
|
48
|
mov a3, a2 |
|
49
|
movi a4, 0xa5a5137f |
|
50
|
movi a6, 0x06e180a6 |
|
51
|
mul16s a5, a2, a4 |
|
52
|
assert eq, a5, a6 |
|
53
|
mul16s a2, a2, a4 |
|
54
|
assert eq, a2, a6 |
|
55
|
mul16s a3, a4, a3 |
|
56
|
assert eq, a3, a6 |
|
57
|
test_end |
|
58
|
|
|
59
|
test mul16s_np |
|
60
|
movi a2, 0x137fa5a5 |
|
61
|
mov a3, a2 |
|
62
|
movi a4, 0xa5a5137f |
|
63
|
movi a6, 0xf91e6bdb |
|
64
|
mul16s a5, a2, a4 |
|
65
|
assert eq, a5, a6 |
|
66
|
mul16s a2, a2, a4 |
|
67
|
assert eq, a2, a6 |
|
68
|
mul16s a3, a4, a3 |
|
69
|
assert eq, a3, a6 |
|
70
|
test_end |
|
71
|
|
|
72
|
test mul16s_nn |
|
73
|
movi a2, 0x137fa5a5 |
|
74
|
mov a3, a2 |
|
75
|
movi a4, 0xa5a5f731 |
|
76
|
movi a6, 0x031be795 |
|
77
|
mul16s a5, a2, a4 |
|
78
|
assert eq, a5, a6 |
|
79
|
mul16s a2, a2, a4 |
|
80
|
assert eq, a2, a6 |
|
81
|
mul16s a3, a4, a3 |
|
82
|
assert eq, a3, a6 |
|
83
|
test_end |
|
84
|
|
|
85
|
#endif |
|
86
|
|
|
87
|
test_suite_end |