master
c 48 lines 702 Bytes
Raw
1 #include <stdio.h>
2
3 int main(void)
4 {
5 int a, b, c;
6 int result;
7
8 b = 0x4;
9 c = 0x1;
10 result = 0x4;
11 __asm
12 ("l.muli %0, %1, 0x1\n\t"
13 : "=r"(a)
14 : "r"(b)
15 );
16 if (a != result) {
17 printf("muli error\n");
18 return -1;
19 }
20
21 b = 0x1;
22 c = 0x0;
23 result = 0x0;
24 __asm
25 ("l.muli %0, %1, 0x0\n\t"
26 : "=r"(a)
27 : "r"(b)
28 );
29 if (a != result) {
30 printf("muli error\n");
31 return -1;
32 }
33
34 b = 0x1;
35 c = 0xff;
36 result = 0xff;
37 __asm
38 ("l.muli %0, %1, 0xff\n\t"
39 : "=r"(a)
40 : "r"(b)
41 );
42 if (a != result) {
43 printf("muli error\n");
44 return -1;
45 }
46
47 return 0;
48 }