1#include "io.h" 2 3int main(void) 4{ 5 long long rd, rt; 6 long long result; 7 8 rt = 0x80000000; 9 result = 0x7FFFFFFF; 10 __asm 11 ("absq_s.w %0, %1\n\t" 12 : "=r"(rd) 13 : "r"(rt) 14 ); 15 if (rd != result) { 16 printf("absq_s_w.ph wrong\n"); 17 18 return -1; 19 } 20 21 rt = 0x80030000; 22 result = 0x7FFD0000; 23 __asm 24 ("absq_s.w %0, %1\n\t" 25 : "=r"(rd) 26 : "r"(rt) 27 ); 28 if (rd != result) { 29 printf("absq_s_w.ph wrong\n"); 30 31 return -1; 32 } 33 34 rt = 0x31036080; 35 result = 0x31036080; 36 __asm 37 ("absq_s.w %0, %1\n\t" 38 : "=r"(rd) 39 : "r"(rt) 40 ); 41 if (rd != result) { 42 printf("absq_s_w.ph wrong\n"); 43 44 return -1; 45 } 46 47 return 0; 48} 49