1#include "macros.inc"
2
3test_suite mul16
4
5
6
7test 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
18test_end
19
20test 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
31test_end
32
33test 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
44test_end
45
46test 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
57test_end
58
59test 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
70test_end
71
72test 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
83test_end
84
85#endif
86
87test_suite_end
88