1 2 3 long __mulsi3(unsigned long a,unsigned long b)4 __mulsi3(unsigned long a, unsigned long b) 5 { 6 long res = 0; 7 while (a) 8 { 9 if (a & 1) 10 { 11 res += b; 12 } 13 b <<= 1; 14 a >>=1; 15 } 16 return res; 17 } 18