From 57a299fe4757e50e70fe8c96a357293e7fa0db53 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 22 Nov 2009 17:49:21 -0800 Subject: [PATCH] Use #include instead of duplication for i386 vs i686 dl-sysdep.h in NPTL. --- nptl/ChangeLog | 5 ++ nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h | 55 ++----------------- 2 files changed, 10 insertions(+), 50 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index a6acf8aafb..2dd5dac2d5 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2009-11-22 Roland McGrath + + * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: # include "i686/dl-sysdep.h" + instead of recapitulating its contents. + 2009-11-18 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Minor diff --git a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h index a3b2c77c32..5216114a70 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h +++ b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h @@ -1,5 +1,5 @@ -/* System-specific settings for dynamic linker code. IA-32 version. - Copyright (C) 2002, 2003, 2008 Free Software Foundation, Inc. +/* System-specific settings for dynamic linker code. i386 version. + Copyright (C) 2002,2003,2008,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,56 +18,11 @@ 02111-1307 USA. */ #ifndef _DL_SYSDEP_H -#define _DL_SYSDEP_H 1 +# include "i686/dl-sysdep.h" -/* This macro must be defined to either 0 or 1. - - If 1, then an errno global variable hidden in ld.so will work right with - all the errno-using libc code compiled for ld.so, and there is never a - need to share the errno location with libc. This is appropriate only if - all the libc functions that ld.so uses are called without PLT and always - get the versions linked into ld.so rather than the libc ones. */ - -#ifdef IS_IN_rtld -# define RTLD_PRIVATE_ERRNO 1 -#else -# define RTLD_PRIVATE_ERRNO 0 -#endif - -/* Traditionally system calls have been made using int $0x80. A - second method was introduced which, if possible, will use the - sysenter/syscall instructions. To signal the presence and where to - find the code the kernel passes an AT_SYSINFO value in the - auxiliary vector to the application. - sysenter/syscall is not useful on i386 through i586, but the dynamic +/* sysenter/syscall is not useful on i386 through i586, but the dynamic linker and dl code in libc.a has to be able to load i686 compiled libraries. */ -#define NEED_DL_SYSINFO 1 -#undef USE_DL_SYSINFO - -#if defined NEED_DL_SYSINFO && !defined __ASSEMBLER__ -extern void _dl_sysinfo_int80 (void) attribute_hidden; -# define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80 -# define DL_SYSINFO_IMPLEMENTATION \ - asm (".text\n\t" \ - ".type _dl_sysinfo_int80,@function\n\t" \ - ".hidden _dl_sysinfo_int80\n\t" \ - CFI_STARTPROC "\n" \ - "_dl_sysinfo_int80:\n\t" \ - "int $0x80;\n\t" \ - "ret;\n\t" \ - CFI_ENDPROC "\n" \ - ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \ - ".previous;"); -#endif - - -/* The _dl_discover_osversion function is so far only needed in sysconf - to check for kernels later than 2.6.23. */ -#if !defined __ASSEMBLER__ && __LINUX_KERNEL_VERSION < 0x020617 -/* Get version of the OS. */ -extern int _dl_discover_osversion (void) attribute_hidden; -# define HAVE_DL_DISCOVER_OSVERSION 1 -#endif +# undef USE_DL_SYSINFO #endif /* dl-sysdep.h */