On Tue, 26 May 2009 20:08:10 +0100, Dave Korn <dave.korn.cyg...@googlemail.com> wrote: > Hi cegcc-devel, > > I think it would be helpful to have your new target-names implemented in > upstream binutils, and to that end I've extracted a bunch of patches from > your > CVS and the related ChangeLog entries. I've also written a bunch of > patches > for the upstream testsuite and although it's not perfect yet it's a start. > I > haven't tried to extract any of the functional patches from your tree yet, > I > leave that to others, but doing this would help us avoid introducing any > regressions against your targets upstream. Nor have I taken any of the > compiler changes; they can easily be done separately, and it makes sense to > start from the bottom of the toolchain up anyway. > > Everyone in general, and Pedro in particular, are you happy for me to > send > these upstream? I hope I got all the necessary attributions, please let me > know if anything's missing. > > cheers, > DaveK
Hi, Generally here is the patch I am using, maybe you could make a diff. When looking very quickly I could not see pe-dll.c changes.
diff -urN binutils /bfd/config.bfd binutils_090319_patched/bfd/config.bfd --- binutils/bfd/config.bfd 2009-03-18 17:58:33.000000000 +0100 +++ binutils/bfd/config.bfd 2009-03-19 13:52:21.828125000 +0100 @@ -238,7 +238,7 @@ targ_underscore=no targ_cflags=-DARM_COFF_BUGFIX ;; - arm-wince-pe | arm-*-wince | arm-*-mingw32ce*) + arm-wince-* | arm-*-wince | arm-*-mingw32ce* | arm*-*-cegcc*) targ_defvec=arm_wince_pe_little_vec targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec" targ_underscore=no diff -urN binutils/binutils/configure binutils/binutils/configure --- binutils/binutils/configure 2009-03-14 10:11:38.000000000 +0100 +++ binutils/binutils/configure 2009-03-19 13:49:28.796875000 +0100 @@ -16103,7 +16103,7 @@ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ;; - arm-wince-pe* | arm-*-wince) + arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' if test -z "$DLLTOOL_DEFAULT"; then DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" diff -urN binutils/binutils/configure.in binutils/binutils/configure.in --- binutils/binutils/configure.in 2009-03-14 10:11:38.000000000 +0100 +++ binutils/binutils/configure.in 2009-03-19 13:49:00.515625000 +0100 @@ -268,7 +268,7 @@ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ;; - arm-wince-pe* | arm-*-wince) + arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' if test -z "$DLLTOOL_DEFAULT"; then DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" diff -urN binutils/binutils.diff binutils/binutils.diff --- binutils/binutils.diff 1970-01-01 01:00:00.000000000 +0100 +++ binutils/binutils.diff 2009-03-20 15:18:40.671875000 +0100 @@ -0,0 +1,125 @@ +diff -urN ../binutils/bfd/config.bfd ./bfd/config.bfd +--- ../binutils/bfd/config.bfd 2009-03-18 17:58:33.000000000 +0100 ++++ ./bfd/config.bfd 2009-03-19 13:52:21.828125000 +0100 +@@ -238,7 +238,7 @@ + targ_underscore=no + targ_cflags=-DARM_COFF_BUGFIX + ;; +- arm-wince-pe | arm-*-wince | arm-*-mingw32ce*) ++ arm-wince-* | arm-*-wince | arm-*-mingw32ce* | arm*-*-cegcc*) + targ_defvec=arm_wince_pe_little_vec + targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec" + targ_underscore=no +diff -urN ../binutils/binutils/configure ./binutils/configure +--- ../binutils/binutils/configure 2009-03-14 10:11:38.000000000 +0100 ++++ ./binutils/configure 2009-03-19 13:49:28.796875000 +0100 +@@ -16103,7 +16103,7 @@ + BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' + BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' + ;; +- arm-wince-pe* | arm-*-wince) ++ arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) + BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' + if test -z "$DLLTOOL_DEFAULT"; then + DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" +diff -urN ../binutils/binutils/configure.in ./binutils/configure.in +--- ../binutils/binutils/configure.in 2009-03-14 10:11:38.000000000 +0100 ++++ ./binutils/configure.in 2009-03-19 13:49:00.515625000 +0100 +@@ -268,7 +268,7 @@ + BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' + BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' + ;; +- arm-wince-pe* | arm-*-wince) ++ arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) + BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' + if test -z "$DLLTOOL_DEFAULT"; then + DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" +diff -urN ../binutils/binutils.diff ./binutils.diff +--- ../binutils/binutils.diff 1970-01-01 01:00:00.000000000 +0100 ++++ ./binutils.diff 2009-03-20 15:18:18.671875000 +0100 +@@ -0,0 +1,36 @@ ++diff -urN ../binutils/bfd/config.bfd ./bfd/config.bfd ++--- ../binutils/bfd/config.bfd 2009-03-18 17:58:33.000000000 +0100 +++++ ./bfd/config.bfd 2009-03-19 13:52:21.828125000 +0100 ++@@ -238,7 +238,7 @@ ++ targ_underscore=no ++ targ_cflags=-DARM_COFF_BUGFIX ++ ;; ++- arm-wince-pe | arm-*-wince | arm-*-mingw32ce*) +++ arm-wince-* | arm-*-wince | arm-*-mingw32ce* | arm*-*-cegcc*) ++ targ_defvec=arm_wince_pe_little_vec ++ targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec" ++ targ_underscore=no ++diff -urN ../binutils/binutils/configure ./binutils/configure ++--- ../binutils/binutils/configure 2009-03-14 10:11:38.000000000 +0100 +++++ ./binutils/configure 2009-03-19 13:49:28.796875000 +0100 ++@@ -16103,7 +16103,7 @@ ++ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' ++ BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ++ ;; ++- arm-wince-pe* | arm-*-wince) +++ arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) ++ BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' ++ if test -z "$DLLTOOL_DEFAULT"; then ++ DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" ++diff -urN ../binutils/binutils/configure.in ./binutils/configure.in ++--- ../binutils/binutils/configure.in 2009-03-14 10:11:38.000000000 +0100 +++++ ./binutils/configure.in 2009-03-19 13:49:00.515625000 +0100 ++@@ -268,7 +268,7 @@ ++ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' ++ BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ++ ;; ++- arm-wince-pe* | arm-*-wince) +++ arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) ++ BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' ++ if test -z "$DLLTOOL_DEFAULT"; then ++ DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" +diff -urN ../binutils/configure ./configure +--- ../binutils/configure 2009-03-19 00:33:26.000000000 +0100 ++++ ./configure 2009-03-19 13:40:24.062500000 +0100 +@@ -2302,7 +2302,7 @@ + sh-*-linux*) + noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" + ;; +- sh*-*-pe|mips*-*-pe|*arm-wince-pe) ++ sh*-*-pe|mips*-*-pe|*arm-wince-pe|arm*-*-mingw32ce*|arm*-*-cegcc*) + noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-examples" + noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" +diff -urN ../binutils/configure.ac ./configure.ac +--- ../binutils/configure.ac 2009-03-19 00:33:26.000000000 +0100 ++++ ./configure.ac 2009-03-19 13:39:54.359375000 +0100 +@@ -537,7 +537,7 @@ + sh-*-linux*) + noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" + ;; +- sh*-*-pe|mips*-*-pe|*arm-wince-pe) ++ sh*-*-pe|mips*-*-pe|*arm-wince-pe|arm*-*-mingw32ce*|arm*-*-cegcc*) + noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-examples" + noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" +diff -urN ../binutils/gas/config/te-wince-pe.h ./gas/config/te-wince-pe.h +--- ../binutils/gas/config/te-wince-pe.h 2007-07-03 13:01:05.000000000 +0200 ++++ ./gas/config/te-wince-pe.h 2009-03-19 13:47:06.171875000 +0100 +@@ -17,5 +17,8 @@ + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA + 02110-1301, USA. */ + ++#define CPU_DEFAULT ARM_ARCH_V4 ++#define FPU_DEFAULT FPU_ARCH_VFP ++ + #define TE_WINCE + #include "te-pe.h" +diff -urN ../binutils/gas/configure.tgt ./gas/configure.tgt +--- ../binutils/gas/configure.tgt 2009-03-14 10:11:38.000000000 +0100 ++++ ./gas/configure.tgt 2009-03-19 13:46:19.046875000 +0100 +@@ -121,7 +121,8 @@ + arm-*-*n*bsd*) fmt=aout em=nbsd ;; + arm-*-nto*) fmt=elf ;; + arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; +- arm-wince-pe | arm-*-wince) fmt=coff em=wince-pe ;; ++ arm-wince-* | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) ++ fmt=coff em=wince-pe ;; + arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; + arm-*-riscix*) fmt=aout em=riscix ;; + diff -urN binutils/configure binutils/configure --- binutils/configure 2009-03-19 00:33:26.000000000 +0100 +++ binutils/configure 2009-03-19 13:40:24.062500000 +0100 @@ -2302,7 +2302,7 @@ sh-*-linux*) noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) + sh*-*-pe|mips*-*-pe|*arm-wince-pe|arm*-*-mingw32ce*|arm*-*-cegcc*) noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs target-examples" noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" diff -urN binutils/configure.ac binutils/configure.ac --- binutils/configure.ac 2009-03-19 00:33:26.000000000 +0100 +++ binutils/configure.ac 2009-03-19 13:39:54.359375000 +0100 @@ -537,7 +537,7 @@ sh-*-linux*) noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) + sh*-*-pe|mips*-*-pe|*arm-wince-pe|arm*-*-mingw32ce*|arm*-*-cegcc*) noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs target-examples" noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" diff -urN binutils/gas/config/te-wince-pe.h binutils/gas/config/te-wince-pe.h --- binutils/gas/config/te-wince-pe.h 2007-07-03 13:01:05.000000000 +0200 +++ binutils/gas/config/te-wince-pe.h 2009-03-19 13:47:06.171875000 +0100 @@ -17,5 +17,8 @@ Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ +#define CPU_DEFAULT ARM_ARCH_V4 +#define FPU_DEFAULT FPU_ARCH_VFP + #define TE_WINCE #include "te-pe.h" diff -urN binutils/gas/configure.tgt binutils/gas/configure.tgt --- binutils/gas/configure.tgt 2009-03-14 10:11:38.000000000 +0100 +++ binutils/gas/configure.tgt 2009-03-19 13:46:19.046875000 +0100 @@ -121,7 +121,8 @@ arm-*-*n*bsd*) fmt=aout em=nbsd ;; arm-*-nto*) fmt=elf ;; arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; - arm-wince-pe | arm-*-wince) fmt=coff em=wince-pe ;; + arm-wince-* | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) + fmt=coff em=wince-pe ;; arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; arm-*-riscix*) fmt=aout em=riscix ;; diff -urN binutils/ld/configure.tgt binutils/ld/configure.tgt --- binutils/ld/configure.tgt 2009-03-14 10:11:38.000000000 +0100 +++ binutils/ld/configure.tgt 2009-03-19 13:45:19.156250000 +0100 @@ -44,7 +44,11 @@ arc-*-elf*) targ_emul=arcelf ;; arm-epoc-pe) targ_emul=arm_epoc_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; -arm-wince-pe | arm-*-wince) targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; +arm*-*-cegcc*) + targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" + LIB_PATH='${tooldir}/lib/w32api' ;; +arm-wince-* | arm-*-wince | arm*-*-mingw32ce*) + targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; arm-*-pe) targ_emul=armpe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; arm-*-aout | armel-*-aout) targ_emul=armaoutl ;; armeb-*-aout) targ_emul=armaoutb ;; diff -urN binutils/ld/pe-dll.c binutils/ld/pe-dll.c --- binutils/ld/pe-dll.c 2009-02-18 19:23:07.000000000 +0100 +++ binutils/ld/pe-dll.c 2009-03-19 13:41:04.890625000 +0100 @@ -363,11 +363,14 @@ { STRING_COMMA_LEN ("crt0.o") }, { STRING_COMMA_LEN ("crt1.o") }, { STRING_COMMA_LEN ("crt2.o") }, + { STRING_COMMA_LEN ("crt3.o") }, { STRING_COMMA_LEN ("dllcrt1.o") }, { STRING_COMMA_LEN ("dllcrt2.o") }, + { STRING_COMMA_LEN ("dllcrt3.o") }, { STRING_COMMA_LEN ("gcrt0.o") }, { STRING_COMMA_LEN ("gcrt1.o") }, { STRING_COMMA_LEN ("gcrt2.o") }, + { STRING_COMMA_LEN ("gcrt3.o") }, { STRING_COMMA_LEN ("crtbegin.o") }, { STRING_COMMA_LEN ("crtend.o") }, { NULL, 0 }
------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp as they present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com
_______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel