diff options
author | unknown <knielsen@knielsen-hq.org> | 2011-12-12 13:37:18 +0100 |
---|---|---|
committer | unknown <knielsen@knielsen-hq.org> | 2011-12-12 13:37:18 +0100 |
commit | 6ad3179d6d7facbf55897088c7f0b4d2fcdbd675 (patch) | |
tree | 89ab57eb6a6b30eb0a72cb2ea3231f063e661dcc /storage/pbxt | |
parent | 15e9be7a86189013f9b76c2625c8da65045e75d1 (diff) | |
download | mariadb-git-6ad3179d6d7facbf55897088c7f0b4d2fcdbd675.tar.gz |
Fix GCC build failure in PBXT in some cases/platforms.
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 4e5af648c37..ec426354e4e 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"); */ |