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