summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkan <kan@FreeBSD.org>2002-10-10 04:50:29 +0000
committerkan <kan@FreeBSD.org>2002-10-10 04:50:29 +0000
commit029dcab170879d3b9e9bb90bbf64e4b03a919917 (patch)
tree1d13663ad373dd43118a9b088472ac82acc3829d
parent84c8b4559699bd65591ff9651ef6706bb8c031a4 (diff)
downloadFreeBSD-src-029dcab170879d3b9e9bb90bbf64e4b03a919917.zip
FreeBSD-src-029dcab170879d3b9e9bb90bbf64e4b03a919917.tar.gz
Use the stock 3.2.1-prerelease file.
Approved by: obrien
-rw-r--r--contrib/gcc/Makefile.in10
-rw-r--r--contrib/gcc/flags.h4
-rw-r--r--contrib/gcc/libgcc2.c9
-rw-r--r--contrib/gcc/reload.c32
4 files changed, 37 insertions, 18 deletions
diff --git a/contrib/gcc/Makefile.in b/contrib/gcc/Makefile.in
index 46c96c5..fb75d52 100644
--- a/contrib/gcc/Makefile.in
+++ b/contrib/gcc/Makefile.in
@@ -1005,7 +1005,7 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) $(LIB2ADD_ST) xgcc$(exeext
SHLIB_MKMAP_OPTS='$(SHLIB_MKMAP_OPTS)' \
SHLIB_MAPFILES='$(SHLIB_MAPFILES)' \
SHLIB_NM_FLAGS='$(SHLIB_NM_FLAGS)' \
- SHLIB_SLIBDIR_SUFFIXES='$(SHLIB_SLIBDIR_SUFFIXES)' \
+ MULTILIB_OSDIRNAMES='$(MULTILIB_OSDIRNAMES)' \
mkinstalldirs='$(SHELL) $(srcdir)/mkinstalldirs' \
$(SHELL) mklibgcc > tmp-libgcc.mk
mv tmp-libgcc.mk libgcc.mk
@@ -1039,7 +1039,8 @@ libgcc.a: $(LIBGCC_DEPS)
# switches.
multilib.h: s-mlib; @true
s-mlib: $(srcdir)/genmultilib Makefile
- if test @enable_multilib@ = yes; then \
+ if test @enable_multilib@ = yes \
+ || test -n "$(MULTILIB_OSDIRNAMES)"; then \
$(SHELL) $(srcdir)/genmultilib \
"$(MULTILIB_OPTIONS)" \
"$(MULTILIB_DIRNAMES)" \
@@ -1047,9 +1048,12 @@ s-mlib: $(srcdir)/genmultilib Makefile
"$(MULTILIB_EXCEPTIONS)" \
"$(MULTILIB_EXTRA_OPTS)" \
"$(MULTILIB_EXCLUSIONS)" \
+ "$(MULTILIB_OSDIRNAMES)" \
+ "@enable_multilib@" \
> tmp-mlib.h; \
else \
- $(SHELL) $(srcdir)/genmultilib '' '' '' '' '' '' > tmp-mlib.h; \
+ $(SHELL) $(srcdir)/genmultilib '' '' '' '' '' '' '' no \
+ > tmp-mlib.h; \
fi
$(SHELL) $(srcdir)/move-if-change tmp-mlib.h multilib.h
$(STAMP) s-mlib
diff --git a/contrib/gcc/flags.h b/contrib/gcc/flags.h
index d402ec8..16848f6 100644
--- a/contrib/gcc/flags.h
+++ b/contrib/gcc/flags.h
@@ -606,6 +606,10 @@ extern int align_labels_max_skip;
extern int align_functions;
extern int align_functions_log;
+/* Like align_functions_log above, but used by front-ends to force the
+ minimum function alignment. Zero means no alignment is forced. */
+extern int force_align_functions_log;
+
/* Nonzero if we dump in VCG format, not plain text. */
extern int dump_for_graph;
diff --git a/contrib/gcc/libgcc2.c b/contrib/gcc/libgcc2.c
index fe93de3..322ee92 100644
--- a/contrib/gcc/libgcc2.c
+++ b/contrib/gcc/libgcc2.c
@@ -1,7 +1,7 @@
/* More subroutines needed by GCC output code on some machines. */
/* Compile this one with gcc. */
/* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001 Free Software Foundation, Inc.
+ 2000, 2001, 2002 Free Software Foundation, Inc.
This file is part of GCC.
@@ -38,8 +38,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "tconfig.h"
#include "tsystem.h"
-#include "machmode.h"
-
/* Don't use `fancy_abort' here even if config.h says to use it. */
#ifdef abort
#undef abort
@@ -1119,7 +1117,10 @@ __floatdisf (DWtype u)
&& u < ((DWtype) 1 << DF_SIZE)))
{
if ((UDWtype) u & (REP_BIT - 1))
- u |= REP_BIT;
+ {
+ u &= ~ (REP_BIT - 1);
+ u |= REP_BIT;
+ }
}
}
f = (Wtype) (u >> WORD_SIZE);
diff --git a/contrib/gcc/reload.c b/contrib/gcc/reload.c
index 4b331f0..bbb1f94 100644
--- a/contrib/gcc/reload.c
+++ b/contrib/gcc/reload.c
@@ -1287,12 +1287,17 @@ push_reload (in, out, inloc, outloc, class,
So add an additional reload. */
#ifdef SECONDARY_MEMORY_NEEDED
- /* If a memory location is needed for the copy, make one. */
- if (in != 0 && GET_CODE (in) == REG
- && REGNO (in) < FIRST_PSEUDO_REGISTER
- && SECONDARY_MEMORY_NEEDED (REGNO_REG_CLASS (REGNO (in)),
- class, inmode))
- get_secondary_mem (in, inmode, opnum, type);
+ {
+ int regnum;
+
+ /* If a memory location is needed for the copy, make one. */
+ if (in != 0
+ && ((regnum = true_regnum (in)) >= 0)
+ && regnum < FIRST_PSEUDO_REGISTER
+ && SECONDARY_MEMORY_NEEDED (REGNO_REG_CLASS (regnum),
+ class, inmode))
+ get_secondary_mem (in, inmode, opnum, type);
+ }
#endif
i = n_reloads;
@@ -1318,11 +1323,16 @@ push_reload (in, out, inloc, outloc, class,
n_reloads++;
#ifdef SECONDARY_MEMORY_NEEDED
- if (out != 0 && GET_CODE (out) == REG
- && REGNO (out) < FIRST_PSEUDO_REGISTER
- && SECONDARY_MEMORY_NEEDED (class, REGNO_REG_CLASS (REGNO (out)),
- outmode))
- get_secondary_mem (out, outmode, opnum, type);
+ {
+ int regnum;
+
+ if (out != 0
+ && ((regnum = true_regnum (out)) >= 0)
+ && regnum < FIRST_PSEUDO_REGISTER
+ && SECONDARY_MEMORY_NEEDED (class, REGNO_REG_CLASS (regnum),
+ outmode))
+ get_secondary_mem (out, outmode, opnum, type);
+ }
#endif
}
else
OpenPOWER on IntegriCloud