2002-04-05 David S. Miller <davem@redhat.com>
authordavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Apr 2002 04:55:28 +0000 (04:55 +0000)
committerdavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Apr 2002 04:55:28 +0000 (04:55 +0000)
* config/sparc/freebsd.h (ENDFILE_SPEC): Add crtfastmath bits.
* config.gcc (sparc64-wrs-vxworks, sparc-*-chorusos,
sparc-*-rtems*, sparclite-*-elf* sparc86x-*-elf*, sparc64-*-elf*,
{sparc64,ultrasparc}-*-freebsd*): Add sparc/t-crtfm to tmake_file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51940 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config.gcc
gcc/config/sparc/freebsd.h

index 9d66238..51f332e 100644 (file)
@@ -1,3 +1,16 @@
+2002-04-05  David S. Miller  <davem@redhat.com>
+
+       * config/sparc/freebsd.h (ENDFILE_SPEC): Add crtfastmath bits.
+       * config.gcc (sparc64-wrs-vxworks, sparc-*-chorusos,
+       sparc-*-rtems*, sparclite-*-elf* sparc86x-*-elf*, sparc64-*-elf*,
+       {sparc64,ultrasparc}-*-freebsd*): Add sparc/t-crtfm to tmake_file.
+
+2002-04-05  David S. Miller  <davem@redhat.com>
+
+       * config/sparc/sparc.c (sparc_nonflat_function_epilogue): If we
+       are not going to emit return instructions, emit at least a nop
+       for the sake of sane backtraces.
+
 2002-04-05  Richard Henderson  <rth@redhat.com>
 
        * doc/rtl.texi (Regs and Memory): Document (mem:BLK (scratch)).
index 818dfbe..1e3b355 100644 (file)
@@ -2974,7 +2974,7 @@ sparc-tti-*)
        ;;
 sparc64-wrs-vxworks*)
         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/biarch64.h gofast.h sparc/vxsparc64.h"
-        tmake_file=sparc/t-vxsparc64
+        tmake_file="sparc/t-vxsparc64 sparc/t-crtfm"
         use_collect2=yes
         ;;
 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
@@ -3007,7 +3007,7 @@ sparc-*-bsd*)
        ;;
 sparc-*-chorusos*)
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h chorus.h"
-       tmake_file=sparc/t-chorus-elf
+       tmake_file="sparc/t-chorus-elf sparc/t-crtfm"
        extra_parts="crti.o crtn.o crtbegin.o crtend.o"
        float_format=i64
        case x${enable_threads} in
@@ -3064,7 +3064,7 @@ sparc-*-rtemsaout*)
 sparc-*-rtems*|sparc-*-rtemself*)
        xm_defines=POSIX
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
-       tmake_file="sparc/t-elf t-rtems"
+       tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
        extra_parts="crti.o crtn.o crtbegin.o crtend.o"
        #float_format=i128
        float_format=i64
@@ -3212,7 +3212,7 @@ sparclite-*-aout*)
        ;;
 sparclite-*-elf*)
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
-       tmake_file=sparc/t-sparclite
+       tmake_file="sparc/t-sparclite sparc/t-crtfm"
         extra_parts="crtbegin.o crtend.o"
        ;;
 sparc86x-*-aout*)
@@ -3221,7 +3221,7 @@ sparc86x-*-aout*)
        ;;
 sparc86x-*-elf*)
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
-       tmake_file=sparc/t-sp86x
+       tmake_file="sparc/t-sp86x sparc/t-crtfm"
         extra_parts="crtbegin.o crtend.o"
        ;;
 sparc64-*-aout*)
@@ -3229,10 +3229,12 @@ sparc64-*-aout*)
        ;;
 sparc64-*-elf*)
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h"
+       tmake_file="${tmake_file} sparc/t-crtfm"
        extra_parts="crtbegin.o crtend.o"
        ;;
 sparc64-*-freebsd*|ultrasparc-*-freebsd*)
        tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
+       tmake_file="${tmake_file} sparc/t-crtfm"
        xmake_file=none
        case "x$with_cpu" in
                xultrasparc) ;;
index 9017839..33b0716 100644 (file)
@@ -148,3 +148,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
    RELATIVE relocations.  */
 
 /* #define DWARF_OFFSET_SIZE PTR_SIZE */
+
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC \
+       "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s}" \
+       FBSD_ENDFILE_SPEC