1*073d9f2cSAleksandar Markovic #include<stdio.h> 2*073d9f2cSAleksandar Markovic #include<assert.h> 3*073d9f2cSAleksandar Markovic 4*073d9f2cSAleksandar Markovic int main() 5*073d9f2cSAleksandar Markovic { 6*073d9f2cSAleksandar Markovic int rd, rs, rt; 7*073d9f2cSAleksandar Markovic int result; 8*073d9f2cSAleksandar Markovic 9*073d9f2cSAleksandar Markovic rs = 0xFFFFFFFF; 10*073d9f2cSAleksandar Markovic rt = 0x000000FF; 11*073d9f2cSAleksandar Markovic result = 0xFFFFFF00; 12*073d9f2cSAleksandar Markovic __asm 13*073d9f2cSAleksandar Markovic ("modsub %0, %1, %2\n\t" 14*073d9f2cSAleksandar Markovic : "=r"(rd) 15*073d9f2cSAleksandar Markovic : "r"(rs), "r"(rt) 16*073d9f2cSAleksandar Markovic ); 17*073d9f2cSAleksandar Markovic assert(result == rd); 18*073d9f2cSAleksandar Markovic 19*073d9f2cSAleksandar Markovic rs = 0x00000000; 20*073d9f2cSAleksandar Markovic rt = 0x00CD1FFF; 21*073d9f2cSAleksandar Markovic result = 0x0000CD1F; 22*073d9f2cSAleksandar Markovic __asm 23*073d9f2cSAleksandar Markovic ("modsub %0, %1, %2\n\t" 24*073d9f2cSAleksandar Markovic : "=r"(rd) 25*073d9f2cSAleksandar Markovic : "r"(rs), "r"(rt) 26*073d9f2cSAleksandar Markovic ); 27*073d9f2cSAleksandar Markovic assert(result == rd); 28*073d9f2cSAleksandar Markovic 29*073d9f2cSAleksandar Markovic return 0; 30*073d9f2cSAleksandar Markovic } 31