5 long long rd
, rs
, rt
, dspreg
, result
, dspresult
;
6 rs
= 0x1111111111111111;
7 rt
= 0x2222222222222222;
8 result
= 0x1111111111111111;
11 __asm("subu_s.qh %0, %2, %3\n\t"
13 : "=r"(rd
), "=r"(dspreg
)
17 dspreg
= ((dspreg
>> 20) & 0x01);
18 if ((rd
!= result
) || (dspreg
!= dspresult
)) {
19 printf("subu_s.qh error\n\t");
24 rs
= 0x8888888888888888;
25 rt
= 0xa888a888a888a888;
26 result
= 0x0000000000000000;
29 __asm("subu_s.qh %0, %2, %3\n\t"
31 : "=r"(rd
), "=r"(dspreg
)
35 dspreg
= ((dspreg
>> 20) & 0x01);
36 if ((rd
!= result
) || (dspreg
!= dspresult
)) {
37 printf("subu_s.qh error\n\t");