On 03/19/2013 04:50 PM, Andrew Pinski wrote:
On Tue, Mar 19, 2013 at 3:30 AM, Sebastian Huber
<sebastian.huber@embedded-brains.de> wrote:
Hello,
I test currently the GCC 4.8 release candidate. Some GCC LTO tests fail
for
me since the introduction of LTO in GCC. I use Binutils 2.23.1 for
PowerPC
EABI (powerpc-rtems4.11 target) configured with:
/scratch/archive/binutils-2.23.1/configure --target=powerpc-rtems4.11
--prefix=/scratch/install-4.8.0-RC-20130316 --disable-werror
--enable-lto
For GCC I use:
/scratch/archive/gcc-4.8.0-RC-20130316/configure --disable-werror
--enable-threads=rtems --with-gnu-as --disable-multilib --enable-lto
--enable-newlib-mb --enable-newlib-iconv --with-gnu-ld --with-newlib
--verbose --with-system-zlib --disable-nls
--enable-version-specific-runtime-libs --enable-languages=c,c++
--target=powerpc-rtems4.11 --prefix=/scratch/install-4.8.0-RC-20130316
The easiest fix is inside the GCC testsuite itself. In
testsuite/gcc.c-torture/execute/builtins/builtins.exp change:
if { [istarget *-*-eabi*]
|| [istarget *-*-elf] } {
lappend additional_flags "-Wl,--allow-multiple-definition"
}
To:
if { [istarget *-*-eabi*]
|| [istarget *-*-elf]
|| [istarget *-*-rtems*]} {
lappend additional_flags "-Wl,--allow-multiple-definition"
}
Ok, so you say that this multiple definition with LTO is intentional for
statically linked applications?