diff options
author | Zack Weinberg <zack@gcc.gnu.org> | 2003-08-26 06:54:15 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2003-08-26 06:54:15 +0000 |
commit | 7e2055ec11ece615f17218f61ae8fd0b594bfba6 (patch) | |
tree | 4da878ce1023935732ab30a3a136fc84f8f2321a /gcc | |
parent | 6cd28c3182ddfd66585f121bcb09445fdd96ece5 (diff) | |
download | gcc-7e2055ec11ece615f17218f61ae8fd0b594bfba6.zip gcc-7e2055ec11ece615f17218f61ae8fd0b594bfba6.tar.gz gcc-7e2055ec11ece615f17218f61ae8fd0b594bfba6.tar.bz2 |
config.gcc (hppa*-*-hpux11*, [...]): Remove commented-out logic to use DCE threads (if present)...
gcc:
* config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
commented-out logic to use DCE threads (if present), add
support for POSIX threads.
* config/ia64/hpux.h: Define CPP_SPEC to set appropriate
#defines for -pthread. Add -lpthread to LIB_SPEC when
-pthread. In both cases take -mt as a synonym for -pthread
for acc compatibility.
Define GTHREAD_USE_WEAK to 0.
* config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
Remove old logic for DCE threads from LIB_SPEC.
* config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
libstdc++-v3:
* config/os/hpux/os_defines.h: Unconditionally define
_GLIBCXX_GTHREAD_USE_WEAK to 0.
From-SVN: r70797
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 38 | ||||
-rw-r--r-- | gcc/config.gcc | 44 | ||||
-rw-r--r-- | gcc/config/ia64/hpux.h | 12 | ||||
-rw-r--r-- | gcc/config/pa/pa-hpux11.h | 16 | ||||
-rw-r--r-- | gcc/config/pa/pa64-hpux.h | 4 |
5 files changed, 72 insertions, 42 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24a3f58..b4d62d3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2003-08-25 Zack Weinberg <zack@codesourcery.com> + + * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove + commented-out logic to use DCE threads (if present), add + support for POSIX threads. + * config/ia64/hpux.h: Define CPP_SPEC to set appropriate + #defines for -pthread. Add -lpthread to LIB_SPEC when + -pthread. In both cases take -mt as a synonym for -pthread + for acc compatibility. + Define GTHREAD_USE_WEAK to 0. + * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC. + Remove old logic for DCE threads from LIB_SPEC. + * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0. + 2003-08-25 Roger Sayle <roger@eyesopen.com> * builtins.c (expand_builtin_mathfn): Rearrange so that we only @@ -9,7 +23,7 @@ * config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate result when op0 is SImode. - + 2003-08-25 Nathanael Nerode <neroden@twcny.rr.com> * fixinc/inclhack.def (svr4_sighandler_type): New fix, ported @@ -64,7 +78,7 @@ (pp_c_abstract_declarator): Adjust prototype. (pp_c_direct_abstract_declarator): Likewise. (pp_c_type_id): Likewise. - (pp_c_storage_class_specifier): Likewise. + (pp_c_storage_class_specifier): Likewise. (pp_c_function_specifier): Likewise. (pp_c_declaration_specifiers): Likewise. (pp_c_direct_declarator): Likewise. @@ -356,17 +370,17 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz> * config/pa/quadlib.c: Likewise. * config/pa/rtems.h: Likewise. * config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove - all uses of the PARAMS macro. + all uses of the PARAMS macro. * config/pa/pa.h: Likewise. * config/pa/som.h: Likewise. - * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'. - Remove all uses of PARAMS macro. - Convert all function definitions to ISO C90 syntax. + * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'. + Remove all uses of PARAMS macro. + Convert all function definitions to ISO C90 syntax. * config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'. - Remove all uses of PARAMS macro. + Remove all uses of PARAMS macro. * config/iq2000.h: Remove all uses of PARAMS macro. - * config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'. + * config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'. 2003-08-23 Ulrich Weigand <uweigand@de.ibm.com> @@ -374,8 +388,8 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz> * config/s390/s390.c (gen_consttable): Remove. (s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns. (s390_output_pool_entry): New function. - * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI, - UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI, + * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI, + UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ... (UNSPECV_POOL_ENTRY): ... this new constant. ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di", @@ -475,8 +489,8 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz> * config/m68k/m68k.c: Likewise. 2003-08-21 Bernardo Innocenti <bernie@develer.com> - Paul Dale <pauli@snapgear.com> - Peter Barada <peter@baradas.org> + Paul Dale <pauli@snapgear.com> + Peter Barada <peter@baradas.org> * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for ColdFire cores. diff --git a/gcc/config.gcc b/gcc/config.gcc index 65819a3..70ce27e 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -882,13 +882,11 @@ hppa*64*-*-hpux11*) then target_cpu_default="${target_cpu_default}|MASK_GNU_LD" fi -# if [ x$enable_threads = x ]; then -# enable_threads=$have_pthread_h -# fi -# if [ x$enable_threads = xyes ]; then -# thread_file='dce' -# tmake_file="${tmake_file} pa/t-dce-thr" -# fi + case x${enable_threads} in + xyes | xposix ) + thread_file=posix + ;; + esac install_headers_dir=install-headers-cpio ;; hppa1.1-*-hpux11* | hppa2*-*-hpux11*) @@ -896,13 +894,11 @@ hppa1.1-*-hpux11* | hppa2*-*-hpux11*) tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h" tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib" xmake_file="pa/x-ada" -# if test x$enable_threads = x; then -# enable_threads=$have_pthread_h -# fi -# if test x$enable_threads = xyes; then -# thread_file='dce' -# tmake_file="${tmake_file} pa/t-dce-thr" -# fi + case x${enable_threads} in + xyes | xposix ) + thread_file=posix + ;; + esac install_headers_dir=install-headers-cpio use_collect2=yes ;; @@ -910,13 +906,11 @@ hppa1.0-*-hpux11*) tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h" tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib" xmake_file="pa/x-ada" -# if test x$enable_threads = x; then -# enable_threads=$have_pthread_h -# fi -# if test x$enable_threads = xyes; then -# thread_file='dce' -# tmake_file="${tmake_file} pa/t-dce-thr" -# fi + case x${enable_threads} in + xyes | xposix ) + thread_file=posix + ;; + esac install_headers_dir=install-headers-cpio use_collect2=yes ;; @@ -1296,9 +1290,11 @@ ia64*-*-hpux*) tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h" tmake_file="ia64/t-ia64 ia64/t-hpux" target_cpu_default="MASK_GNU_AS" - if test x$enable_threads = xyes; then - thread_file='posix' - fi + case x$enable_threads in + xyes | xposix ) + thread_file=posix + ;; + esac use_collect2=no c_target_objs="ia64-c.o" cxx_target_objs="ia64-c.o" diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h index 5cdb8af..160ac45 100644 --- a/gcc/config/ia64/hpux.h +++ b/gcc/config/ia64/hpux.h @@ -49,6 +49,13 @@ do { \ } \ } while (0) +#undef CPP_SPEC +#define CPP_SPEC \ + "%{mt|pthread:-D_REENTRANT -D_THREAD_SAFE -D_POSIX_C_SOURCE=199506L}" +/* aCC defines also -DRWSTD_MULTI_THREAD, -DRW_MULTI_THREAD. These + affect only aCC's C++ library (Rogue Wave-derived) which we do not + use, and they violate the user's name space. */ + #undef ASM_EXTRA_SPEC #define ASM_EXTRA_SPEC "%{milp32:-milp32} %{mlp64:-mlp64}" @@ -68,6 +75,7 @@ do { \ #undef LIB_SPEC #define LIB_SPEC \ "%{!shared: \ + %{mt|pthread:-lpthread} \ %{p:%{!mlp64:-L/usr/lib/hpux32/libp} \ %{mlp64:-L/usr/lib/hpux64/libp} -lprof} \ %{pg:%{!mlp64:-L/usr/lib/hpux32/libp} \ @@ -134,6 +142,10 @@ do { \ #undef TARGET_HPUX_LD #define TARGET_HPUX_LD 1 +/* The HPUX dynamic linker objects to weak symbols with no + definitions, so do not use them in gthr-posix.h. */ +#define GTHREAD_USE_WEAK 0 + /* Put out the needed function declarations at the end. */ #define TARGET_ASM_FILE_END ia64_hpux_file_end diff --git a/gcc/config/pa/pa-hpux11.h b/gcc/config/pa/pa-hpux11.h index 7a7b3be..e8865df 100644 --- a/gcc/config/pa/pa-hpux11.h +++ b/gcc/config/pa/pa-hpux11.h @@ -74,6 +74,13 @@ Boston, MA 02111-1307, USA. */ } \ while (0) +#undef CPP_SPEC +#define CPP_SPEC \ + "%{mt|pthread:-D_REENTRANT -D_THREAD_SAFE -D_POSIX_C_SOURCE=199506L}" +/* aCC defines also -DRWSTD_MULTI_THREAD, -DRW_MULTI_THREAD. These + affect only aCC's C++ library (Rogue Wave-derived) which we do not + use, and they violate the user's name space. */ + /* We can debug dynamically linked executables on hpux11; we also want dereferencing of a NULL pointer to cause a SEGV. */ #undef LINK_SPEC @@ -100,15 +107,12 @@ Boston, MA 02111-1307, USA. */ %{static:-a archive} %{shared:-b}" #endif -/* Like the default, except no -lg. */ +/* hpux 11 has posix threads. */ #undef LIB_SPEC #define LIB_SPEC \ "%{!shared:\ - %{!p:%{!pg:\ - %{!threads:-lc %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}\ - %{threads:-lcma -lc_r}}}\ - %{p:%{!pg:-lc %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ - %{pg:-lc %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}" + %{mt|pthread:-lpthread} -lc \ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}" /* Under hpux11, the normal location of the `ld' and `as' programs is the /usr/ccs/bin directory. */ diff --git a/gcc/config/pa/pa64-hpux.h b/gcc/config/pa/pa64-hpux.h index 4b9e1a3..a29583b 100644 --- a/gcc/config/pa/pa64-hpux.h +++ b/gcc/config/pa/pa64-hpux.h @@ -383,3 +383,7 @@ PA_INIT_FINI_HACK and returns 0. /bin/true cannot be used because it is a script without an interpreter. */ #define INIT_ENVIRONMENT "LD_PXDB=/usr/ccs/bin/size" + +/* The HPUX dynamic linker objects to weak symbols with no + definitions, so do not use them in gthr-posix.h. */ +#define GTHREAD_USE_WEAK 0 |