]> git.proxmox.com Git - qemu.git/blame - tests/tcg/openrisc/test_sfgeui.c
target-mips: fix incorrect behaviour for INSV
[qemu.git] / tests / tcg / openrisc / test_sfgeui.c
CommitLineData
d901eff3
JL
1#include <stdio.h>
2
3int 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}