diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h | 10 | ||||
-rw-r--r-- | sysdeps/ieee754/bits/nan.h | 3 |
3 files changed, 13 insertions, 5 deletions
@@ -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 ec21949..7865f71 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 95de220..4d4062c 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. */ |