On Mon, Nov 21, 2011 at 11:01 AM, Rainer Orth <[email protected]> wrote: > As reported in the PR, powerpc-rtems bootstrap (and certainly several > other powerpc targets) is currently broken since rs6000/ibm-ldouble.c > appears twice in LIB2ADD, once from rs6000/t-ppccomm and > rs6000/t-ppccomm-ldbl, which confuses make. > > It took me a while to understand how we got into that situation. Here's > what I found: before the toplevel libgcc move started, we had both > gcc/config/rs6000/t-ppccomm and libgcc/config/rs6000/t-ppccomm. The > second is a superset of the first, in that it contains LIB2ADD_ST += > crtsavfpr.S crtresfpr.S and many other similar files. > > The set of targets using the gcc and libgcc files differs: > > gcc/config/rs6000/t-ppccomm libgcc/config/rs6000/t-ppccomm > > powerpc-*-freebsd* powerpc-*-freebsd* > powerpc-*-eabispe* powerpc-*-eabispe* > powerpc-*-eabisimaltivec* > powerpc-*-eabisim* > powerpc-*-elf* > powerpc-*-eabialtivec* > powerpc-xilinx-eabi* > powerpc-*-eabi* powerpc-*-eabi* > powerpc-*-rtems* > powerpc-*-linux* powerpc-*-linux* > | powerpc64-*-linux* | powerpc64-*-linux* > powerpc-*-gnu-gnualtivec* > powerpc-*-gnu* > powerpc-wrs-vxworks > | powerpc-wrs-vxworksae > powerpcle-*-elf* > powerpcle-*-eabisim* > powerpcle-*-eabi* > > When I started the move, I introduced > libgcc/config/rs6000/t-ppccomm-ldbl since I couldn't simply use the > existing t-ppccomm file which is used on a far smaller set of targets. > > To reach an end state matching what we had before the move, I propose to > instead create a separate t-savresfgpr (for {sav,res}{fpr,gpr,gprctr}) > that only contains the additional files and add that to the targets that > had it before, and remove t-ppccomm-ldbl to avoid the duplication. > > When checking this, I noticed that powerpc-vxworks had lost > rs6000/t-ppccomm, which the patch adds back. > > I'd really appreciate if some affected targets could fully test the > patch. > > Thanks. > Rainer > > > 2011-11-20 Rainer Orth <[email protected]> > > PR other/51022 > * config/rs6000/t-savresfgpr: New file. > * config/rs6000/t-ppccomm (LIB2ADD_ST): Remove all but > $(srcdir)/config/rs6000/eabi.S. > * config/rs6000/t-ppccomm-ldbl: Remove. > * config.host (powerpc-*-freebsd*): Add rs6000/t-savresfgpr to > tmake_file. > (powerpc-*-eabispe*): Likewise. > (powerpc-*-eabi*): Likewise. > (powerpc-*-linux*, powerpc64-*-linux*): Likewise. > (powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add rs6000/t-ppccomm > to tmake_file, remove rs6000/t-ppccomm-ldbl. > (powerpc-*-eabisimaltivec*): Remove rs6000/t-ppccomm-ldbl from > tmake_file. > (powerpc-*-eabisim*): Likewise. > (powerpc-*-elf*): Likewise. > (powerpc-*-eabialtivec*): Likewise. > (powerpc-xilinx-eabi*): Likewise. > (powerpc-*-rtems*): Likewise. > (powerpcle-*-elf*): Likewise. > (powerpcle-*-eabisim*): Likewise. > (powerpcle-*-eabi*): Likewise.
Okay. I was hoping that other targets affected by the patch would test it as well. Thanks, David
