From: Ulrich Drepper Date: Sat, 17 Jan 2004 18:35:16 +0000 (+0000) Subject: (atomic_add): Fix test for using atomic_decrement. X-Git-Tag: cvs/ChangeLog~9 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=eed242a60ff70c57f6ca72274a9f62961dedb067;p=thirdparty%2Fglibc.git (atomic_add): Fix test for using atomic_decrement. --- diff --git a/sysdeps/i386/i486/bits/atomic.h b/sysdeps/i386/i486/bits/atomic.h index cb2fcdb0cc5..9587eaa87af 100644 --- a/sysdeps/i386/i486/bits/atomic.h +++ b/sysdeps/i386/i486/bits/atomic.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2002. @@ -169,7 +169,7 @@ typedef uintmax_t uatomic_max_t; #define atomic_add(mem, value) \ (void) ({ if (__builtin_constant_p (value) && (value) == 1) \ atomic_increment (mem); \ - else if (__builtin_constant_p (value) && (value) == 1) \ + else if (__builtin_constant_p (value) && (value) == -1) \ atomic_decrement (mem); \ else if (sizeof (*mem) == 1) \ __asm __volatile (LOCK_PREFIX "addb %b1, %0" \