diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2006-02-04 00:44:53 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2006-02-04 00:44:53 +0000 |
commit | 3df6582b4758a45cec6fbf55917e63030a2c598f (patch) | |
tree | 3da1d8792c133e6dc8356c5b0c6e85b93756432d | |
parent | 74a88f62d13fd952202dec580cfa243b4a419798 (diff) | |
download | gcc-3df6582b4758a45cec6fbf55917e63030a2c598f.zip gcc-3df6582b4758a45cec6fbf55917e63030a2c598f.tar.gz gcc-3df6582b4758a45cec6fbf55917e63030a2c598f.tar.bz2 |
re PR target/25926 (A87B59A SIGABRT)
PR target/25926
* ada/initialize.c (__gnat_initialize): Provide HP-UX 10 host and target
implementation that calls __main.
* pa/x-ada (X_ADA_CFLAGS): Define _X_HPUX10 on HP-UX 10.
* pa/t-pa (TARGET_LIBGCC2_CFLAGS): Define _T_HPUX10 on HP-UX 10.
From-SVN: r110580
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/initialize.c | 14 | ||||
-rw-r--r-- | gcc/config/pa/t-pa | 6 | ||||
-rw-r--r-- | gcc/config/pa/x-ada | 8 |
5 files changed, 38 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ffa7c5f..75b786b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR target/25926 + * pa/x-ada (X_ADA_CFLAGS): Define _X_HPUX10 on HP-UX 10. + * pa/t-pa (TARGET_LIBGCC2_CFLAGS): Define _T_HPUX10 on HP-UX 10. + 2006-02-03 Jason Merrill <jason@redhat.com> PR c++/25979 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index df731eb..04e522d 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2006-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR target/25926 + * initialize.c (__gnat_initialize): Provide HP-UX 10 host and target + implementation that calls __main. + 2006-01-25 Peter O'Gorman <peter@pogma.com> PR bootstrap/25859 diff --git a/gcc/ada/initialize.c b/gcc/ada/initialize.c index 9d00698..58d8ca8 100644 --- a/gcc/ada/initialize.c +++ b/gcc/ada/initialize.c @@ -170,6 +170,20 @@ __gnat_initialize (void *eh) #endif } +#elif defined(_T_HPUX10) || (!defined(IN_RTS) && defined(_X_HPUX10)) + +/************************************************/ +/* __gnat_initialize (PA-RISC HP-UX 10 Version) */ +/************************************************/ + +extern void __main (void); + +void +__gnat_initialize (void *eh ATTRIBUTE_UNUSED) +{ + __main (); +} + #else /* For all other versions of GNAT, the initialize routine and handler diff --git a/gcc/config/pa/t-pa b/gcc/config/pa/t-pa index 87d8284..5b1a0f9 100644 --- a/gcc/config/pa/t-pa +++ b/gcc/config/pa/t-pa @@ -8,4 +8,8 @@ quadlib.c: $(srcdir)/config/pa/quadlib.c rm -f quadlib.c cp $(srcdir)/config/pa/quadlib.c . -TARGET_LIBGCC2_CFLAGS = -fPIC +ifeq ($(strip $(filter-out hppa% hp hpux10%,$(targ))),) + TARGET_LIBGCC2_CFLAGS = -fPIC -D_T_HPUX10 +else + TARGET_LIBGCC2_CFLAGS = -fPIC +endif diff --git a/gcc/config/pa/x-ada b/gcc/config/pa/x-ada index b60b3d7..1e1ba69 100644 --- a/gcc/config/pa/x-ada +++ b/gcc/config/pa/x-ada @@ -1,4 +1,10 @@ # The ada virtual array implementation requires that indexing be disabled on # hosts such as hpux that use a segmented memory architecture. Both the c # and ada files need to be compiled with this option for correct operation. -X_ADA_CFLAGS=-mdisable-indexing +# On HP-UX 10 hosts, we define _X_HPUX10 to cause __main () to be called at +# startup. +ifeq ($(strip $(filter-out hppa% hp hpux10%,$(targ))),) + X_ADA_CFLAGS = -mdisable-indexing -D_X_HPUX10 +else + X_ADA_CFLAGS = -mdisable-indexing +endif |