aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRainer Orth <ro@TechFak.Uni-Bielefeld.DE>2008-11-20 17:13:01 +0000
committerRainer Orth <ro@gcc.gnu.org>2008-11-20 17:13:01 +0000
commit19523300a00967225f9d377b241c8442aa261792 (patch)
tree05532f9b36c19db3ba4c3c2a298e1d0c80348696 /gcc
parent7391b59739f9c1dc026643d78f16ea6b0e0b3f7a (diff)
downloadgcc-19523300a00967225f9d377b241c8442aa261792.zip
gcc-19523300a00967225f9d377b241c8442aa261792.tar.gz
gcc-19523300a00967225f9d377b241c8442aa261792.tar.bz2
re PR bootstrap/33100 (on bootstrap getting section .eh_frame: bad cie version 0: offset 0x0)
gcc: PR bootstrap/33100 * config.gcc (i[34567]86-*-solaris2*): Don't include i386/t-crtstuff here. Move extra_parts, i386/t-sol2 in tmake_file to libgcc/config.host. * config/i386/t-sol2: Move to libgcc/config/i386. libgcc: PR bootstrap/33100 * configure.ac (i?86-*-solaris2.1[0-9]*): Only include i386/t-crtstuff if linker supports ZERO terminator unwind entries. * configure: Regenerate. * config.host (i[34567]86-*-solaris2*): Move i386/t-sol2 in tmake_file here from gcc/config.gcc. Move extra_parts here from gcc/config.gcc. * config/i386/t-sol2: Move here from gcc/config/i386. Use gcc_srcdir instead of srcdir. From-SVN: r142050
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config.gcc13
-rw-r--r--gcc/config/i386/t-sol234
3 files changed, 13 insertions, 42 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fa60fd5..af07c93 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2008-11-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR bootstrap/33100
+ * config.gcc (i[34567]86-*-solaris2*): Don't include
+ i386/t-crtstuff here.
+ Move extra_parts, i386/t-sol2 in tmake_file to libgcc/config.host.
+ * config/i386/t-sol2: Move to libgcc/config/i386.
+
2008-11-20 Samuel Thibault <samuel.thibault@ens-lyon.org>
PR driver/21706
diff --git a/gcc/config.gcc b/gcc/config.gcc
index ae60bcd..a78dcc0 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1173,7 +1173,7 @@ i[34567]86-*-solaris2*)
;;
esac
tm_file="${tm_file} i386/sol2.h"
- tmake_file="${tmake_file} t-sol2 i386/t-sol2 t-svr4"
+ tmake_file="${tmake_file} t-sol2 t-svr4"
c_target_objs="${c_target_objs} sol2-c.o"
cxx_target_objs="${cxx_target_objs} sol2-c.o"
extra_objs="sol2.o"
@@ -1192,7 +1192,10 @@ i[34567]86-*-solaris2*)
*-*-solaris2.1[0-9]*)
tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h"
tm_defines="${tm_defines} TARGET_BI_ARCH=1"
- tmake_file="$tmake_file i386/t-crtstuff i386/t-sol2-10"
+ tmake_file="$tmake_file i386/t-sol2-10"
+ # i386/t-crtstuff only affects libgcc. Its inclusion
+ # depends on a runtime test and is thus performed in
+ # libgcc/configure.ac instead.
need_64bit_hwint=yes
case X"${with_cpu}" in
Xgeneric|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx)
@@ -1208,12 +1211,6 @@ i[34567]86-*-solaris2*)
exit 1
;;
esac
- # Solaris 2.10 provides crt1.o, crti.o, crtn.o, and gcrt1.o as
- # part of the base system.
- extra_parts="gmon.o crtbegin.o crtend.o"
- ;;
- *)
- extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
;;
esac
case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
diff --git a/gcc/config/i386/t-sol2 b/gcc/config/i386/t-sol2
deleted file mode 100644
index 0eec96f..0000000
--- a/gcc/config/i386/t-sol2
+++ /dev/null
@@ -1,34 +0,0 @@
-# gmon build rule:
-$(T)gmon.o: $(srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H)
- $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \
- -c $(srcdir)/config/i386/gmon-sol2.c -o $(T)gmon.o
-
-# Assemble startup files.
-# Apparently Sun believes that assembler files don't need comments, because no
-# single ASCII character is valid (tried them all). So we manually strip out
-# the comments with sed. This bug may only be in the Early Access releases.
-$(T)gcrt1.o: $(srcdir)/config/i386/sol2-gc1.asm $(GCC_PASSES)
- sed -e '/^!/d' <$(srcdir)/config/i386/sol2-gc1.asm >gcrt1.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)gcrt1.o gcrt1.s
-$(T)crt1.o: $(srcdir)/config/i386/sol2-c1.asm $(GCC_PASSES)
- sed -e '/^!/d' <$(srcdir)/config/i386/sol2-c1.asm >crt1.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o crt1.s
-$(T)crti.o: $(srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES)
- sed -e '/^!/d' <$(srcdir)/config/i386/sol2-ci.asm >crti.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o crti.s
-$(T)crtn.o: $(srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES)
- sed -e '/^!/d' <$(srcdir)/config/i386/sol2-cn.asm >crtn.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o crtn.s
-
-# We need to use -fPIC when we are using gcc to compile the routines in
-# crtstuff.c. This is only really needed when we are going to use gcc/g++
-# to produce a shared library, but since we don't know ahead of time when
-# we will be doing that, we just always use -fPIC when compiling the
-# routines in crtstuff.c.
-#
-# We must also enable optimization to avoid having any code appear after
-# the call & alignment statement, but before we switch back to the
-# .text section.
-
-CRTSTUFF_T_CFLAGS = -fPIC -O2
-TARGET_LIBGCC2_CFLAGS = -fPIC