summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch150
1 files changed, 150 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch
new file mode 100644
index 0000000000..8771bfc7b6
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0307-config.gcc-sparc-elf-Add-sparc-t-crtin.patch
@@ -0,0 +1,150 @@
1From a6bb991323a90fe945a0989119412916048b9254 Mon Sep 17 00:00:00 2001
2From: ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Sun, 22 May 2011 20:03:43 +0000
4Subject: [PATCH] * config.gcc (sparc-*-elf*): Add sparc/t-crtin.
5 (sparc-*-rtems*): Likewise.
6 (sparc64-*-elf*): Likewise.
7 (sparc64-*-rtems*): Likewise.
8 (sparc*-*-solaris2*): Likewise. Remove crti.o crtn.o extra parts.
9 * config/sparc/t-crtin: New file.
10 * config/sparc/t-sol2 (crti.o): Delete rule.
11 (crtn.o): Likewise.
12 * config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Delete.
13 * config/sparc/t-sol2-64 (EXTRA_MULTILIB_PARTS): Likewise.
14 * config/sparc/sp64-elf.h (STARTFILE_SPEC): Tidy and add crti.o.
15 (ENDFILE_SPEC): Add crtn.o.
16
17git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@174042 138bc75d-0d04-0410-961f-82ee72b054a4
18
19index 1f13564..ada68dd 100644
20--- a/gcc/config.gcc
21+++ b/gcc/config.gcc
22@@ -2522,12 +2522,12 @@ sparc-*-elf*)
23 tmake_file="sparc/t-elf"
24 ;;
25 esac
26- tmake_file="${tmake_file} sparc/t-crtfm"
27+ tmake_file="${tmake_file} sparc/t-crtin sparc/t-crtfm"
28 extra_parts="crtbegin.o crtend.o"
29 ;;
30 sparc-*-rtems*)
31 tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h"
32- tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
33+ tmake_file="sparc/t-elf sparc/t-crtin sparc/t-crtfm t-rtems"
34 extra_parts="crtbegin.o crtend.o"
35 ;;
36 sparc-*-linux*)
37@@ -2585,7 +2585,7 @@ sparc*-*-solaris2*)
38 tm_file="${tm_file} sol2-gld.h sparc/sol2-gld-bi.h"
39 fi
40 tm_file="${tm_file} tm-dwarf2.h"
41- tmake_file="t-sol2 sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
42+ tmake_file="t-sol2 sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtin sparc/t-crtfm"
43 if test x$gnu_ld = xyes; then
44 tmake_file="$tmake_file t-slibgcc-elf-ver"
45 else
46@@ -2598,7 +2598,7 @@ sparc*-*-solaris2*)
47 cxx_target_objs="sol2-c.o"
48 extra_objs="sol2.o"
49 tm_p_file="${tm_p_file} sol2-protos.h"
50- extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
51+ extra_parts="crt1.o gcrt1.o gmon.o crtbegin.o crtend.o"
52 case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
53 "":yes:* | yes:yes:* )
54 thread_file=posix
55@@ -2615,13 +2615,13 @@ sparc-wrs-vxworks)
56 sparc64-*-elf*)
57 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h"
58 extra_options="${extra_options} sparc/little-endian.opt"
59- tmake_file="${tmake_file} sparc/t-crtfm"
60+ tmake_file="${tmake_file} sparc/t-crtin sparc/t-crtfm"
61 extra_parts="crtbegin.o crtend.o"
62 ;;
63 sparc64-*-rtems*)
64 tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h sparc/rtemself.h rtems.h"
65 extra_options="${extra_options} sparc/little-endian.opt"
66- tmake_file="${tmake_file} sparc/t-crtfm t-rtems"
67+ tmake_file="${tmake_file} sparc/t-crtin sparc/t-crtfm t-rtems"
68 extra_parts="crtbegin.o crtend.o"
69 ;;
70 sparc64-*-linux*)
71diff --git a/gcc/config/sparc/sp64-elf.h b/gcc/config/sparc/sp64-elf.h
72index fe49a79..c15e9ad 100644
73--- a/gcc/config/sparc/sp64-elf.h
74+++ b/gcc/config/sparc/sp64-elf.h
75@@ -53,18 +53,13 @@ along with GCC; see the file COPYING3. If not see
76 %{mlittle-endian:-EL} \
77 "
78
79-/* We need something a little simpler for the embedded environment.
80- Profiling doesn't really work yet so we just copy the default. */
81 #undef STARTFILE_SPEC
82-#define STARTFILE_SPEC "\
83-%{!shared:%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}} \
84-crtbegin.o%s \
85-"
86+#define STARTFILE_SPEC "crt0.o%s crti.o%s crtbegin.o%s"
87
88 #undef ENDFILE_SPEC
89 #define ENDFILE_SPEC \
90 "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
91- crtend.o%s"
92+ crtend.o%s crtn.o%s"
93
94 /* Use the default (for now). */
95 #undef LIB_SPEC
96diff --git a/gcc/config/sparc/t-crtin b/gcc/config/sparc/t-crtin
97new file mode 100644
98index 0000000..2612bac
99--- /dev/null
100+++ b/gcc/config/sparc/t-crtin
101@@ -0,0 +1,6 @@
102+EXTRA_PARTS += crti.o crtn.o
103+
104+$(T)crti.o: $(srcdir)/config/sparc/sol2-ci.asm $(GCC_PASSES)
105+ $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-ci.asm
106+$(T)crtn.o: $(srcdir)/config/sparc/sol2-cn.asm $(GCC_PASSES)
107+ $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-cn.asm
108diff --git a/gcc/config/sparc/t-linux64 b/gcc/config/sparc/t-linux64
109index 4a7de45..74d0489 100644
110--- a/gcc/config/sparc/t-linux64
111+++ b/gcc/config/sparc/t-linux64
112@@ -31,9 +31,6 @@ MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR)
113 LIBGCC = stmp-multilib
114 INSTALL_LIBGCC = install-multilib
115
116-EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o \
117- crtfastmath.o
118-
119 CRTSTUFF_T_CFLAGS = `if test x$$($(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) \
120 -print-multi-os-directory) \
121 = x../lib64; then echo -mcmodel=medany; fi`
122diff --git a/gcc/config/sparc/t-sol2 b/gcc/config/sparc/t-sol2
123index 9db0c13..b7f665b 100644
124--- a/gcc/config/sparc/t-sol2
125+++ b/gcc/config/sparc/t-sol2
126@@ -26,10 +26,6 @@ $(T)gmon.o: $(srcdir)/config/sparc/gmon-sol2.c $(GCC_PASSES) \
127 # Assemble startup files.
128 $(T)crt1.o: $(srcdir)/config/sparc/sol2-c1.asm $(GCC_PASSES)
129 $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-c1.asm
130-$(T)crti.o: $(srcdir)/config/sparc/sol2-ci.asm $(GCC_PASSES)
131- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-ci.asm
132-$(T)crtn.o: $(srcdir)/config/sparc/sol2-cn.asm $(GCC_PASSES)
133- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-cn.asm
134 $(T)gcrt1.o: $(srcdir)/config/sparc/sol2-c1.asm $(GCC_PASSES)
135 $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -DGCRT1 -o $(T)gcrt1.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-c1.asm
136
137diff --git a/gcc/config/sparc/t-sol2-64 b/gcc/config/sparc/t-sol2-64
138index a9f4ec1..1802239 100644
139--- a/gcc/config/sparc/t-sol2-64
140+++ b/gcc/config/sparc/t-sol2-64
141@@ -5,6 +5,3 @@ MULTILIB_OSDIRNAMES = . sparcv9
142
143 LIBGCC = stmp-multilib
144 INSTALL_LIBGCC = install-multilib
145-
146-EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o gmon.o crt1.o crti.o crtn.o gcrt1.o \
147- crtfastmath.o
148--
1491.7.0.4
150