epiphany.h (EPIPHANY_LIBRARY_EXTRA_SPEC): Define.
authorJoern Rennecke <joern.rennecke@embecosm.com>
Thu, 29 Nov 2012 02:12:39 +0000 (02:12 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Thu, 29 Nov 2012 02:12:39 +0000 (02:12 +0000)
        * config/epiphany/epiphany.h (EPIPHANY_LIBRARY_EXTRA_SPEC): Define.
        (EXTRA_SPECS, DRIVER_SELF_SPECS): Likewise.
        * config/epiphany/t-epiphany (SPECS): Set.
        (specs): New rule.

From-SVN: r193917

gcc/ChangeLog
gcc/config/epiphany/epiphany.h
gcc/config/epiphany/t-epiphany

index 6731d7f..6a4c7ee 100644 (file)
@@ -5,6 +5,11 @@
        * config/epiphany/epiphany.md (isub_i+1): New peephole2.
        * config/epiphany/epiphany-protos.h (get_attr_sched_use_fpu): Declare.
 
+       * config/epiphany/epiphany.h (EPIPHANY_LIBRARY_EXTRA_SPEC): Define.
+       (EXTRA_SPECS, DRIVER_SELF_SPECS): Likewise.
+       * config/epiphany/t-epiphany (SPECS): Set.
+       (specs): New rule.
+
 2012-11-28  Jakub Jelinek  <jakub@redhat.com>
 
        PR debug/36728
index 26a908a..8c3b1ae 100644 (file)
@@ -58,6 +58,17 @@ along with GCC; see the file COPYING3.  If not see
 
 #define ENDFILE_SPEC "crtend.o%s crtn.o%s"
 
+#define EPIPHANY_LIBRARY_EXTRA_SPEC \
+  "-ffixed-r40 -ffixed-r41 -ffixed-r42 -ffixed-r43"
+
+/* In the "spec:" rule,, t-epiphany changes this to epiphany_library_stub_spec
+   and epiphany_library_extra_spec, respectively.  */
+#define EXTRA_SPECS \
+  { "epiphany_library_extra_spec", "" }, \
+  { "epiphany_library_build_spec", EPIPHANY_LIBRARY_EXTRA_SPEC }, \
+
+#define DRIVER_SELF_SPECS " %(epiphany_library_extra_spec) "
+
 #undef USER_LABEL_PREFIX
 #define USER_LABEL_PREFIX "_"
 
index 33db4ac..70f41bf 100644 (file)
@@ -30,3 +30,10 @@ resolve-sw-modes.o : $(srcdir)/config/epiphany/resolve-sw-modes.c \
   insn-config.h insn-codes.h $(EMIT_RTL_H) $(RECOG_H) $(FUNCTION_H) \
   insn-attr-common.h $(TREE_PASS_H)
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $<
+
+SPECS = specs.install
+
+specs: specs.install
+       sed -e 's,epiphany_library_extra_spec,epiphany_library_stub_spec,' \
+       -e 's,epiphany_library_build_spec,epiphany_library_extra_spec,' \
+         < specs.install > $@ ; \