Commit 7e2055ec by Zack Weinberg

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
parent 6cd28c31
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> 2003-08-25 Roger Sayle <roger@eyesopen.com>
* builtins.c (expand_builtin_mathfn): Rearrange so that we only * builtins.c (expand_builtin_mathfn): Rearrange so that we only
...@@ -9,7 +23,7 @@ ...@@ -9,7 +23,7 @@
* config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate * config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate
result when op0 is SImode. result when op0 is SImode.
2003-08-25 Nathanael Nerode <neroden@twcny.rr.com> 2003-08-25 Nathanael Nerode <neroden@twcny.rr.com>
* fixinc/inclhack.def (svr4_sighandler_type): New fix, ported * fixinc/inclhack.def (svr4_sighandler_type): New fix, ported
...@@ -64,7 +78,7 @@ ...@@ -64,7 +78,7 @@
(pp_c_abstract_declarator): Adjust prototype. (pp_c_abstract_declarator): Adjust prototype.
(pp_c_direct_abstract_declarator): Likewise. (pp_c_direct_abstract_declarator): Likewise.
(pp_c_type_id): 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_function_specifier): Likewise.
(pp_c_declaration_specifiers): Likewise. (pp_c_declaration_specifiers): Likewise.
(pp_c_direct_declarator): Likewise. (pp_c_direct_declarator): Likewise.
...@@ -356,17 +370,17 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz> ...@@ -356,17 +370,17 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz>
* config/pa/quadlib.c: Likewise. * config/pa/quadlib.c: Likewise.
* config/pa/rtems.h: Likewise. * config/pa/rtems.h: Likewise.
* config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove * 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/pa.h: Likewise.
* config/pa/som.h: Likewise. * config/pa/som.h: Likewise.
* config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'. * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'.
Remove all uses of PARAMS macro. Remove all uses of PARAMS macro.
Convert all function definitions to ISO C90 syntax. Convert all function definitions to ISO C90 syntax.
* config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'. * 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.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> 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> ...@@ -374,8 +388,8 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz>
* config/s390/s390.c (gen_consttable): Remove. * config/s390/s390.c (gen_consttable): Remove.
(s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns. (s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns.
(s390_output_pool_entry): New function. (s390_output_pool_entry): New function.
* config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI, * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI,
UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI, UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI,
UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ... UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ...
(UNSPECV_POOL_ENTRY): ... this new constant. (UNSPECV_POOL_ENTRY): ... this new constant.
("consttable_qi", "consttable_hi", "consttable_si", "consttable_di", ("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> ...@@ -475,8 +489,8 @@ Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz>
* config/m68k/m68k.c: Likewise. * config/m68k/m68k.c: Likewise.
2003-08-21 Bernardo Innocenti <bernie@develer.com> 2003-08-21 Bernardo Innocenti <bernie@develer.com>
Paul Dale <pauli@snapgear.com> Paul Dale <pauli@snapgear.com>
Peter Barada <peter@baradas.org> Peter Barada <peter@baradas.org>
* config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
ColdFire cores. ColdFire cores.
......
...@@ -882,13 +882,11 @@ hppa*64*-*-hpux11*) ...@@ -882,13 +882,11 @@ hppa*64*-*-hpux11*)
then then
target_cpu_default="${target_cpu_default}|MASK_GNU_LD" target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
fi fi
# if [ x$enable_threads = x ]; then case x${enable_threads} in
# enable_threads=$have_pthread_h xyes | xposix )
# fi thread_file=posix
# if [ x$enable_threads = xyes ]; then ;;
# thread_file='dce' esac
# tmake_file="${tmake_file} pa/t-dce-thr"
# fi
install_headers_dir=install-headers-cpio install_headers_dir=install-headers-cpio
;; ;;
hppa1.1-*-hpux11* | hppa2*-*-hpux11*) hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
...@@ -896,13 +894,11 @@ 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" 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" tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
xmake_file="pa/x-ada" xmake_file="pa/x-ada"
# if test x$enable_threads = x; then case x${enable_threads} in
# enable_threads=$have_pthread_h xyes | xposix )
# fi thread_file=posix
# if test x$enable_threads = xyes; then ;;
# thread_file='dce' esac
# tmake_file="${tmake_file} pa/t-dce-thr"
# fi
install_headers_dir=install-headers-cpio install_headers_dir=install-headers-cpio
use_collect2=yes use_collect2=yes
;; ;;
...@@ -910,13 +906,11 @@ hppa1.0-*-hpux11*) ...@@ -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" 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" tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
xmake_file="pa/x-ada" xmake_file="pa/x-ada"
# if test x$enable_threads = x; then case x${enable_threads} in
# enable_threads=$have_pthread_h xyes | xposix )
# fi thread_file=posix
# if test x$enable_threads = xyes; then ;;
# thread_file='dce' esac
# tmake_file="${tmake_file} pa/t-dce-thr"
# fi
install_headers_dir=install-headers-cpio install_headers_dir=install-headers-cpio
use_collect2=yes use_collect2=yes
;; ;;
...@@ -1296,9 +1290,11 @@ ia64*-*-hpux*) ...@@ -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" 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" tmake_file="ia64/t-ia64 ia64/t-hpux"
target_cpu_default="MASK_GNU_AS" target_cpu_default="MASK_GNU_AS"
if test x$enable_threads = xyes; then case x$enable_threads in
thread_file='posix' xyes | xposix )
fi thread_file=posix
;;
esac
use_collect2=no use_collect2=no
c_target_objs="ia64-c.o" c_target_objs="ia64-c.o"
cxx_target_objs="ia64-c.o" cxx_target_objs="ia64-c.o"
......
...@@ -49,6 +49,13 @@ do { \ ...@@ -49,6 +49,13 @@ do { \
} \ } \
} while (0) } 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 #undef ASM_EXTRA_SPEC
#define ASM_EXTRA_SPEC "%{milp32:-milp32} %{mlp64:-mlp64}" #define ASM_EXTRA_SPEC "%{milp32:-milp32} %{mlp64:-mlp64}"
...@@ -68,6 +75,7 @@ do { \ ...@@ -68,6 +75,7 @@ do { \
#undef LIB_SPEC #undef LIB_SPEC
#define LIB_SPEC \ #define LIB_SPEC \
"%{!shared: \ "%{!shared: \
%{mt|pthread:-lpthread} \
%{p:%{!mlp64:-L/usr/lib/hpux32/libp} \ %{p:%{!mlp64:-L/usr/lib/hpux32/libp} \
%{mlp64:-L/usr/lib/hpux64/libp} -lprof} \ %{mlp64:-L/usr/lib/hpux64/libp} -lprof} \
%{pg:%{!mlp64:-L/usr/lib/hpux32/libp} \ %{pg:%{!mlp64:-L/usr/lib/hpux32/libp} \
...@@ -134,6 +142,10 @@ do { \ ...@@ -134,6 +142,10 @@ do { \
#undef TARGET_HPUX_LD #undef TARGET_HPUX_LD
#define TARGET_HPUX_LD 1 #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. */ /* Put out the needed function declarations at the end. */
#define TARGET_ASM_FILE_END ia64_hpux_file_end #define TARGET_ASM_FILE_END ia64_hpux_file_end
......
...@@ -74,6 +74,13 @@ Boston, MA 02111-1307, USA. */ ...@@ -74,6 +74,13 @@ Boston, MA 02111-1307, USA. */
} \ } \
while (0) 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 /* We can debug dynamically linked executables on hpux11; we also
want dereferencing of a NULL pointer to cause a SEGV. */ want dereferencing of a NULL pointer to cause a SEGV. */
#undef LINK_SPEC #undef LINK_SPEC
...@@ -100,15 +107,12 @@ Boston, MA 02111-1307, USA. */ ...@@ -100,15 +107,12 @@ Boston, MA 02111-1307, USA. */
%{static:-a archive} %{shared:-b}" %{static:-a archive} %{shared:-b}"
#endif #endif
/* Like the default, except no -lg. */ /* hpux 11 has posix threads. */
#undef LIB_SPEC #undef LIB_SPEC
#define LIB_SPEC \ #define LIB_SPEC \
"%{!shared:\ "%{!shared:\
%{!p:%{!pg:\ %{mt|pthread:-lpthread} -lc \
%{!threads:-lc %{static:%{!nolibdld:-a shared -ldld -a archive -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}}}}"
/* Under hpux11, the normal location of the `ld' and `as' programs is the /* Under hpux11, the normal location of the `ld' and `as' programs is the
/usr/ccs/bin directory. */ /usr/ccs/bin directory. */
......
...@@ -383,3 +383,7 @@ PA_INIT_FINI_HACK ...@@ -383,3 +383,7 @@ PA_INIT_FINI_HACK
and returns 0. /bin/true cannot be used because it is a script without and returns 0. /bin/true cannot be used because it is a script without
an interpreter. */ an interpreter. */
#define INIT_ENVIRONMENT "LD_PXDB=/usr/ccs/bin/size" #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
...@@ -97,8 +97,9 @@ typedef long int __padding_type; ...@@ -97,8 +97,9 @@ typedef long int __padding_type;
#define _GLIBCXX_INST_ATOMICITY_LOCK 1 #define _GLIBCXX_INST_ATOMICITY_LOCK 1
#endif #endif
/* Don't use pragma weak in gthread headers. */ /* Don't use pragma weak in gthread headers. HP-UX rejects programs
#ifdef __hppa__ with unsatisfied external references even if all of those references
are weak; gthread relies on such unsatisfied references being resolved
to null pointers when weak symbol support is on. */
#define _GLIBCXX_GTHREAD_USE_WEAK 0 #define _GLIBCXX_GTHREAD_USE_WEAK 0
#endif #endif
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment