diff options
-rw-r--r-- | src/corelib/arch/qatomic_i386.h | 8 | ||||
-rw-r--r-- | src/corelib/arch/qatomic_x86_64.h | 12 |
2 files changed, 10 insertions, 10 deletions
diff --git a/src/corelib/arch/qatomic_i386.h b/src/corelib/arch/qatomic_i386.h index 61d835a7d4..a81376108c 100644 --- a/src/corelib/arch/qatomic_i386.h +++ b/src/corelib/arch/qatomic_i386.h @@ -137,7 +137,7 @@ bool QBasicAtomicOps<1>::ref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "incb %0\n" + "addb $1, %0\n" "setne %1" : "+m" (_q_value), "=qm" (ret) : @@ -163,7 +163,7 @@ bool QBasicAtomicOps<4>::ref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "incl %0\n" + "addl $1, %0\n" "setne %1" : "+m" (_q_value), "=qm" (ret) : @@ -176,7 +176,7 @@ bool QBasicAtomicOps<1>::deref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "decb %0\n" + "subb $1, %0\n" "setne %1" : "+m" (_q_value), "=qm" (ret) : @@ -202,7 +202,7 @@ bool QBasicAtomicOps<4>::deref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "decl %0\n" + "subl $1, %0\n" "setne %1" : "+m" (_q_value), "=qm" (ret) : diff --git a/src/corelib/arch/qatomic_x86_64.h b/src/corelib/arch/qatomic_x86_64.h index 33427ebf33..58505e2aa9 100644 --- a/src/corelib/arch/qatomic_x86_64.h +++ b/src/corelib/arch/qatomic_x86_64.h @@ -138,7 +138,7 @@ bool QBasicAtomicOps<1>::ref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "incb %0\n" + "addb $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) @@ -164,7 +164,7 @@ bool QBasicAtomicOps<4>::ref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "incl %0\n" + "addl $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) @@ -177,7 +177,7 @@ bool QBasicAtomicOps<8>::ref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "incq %0\n" + "addq $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) @@ -190,7 +190,7 @@ bool QBasicAtomicOps<1>::deref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "decb %0\n" + "subb $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) @@ -215,7 +215,7 @@ bool QBasicAtomicOps<4>::deref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "decl %0\n" + "subl $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) @@ -228,7 +228,7 @@ bool QBasicAtomicOps<8>::deref(T &_q_value) { unsigned char ret; asm volatile("lock\n" - "decq %0\n" + "subq $1, %0\n" "setne %1" : "=m" (_q_value), "=qm" (ret) : "m" (_q_value) |