diff options
author | Michael Widenius <monty@askmonty.org> | 2011-12-14 20:36:51 +0200 |
---|---|---|
committer | Michael Widenius <monty@askmonty.org> | 2011-12-14 20:36:51 +0200 |
commit | 511fd82b26bd581de99393a3962af432a835aa9f (patch) | |
tree | 6153b86559951f222470de87b1c387bcde6fbcda /storage/pbxt | |
parent | 43c8a6ac19c48dad77aae7deb4eb0ef22a5b0ba7 (diff) | |
parent | 1a985a17c064eb25a69b5936547752b2df7bda9a (diff) | |
download | mariadb-git-511fd82b26bd581de99393a3962af432a835aa9f.tar.gz |
Merge with 5.2
Diffstat (limited to 'storage/pbxt')
-rw-r--r-- | storage/pbxt/src/lock_xt.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/storage/pbxt/src/lock_xt.h b/storage/pbxt/src/lock_xt.h index 28737478d48..002636e3ffa 100644 --- a/storage/pbxt/src/lock_xt.h +++ b/storage/pbxt/src/lock_xt.h @@ -67,9 +67,9 @@ inline void xt_atomic_inc1(volatile xtWord1 *mptr) #elif defined(XT_ATOMIC_GNUC_X86) xtWord1 val; - asm volatile ("movb %1,%0" : "=r" (val) : "m" (*mptr) : "memory"); + asm volatile ("movb %1,%0" : "=q" (val) : "m" (*mptr) : "memory"); val++; - asm volatile ("xchgb %1,%0" : "=r" (val) : "m" (*mptr), "0" (val) : "memory"); + asm volatile ("xchgb %1,%0" : "=q" (val) : "m" (*mptr), "0" (val) : "memory"); #elif defined(XT_ATOMIC_SOLARIS_LIB) atomic_inc_8(mptr); #else @@ -91,9 +91,9 @@ inline xtWord1 xt_atomic_dec1(volatile xtWord1 *mptr) #elif defined(XT_ATOMIC_GNUC_X86) xtWord1 val2; - asm volatile ("movb %1, %0" : "=r" (val) : "m" (*mptr) : "memory"); + asm volatile ("movb %1, %0" : "=q" (val) : "m" (*mptr) : "memory"); val--; - asm volatile ("xchgb %1,%0" : "=r" (val2) : "m" (*mptr), "0" (val) : "memory"); + asm volatile ("xchgb %1,%0" : "=q" (val2) : "m" (*mptr), "0" (val) : "memory"); /* Should work, but compiler makes a mistake? * asm volatile ("xchgb %1, %0" : : "r" (val), "m" (*mptr) : "memory"); */ |