]> git.proxmox.com Git - mirror_qemu.git/blob - tests/tcg/mips/mips64-dspr2/cmpgdu_lt_qb.c
target-mips: Add ASE DSP testcases
[mirror_qemu.git] / tests / tcg / mips / mips64-dspr2 / cmpgdu_lt_qb.c
1 #include"io.h"
2
3 int main(void)
4 {
5 long long rd, rs, rt;
6 long long dsp;
7 long long result;
8
9 rs = 0x11777066;
10 rt = 0x55AA70FF;
11 result = 0x0D;
12 __asm
13 ("cmpgdu.lt.qb %0, %2, %3\n\t"
14 "rddsp %1\n\t"
15 : "=r"(rd), "=r"(dsp)
16 : "r"(rs), "r"(rt)
17 );
18 dsp = (dsp >> 24) & 0x0F;
19 if (rd != result) {
20 printf("cmpgdu.lt.qb error\n");
21 return -1;
22 }
23 if (dsp != result) {
24 printf("cmpgdu.lt.qb error\n");
25 return -1;
26 }
27
28 rs = 0x11777066;
29 rt = 0x11777066;
30 result = 0x00;
31 __asm
32 ("cmpgdu.lt.qb %0, %2, %3\n\t"
33 "rddsp %1\n\t"
34 : "=r"(rd), "=r"(dsp)
35 : "r"(rs), "r"(rt)
36 );
37 dsp = (dsp >> 24) & 0x0F;
38 if (rd != result) {
39 printf("cmpgdu.lt.qb error\n");
40 return -1;
41 }
42 if (dsp != result) {
43 printf("cmpgdu.lt.qb error\n");
44 return -1;
45 }
46
47 return 0;
48 }