diff mbox

Use i386/t-crtstuff for i?86-elf and x86_64-elf

Message ID Pine.LNX.4.64.1110032213580.22230@digraph.polyomino.org.uk
State New
Headers show

Commit Message

Joseph Myers Oct. 3, 2011, 10:14 p.m. UTC
i?86-elf and x86_64-elf targets default to
-fasynchronous-unwind-tables, like most other x86 targets, and so
since they build crtend.o they need to build it with
-fno-asynchronous-unwind-tables, like other targets.  This patch
accordingly makes them use i386/t-crtstuff.

I'm not set up for full testing of these targets with FSF sources, but
did a sanity check on this patch by building cc1 for i686-elf, and in
a 4.6-based tree it fixes "ld: error in crtend.o(.eh_frame); no
.eh_frame_hdr table will be created.".  OK to commit?

2011-10-03  Joseph Myers  <joseph@codesourcery.com>

	* config.gcc (i[34567]86-*-elf*, x86_64-*-elf*): Use
	i386/t-crtstuff.

Comments

Paolo Bonzini Oct. 4, 2011, 6:55 a.m. UTC | #1
On 10/04/2011 12:14 AM, Joseph S. Myers wrote:
> i?86-elf and x86_64-elf targets default to
> -fasynchronous-unwind-tables, like most other x86 targets, and so
> since they build crtend.o they need to build it with
> -fno-asynchronous-unwind-tables, like other targets.  This patch
> accordingly makes them use i386/t-crtstuff.

Ok.

Paolo
diff mbox

Patch

Index: gcc/config.gcc
===================================================================
--- gcc/config.gcc	(revision 179480)
+++ gcc/config.gcc	(working copy)
@@ -1229,11 +1229,11 @@  x86_64-*-darwin*)
 	;;
 i[34567]86-*-elf*)
 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h"
-	tmake_file="${tmake_file} i386/t-i386elf t-svr4"
+	tmake_file="${tmake_file} i386/t-i386elf i386/t-crtstuff t-svr4"
 	;;
 x86_64-*-elf*)
 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h"
-	tmake_file="${tmake_file} i386/t-i386elf t-svr4"
+	tmake_file="${tmake_file} i386/t-i386elf i386/t-crtstuff t-svr4"
 	;;
 i[34567]86-*-freebsd*)
 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"