1 /* THIS IS WRONG, but gcc compiles it: (unsigned int)x is NO lvalue */
2 #define udiv_qrnnd(q, r, n1, n0, dv) \
4 : "=a" ((unsigned int) (q)), \
5 "=d" ((unsigned int) (r)) \
6 : "0" ((unsigned int) (n0)), \
7 "1" ((unsigned int) (n1)), \
8 "rm" ((unsigned int) (dv)))
12 unsigned int d0, n0, n1, q0;
16 udiv_qrnnd (q0, n0, n1, n0, d0);