asm-function.cpp 439 B

123456789101112131415161718192021
  1. unsigned char asmFunc(unsigned char a, unsigned char b) {
  2. unsigned int la = a;
  3. unsigned int lb = b;
  4. unsigned int bigres;
  5. unsigned char res;
  6. __asm__ ("0:\n1:\n" : [bigres] "=la"(bigres) : [la] "0"(la), [lb] "c"(lb) :
  7. "edx", "cc");
  8. res = bigres;
  9. return res;
  10. }
  11. int asmFunc2(int i) {
  12. int res;
  13. asm ("mov %1, %0 \t\n"
  14. "inc %0 "
  15. : "=r" (res)
  16. : "r" (i)
  17. : "cc");
  18. return res;
  19. }