Most of the tests in gcc.c-torture/execute/builtins that use LTO torture
options "-O2 -flto -fuse-linker-plugin -fno-fat-lto-objects" fail to
link on EABI and ELF targets with multiple definitions for either memset
or strlen.  I filed PR testsuite/55994 and was told that the fix is to
run the tests for those targets with "-Wl,--allow-multiple-definition".
This patch adds that option to the flags used for the builtins tests
for EABI and ELF targets.

That option is probably also needed for RTEMS targets; I've copied Joel
so he can look into that.

Tested on arm-none-eabi; OK for mainline?

Janis
2013-01-15  Janis Johnson  <jani...@codesourcery.com>

        PR testsuite/55994
        * gcc.c-torture/execute/builtins/builtins.exp: Add
        -Wl,--allow-multiple-definition for eabi and elf targets.

Index: testsuite/gcc.c-torture/execute/builtins/builtins.exp
===================================================================
--- testsuite/gcc.c-torture/execute/builtins/builtins.exp       (revision 
195211)
+++ testsuite/gcc.c-torture/execute/builtins/builtins.exp       (working copy)
@@ -41,6 +41,10 @@
 if [istarget "powerpc-*-darwin*"] {
    lappend additional_flags "-Wl,-multiply_defined,suppress"
 }
+if { [istarget *-*-eabi*]
+     || [istarget *-*-elf] } {
+   lappend additional_flags "-Wl,--allow-multiple-definition"
+}
 
 foreach src [lsort [find $srcdir/$subdir *.c]] {
     if {![string match *-lib.c $src] && [runtest_file_p $runtests $src]} {

Reply via email to