aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1992-02-27 07:51:07 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1992-02-27 07:51:07 -0500
commit98ccf8fe7788adb5061704d0c90b659da97fe2cd (patch)
tree1da563c7a42bc844b7df3c59727ed582dca40083
parent7afe21cc912466d45b01012cdddb3fa2b71134b9 (diff)
downloadgcc-98ccf8fe7788adb5061704d0c90b659da97fe2cd.zip
gcc-98ccf8fe7788adb5061704d0c90b659da97fe2cd.tar.gz
gcc-98ccf8fe7788adb5061704d0c90b659da97fe2cd.tar.bz2
*** empty log message ***
From-SVN: r361
-rw-r--r--gcc/config/i386/sun.h4
-rw-r--r--gcc/config/m68k/sun3.h7
-rw-r--r--gcc/config/mips/news4.h64
-rw-r--r--gcc/config/sparc/sparc.h9
-rw-r--r--gcc/reorg.c8
5 files changed, 41 insertions, 51 deletions
diff --git a/gcc/config/i386/sun.h b/gcc/config/i386/sun.h
index 6ec9d15..655e63c 100644
--- a/gcc/config/i386/sun.h
+++ b/gcc/config/i386/sun.h
@@ -33,12 +33,12 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define STARTFILE_SPEC \
"%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}"
-#define LIB_SPEC "%{g:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}\
+#define LIB_SPEC "%{g:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} \
%{g:-lg} %{sun386:}"
/* That last item is just to prevent a spurious error. */
#undef LINK_SPEC
-#define LINK_SPEC "%{!e*:-e _start} -dc -dp %{g:-Bstatic} %{static:-Bstatic}"
+#define LINK_SPEC "%{!e*:-e _start} -dc -dp %{static:-Bstatic}"
/* Extra switches to give the assembler. */
diff --git a/gcc/config/m68k/sun3.h b/gcc/config/m68k/sun3.h
index 9c0afd8..a12354a 100644
--- a/gcc/config/m68k/sun3.h
+++ b/gcc/config/m68k/sun3.h
@@ -152,12 +152,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#endif
#endif
-/* Provide required defaults for linker -e and -d switches.
- Also, it is hard to debug with shared libraries,
- so don't use them if going to debug. */
+/* Provide required defaults for linker -e and -d switches. */
-#define LINK_SPEC "%{!e*:-e start} -dc -dp %{g:-Bstatic} %{static:-Bstatic} \
- %{assert*}"
+#define LINK_SPEC "%{!e*:-e start} -dc -dp %{static:-Bstatic} %{assert*}"
/* Every structure or union's size must be a multiple of 2 bytes. */
diff --git a/gcc/config/mips/news4.h b/gcc/config/mips/news4.h
index 45d10bf..5597b7e 100644
--- a/gcc/config/mips/news4.h
+++ b/gcc/config/mips/news4.h
@@ -19,42 +19,34 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define MIPS_NEWS
-#define CPP_PREDEFINES "-Dr3000 -Dnews3700 -DLANGUAGE_C -DMIPSEB -DSYSTYPE_BSD -Dsony_news -Dsony -Dunix -Dmips -Dhost_mips"
-
-#define ASM_SPEC "%{!mgas: \
- %{!mrnames: -nocpp} \
- %{pipe:%e:-pipe not supported} \
- %{EB} %{!EB:-EB} \
- %{EL: %e-EL not supported} \
- %{O:-O2} %{O1:-O2} %{O2:-O2} %{O3:-O3} \
- %{g} %{g1} %{g2} %{g3} %{g0} %{v} %{K} \
- %{G*}"
-
-#define CPP_SPEC "-I/usr/include2.0 \
- %{.S: -D__LANGUAGE_ASSEMBLY__ \
- -D_LANGUAGE_ASSEMBLY \
- %{!ansi:-DLANGUAGE_ASSEMBLY}} \
- %{.cc: -D__LANGUAGE_C_PLUS_PLUS__ \
- -D_LANGUAGE_C_PLUS_PLUS \
- %{!ansi:-DLANGUAGE_C_PLUS_PLUS}} \
- %{.cxx:-D__LANGUAGE_C_PLUS_PLUS__ \
- -D_LANGUAGE_C_PLUS_PLUS \
- %{!ansi:-DLANGUAGE_C_PLUS_PLUS}} \
- %{.C: -D__LANGUAGE_C_PLUS_PLUS__ \
- -D_LANGUAGE_C_PLUS_PLUS \
- %{!ansi:-DLANGUAGE_C_PLUS_PLUS}} \
- %{.m: -D__LANGUAGE_OBJECTIVE_C__ \
- -D_LANGUAGE_OBJECTIVE_C \
- %{!ansi:-DLANGUAGE_OBJECTIVE_C}} \
- %{!.S: -D__LANGUAGE_C__ \
- -D_LANGUAGE_C \
- %{!ansi:-DLANGUAGE_C}}"
-
-#define LINK_SPEC "%{G*} \
- %{!mgas: \
- %{EB} %{!EB:-EB} \
- %{EL: %e-EL not supported} \
- %{bestGnum}}"
+#define CPP_PREDEFINES "-Dr3000 -Dnews3700 -DLANGUAGE_C -DMIPSEB -DSYSTYPE_BSD \
+-Dsony_news -Dsony -Dunix -Dmips -Dhost_mips"
+
+#define ASM_SPEC "\
+%{!mgas: \
+ %{!mrnames: -nocpp} \
+ %{pipe:%e:-pipe not supported} \
+ %{EB} %{!EB:-EB} \
+ %{EL: %e-EL not supported} \
+ %{O:-O2} %{O1:-O2} %{O2:-O2} %{O3:-O3} \
+ %{g} %{g1} %{g2} %{g3} %{g0} %{v} %{K} \
+ %{G*}}"
+
+#define CPP_SPEC "\
+%{!nostdinc: -I/usr/include2.0} \
+%{.cc: -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
+%{.cxx: -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
+%{.C: -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
+%{.m: -D__LANGUAGE_OBJECTIVE_C -D_LANGUAGE_OBJECTIVE_C} \
+%{.S: -D__LANGUAGE_ASSEMBLY -D_LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY}} \
+%{!.S: -D__LANGUAGE_C -D_LANGUAGE_C %{!ansi:-DLANGUAGE_C}}"
+
+#define LINK_SPEC "\
+%{G*} \
+%{!mgas: \
+ %{EB} %{!EB:-EB} \
+ %{EL: %e-EL not supported} \
+ %{bestGnum}}"
#define LIB_SPEC "%{p:-lprof1} %{pg:-lprof1} -lc"
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index 1f1d2c3..61bd204 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -23,9 +23,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} %{g:-lg}"
-/* Provide required defaults for linker -e and -d switches.
- Also, it is hard to debug with shared libraries,
- so don't use them if going to debug. */
+/* Provide required defaults for linker -e and -d switches. */
#define LINK_SPEC "%{!e*:-e start} -dc -dp %{static:-Bstatic} %{assert*}"
@@ -43,14 +41,13 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define WCHAR_TYPE "short unsigned int"
#define WCHAR_TYPE_SIZE 16
-/* Omit frame pointer and enable caller-saves at high optimization levels. */
-
+/* Omit frame pointer at high optimization levels. */
+
#define OPTIMIZATION_OPTIONS(OPTIMIZE) \
{ \
if (OPTIMIZE >= 2) \
{ \
flag_omit_frame_pointer = 1; \
- flag_caller_saves = 1; \
} \
}
diff --git a/gcc/reorg.c b/gcc/reorg.c
index a05be1b..e237b07 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -2204,8 +2204,12 @@ mark_target_live_regs (target, res)
/* If we hit an unconditional branch, we have another way of finding out
what is live: we can see what is live at the branch target and include
anything used but not set before the branch. The only things that are
- live are those that are live using the above test and the test below. */
- if (jump_insn)
+ live are those that are live using the above test and the test below.
+
+ Don't try this if we expired our jump count above, since that would
+ mean there may be an infinite loop in the function being compiled. */
+
+ if (jump_insn && jump_count < 10)
{
rtx jump_target = (GET_CODE (jump_insn) == INSN
? JUMP_LABEL (XVECEXP (PATTERN (jump_insn), 0, 0))