PPC: Fix rldcl
[qemu/agraf.git] / tests / tcg / openrisc / test_mul.c
blob130101fdee0d452d19890c8f218c72dabb9a3d5e
1 #include <stdio.h>
3 int main(void)
5 int a, b, c;
6 int result;
8 b = 0x4;
9 c = 0x1;
10 result = 0x4;
11 __asm
12 ("l.mul %0, %1, %2\n\t"
13 : "=r"(a)
14 : "r"(b), "r"(c)
16 if (a != result) {
17 printf("mul error\n");
18 return -1;
21 b = 0x1;
22 c = 0x0;
23 result = 0x0;
24 __asm
25 ("l.mul %0, %1, %2\n\t"
26 : "=r"(a)
27 : "r"(b), "r"(c)
29 if (a != result) {
30 printf("mul error\n");
31 return -1;
34 b = 0x1;
35 c = 0xff;
36 result = 0xff;
37 __asm
38 ("l.mul %0, %1, %2\n\t"
39 : "=r"(a)
40 : "r"(b), "r"(c)
42 if (a != result) {
43 printf("mul error\n");
44 return -1;
47 b = 0x7fffffff;
48 c = 0x2;
49 result = 0xfffffffe;
50 __asm
51 ("l.mul %0, %1, %2\n\t"
52 : "=r"(a)
53 : "r"(b), "r"(c)
55 if (a != result) {
56 printf("mul error\n");
57 return -1;
60 return 0;