summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-04-16 22:04:55 +0000
committerUlrich Drepper <drepper@redhat.com>2004-04-16 22:04:55 +0000
commitb575c52b86fe0c00adec925e356eb72cf95b23a7 (patch)
treea52b53167347aaa29aa9a712ebffbef4ef3ba0d7
parentefa8adf5f9bb4ababd27d13e37d97687dfa0a8b4 (diff)
downloadglibc-b575c52b86fe0c00adec925e356eb72cf95b23a7.tar.gz
Update.
2004-04-16 Ulrich Drepper <drepper@redhat.com> * sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__ attribute to keep gcc quiet.
-rw-r--r--ChangeLog5
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h10
-rw-r--r--sysdeps/ieee754/bits/nan.h3
3 files changed, 13 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 171ccae67a..88c6c34e22 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-04-16 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__
+ attribute to keep gcc quiet.
+
2004-04-16 Jakub Jelinek <jakub@redhat.com>
* misc/syslog.c (vsyslog): Avoid freeing failbuf.
diff --git a/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h b/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
index ec21949a49..7865f7165e 100644
--- a/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
+++ b/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
@@ -96,19 +96,21 @@
# define CENABLE call __pthread_enable_asynccancel;
# define CDISABLE call __pthread_disable_asynccancel
# elif defined IS_IN_librt
-# ifdef __PIC__
+# ifdef PIC
# define CENABLE pushl %ebx; \
- SETUP_PIC_REG(bx); \
+ call __i686.get_pc_thunk.bx; \
+ addl $_GLOBAL_OFFSET_TABLE_, %ebx; \
call __librt_enable_asynccancel@PLT; \
popl %ebx;
# define CDISABLE pushl %ebx; \
- SETUP_PIC_REG(bx); \
+ call __i686.get_pc_thunk.bx; \
+ addl $_GLOBAL_OFFSET_TABLE_, %ebx; \
call __librt_disable_asynccancel@PLT; \
popl %ebx;
# else
# define CENABLE call __librt_enable_asynccancel;
# define CDISABLE call __librt_disable_asynccancel
- #endif
+# endif
# else
# define CENABLE call __libc_enable_asynccancel;
# define CDISABLE call __libc_disable_asynccancel
diff --git a/sysdeps/ieee754/bits/nan.h b/sysdeps/ieee754/bits/nan.h
index 95de220e97..4d4062cfcb 100644
--- a/sysdeps/ieee754/bits/nan.h
+++ b/sysdeps/ieee754/bits/nan.h
@@ -46,7 +46,8 @@
# define __nan_bytes { 0, 0, 0xc0, 0x7f }
# endif
-static union { unsigned char __c[4]; float __d; } __nan_union = { __nan_bytes };
+static union { unsigned char __c[4]; float __d; } __nan_union
+ __attribute_used__ = { __nan_bytes };
# define NAN (__nan_union.__d)
#endif /* GCC. */