diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-03-01 22:47:33 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-03-01 15:47:33 -0700 |
commit | e4b2ca3109ee197efc085d609f5b1cf73c6c18d3 (patch) | |
tree | 424bf735fa7523082a3ae92abeea11857bf90ebd | |
parent | 753ef1cc469d99701eec82e32d1a6f3d544ab2bd (diff) | |
download | gcc-e4b2ca3109ee197efc085d609f5b1cf73c6c18d3.zip gcc-e4b2ca3109ee197efc085d609f5b1cf73c6c18d3.tar.gz gcc-e4b2ca3109ee197efc085d609f5b1cf73c6c18d3.tar.bz2 |
[multiple changes]
Tue Feb 2 23:38:35 1999 David O'Brien <obrien@FreeBSD.org>
* i386/freebsd*.h now allows '$' in label names and does not use the
PCC struct return method.
Wed Dec 30 23:00:28 1998 David O'Brien <obrien@NUXI.com>
* configure.in (FreeBSD ELF): Needs special crt files.
* configure: Rebuilt.
From-SVN: r25522
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/i386/freebsd-elf.h | 7 | ||||
-rw-r--r-- | gcc/config/i386/freebsd.h | 4 | ||||
-rwxr-xr-x | gcc/configure | 3 | ||||
-rw-r--r-- | gcc/configure.in | 1 |
5 files changed, 23 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 98ecef4..ab90b9f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +Mon Mar 1 23:38:20 1999 Jeffrey A Law (law@cygnus.com) + + Tue Feb 2 23:38:35 1999 David O'Brien <obrien@FreeBSD.org> + * i386/freebsd*.h now allows '$' in label names and does not use the + PCC struct return method. + + Wed Dec 30 23:00:28 1998 David O'Brien <obrien@NUXI.com> + * configure.in (FreeBSD ELF): Needs special crt files. + * configure: Rebuilt. + Sun Feb 28 14:47:53 1999 Arturo Montes <mitosys@colomsat.com.co> * config/i386/t-sco5gas (crti.o): New target. diff --git a/gcc/config/i386/freebsd-elf.h b/gcc/config/i386/freebsd-elf.h index 3c1934b..0a556fe 100644 --- a/gcc/config/i386/freebsd-elf.h +++ b/gcc/config/i386/freebsd-elf.h @@ -26,8 +26,13 @@ Boston, MA 02111-1307, USA. */ /* The svr4 ABI for the i386 says that records and unions are returned in memory. */ +/* On FreeBSD, we do not. */ #undef DEFAULT_PCC_STRUCT_RETURN -#define DEFAULT_PCC_STRUCT_RETURN 1 +#define DEFAULT_PCC_STRUCT_RETURN 0 + +/* This gets defined in tm.h->linux.h->svr4.h, and keeps us from using + libraries compiled with the native cc, so undef it. */ +#undef NO_DOLLAR_IN_LABEL /* This is how to output an element of a case-vector that is relative. This is only used for PIC code. See comments by the `casesi' insn in diff --git a/gcc/config/i386/freebsd.h b/gcc/config/i386/freebsd.h index df653ae..a9ce1bf 100644 --- a/gcc/config/i386/freebsd.h +++ b/gcc/config/i386/freebsd.h @@ -89,6 +89,10 @@ Boston, MA 02111-1307, USA. */ /* Don't default to pcc-struct-return, because gcc is the only compiler, and we want to retain compatibility with older gcc versions. */ #define DEFAULT_PCC_STRUCT_RETURN 0 + +/* Ensure we the configuration knows our system correctly so we can link with + libraries compiled with the native cc. */ +#undef NO_DOLLAR_IN_LABEL /* i386 freebsd still uses old binutils that don't insert nops by default when the .align directive demands to insert extra space in the text diff --git a/gcc/configure b/gcc/configure index 5987093..25875cd 100755 --- a/gcc/configure +++ b/gcc/configure @@ -2854,6 +2854,7 @@ for machine in $build $host $target; do tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h" # On FreeBSD, the headers are already ok, except for math.h. fixincludes=fixinc.wrap + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" tmake_file=i386/t-freebsd gas=yes gnu_ld=yes @@ -5394,7 +5395,7 @@ fi # Figure out what assembler alignment features are present. echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6 -echo "configure:5398: checking assembler alignment features" >&5 +echo "configure:5399: checking assembler alignment features" >&5 gcc_cv_as= gcc_cv_as_alignment_features= gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,gcc$,gas,'` diff --git a/gcc/configure.in b/gcc/configure.in index d840d57..713039f 100644 --- a/gcc/configure.in +++ b/gcc/configure.in @@ -875,6 +875,7 @@ for machine in $build $host $target; do tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h" # On FreeBSD, the headers are already ok, except for math.h. fixincludes=fixinc.wrap + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" tmake_file=i386/t-freebsd gas=yes gnu_ld=yes |