aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--sysdeps/i386/bits/byteswap.h6
2 files changed, 6 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index dccdad852a..d7b5c63268 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2002-12-10 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
+ __builtin_constant_p to macro parameter.
+
* sysdeps/generic/sigpause.c: Define all functions as weak.
* sysdeps/posix/sigpause.c: Likewise.
diff --git a/sysdeps/i386/bits/byteswap.h b/sysdeps/i386/bits/byteswap.h
index 980abc6bb7..db8b15d4d3 100644
--- a/sysdeps/i386/bits/byteswap.h
+++ b/sysdeps/i386/bits/byteswap.h
@@ -103,11 +103,11 @@
(__extension__ \
({ union { __extension__ unsigned long long int __ll; \
unsigned long int __l[2]; } __w, __r; \
- __w.__ll = (x); \
- if (__builtin_constant_p (__w.__ll)) \
- __r.__ll = __bswap_constant_64 (__w.__ll); \
+ if (__builtin_constant_p (x)) \
+ __r.__ll = __bswap_constant_64 (x); \
else \
{ \
+ __w.__ll = (x); \
__r.__l[0] = __bswap_32 (__w.__l[1]); \
__r.__l[1] = __bswap_32 (__w.__l[0]); \
} \