root / tests / tcg / openrisc / test_sfgeui.c @ e4b42e6e
History | View | Annotate | Download (613 Bytes)
1 |
#include <stdio.h> |
---|---|
2 |
|
3 |
int main(void) |
4 |
{ |
5 |
int a, b;
|
6 |
int result;
|
7 |
|
8 |
a = 0;
|
9 |
result = 1;
|
10 |
__asm |
11 |
("1:\n\t"
|
12 |
"l.addi %0, %0, 1\n\t"
|
13 |
"l.sfgeui %0, 0x3\n\t"
|
14 |
"l.bf 1b\n\t"
|
15 |
"l.nop\n\t"
|
16 |
: "+r"(a)
|
17 |
); |
18 |
if (a != result) {
|
19 |
printf("sfgeui error\n");
|
20 |
return -1; |
21 |
} |
22 |
|
23 |
a = 0xff;
|
24 |
b = 1;
|
25 |
result = 2;
|
26 |
__asm |
27 |
("1:\n\t"
|
28 |
"l.sub %0, %0, %1\n\t"
|
29 |
"l.sfgeui %0, 0x3\n\t"
|
30 |
"l.bf 1b\n\t"
|
31 |
"l.nop\n\t"
|
32 |
: "+r"(a)
|
33 |
: "r"(b)
|
34 |
); |
35 |
if (a != result) {
|
36 |
printf("sfgeui error\n");
|
37 |
return -1; |
38 |
} |
39 |
|
40 |
return 0; |
41 |
} |