For consistency with other architectures
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 
 typedef struct
 {
-       volatile unsigned int counter;
+       volatile unsigned long counter;
 } local_t;
 
 #define LOCAL_INIT(i)  { (i) }
 static __inline__ void local_inc(local_t *v)
 {
        __asm__ __volatile__(
-               "incl %0"
+               "incq %0"
                :"=m" (v->counter)
                :"m" (v->counter));
 }
 static __inline__ void local_dec(local_t *v)
 {
        __asm__ __volatile__(
-               "decl %0"
+               "decq %0"
                :"=m" (v->counter)
                :"m" (v->counter));
 }
 static __inline__ void local_add(unsigned int i, local_t *v)
 {
        __asm__ __volatile__(
-               "addl %1,%0"
+               "addq %1,%0"
                :"=m" (v->counter)
                :"ir" (i), "m" (v->counter));
 }
 static __inline__ void local_sub(unsigned int i, local_t *v)
 {
        __asm__ __volatile__(
-               "subl %1,%0"
+               "subq %1,%0"
                :"=m" (v->counter)
                :"ir" (i), "m" (v->counter));
 }