Patchwork [testsuite] add option to LTO flags for c-torture/execute/builtins tests

login
register
mail settings
Submitter Janis Johnson
Date Jan. 15, 2013, 7:47 p.m.
Message ID <50F5B26D.8030705@mentor.com>
Download mbox | patch
Permalink /patch/212302/
State New
Headers show

Comments

Janis Johnson - Jan. 15, 2013, 7:47 p.m.
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  <janisjo@codesourcery.com>

	PR testsuite/55994
	* gcc.c-torture/execute/builtins/builtins.exp: Add
	-Wl,--allow-multiple-definition for eabi and elf targets.
Hans-Peter Nilsson - Jan. 16, 2013, 2:32 a.m.
On Tue, 15 Jan 2013, Janis Johnson wrote:
> 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?

Weird that I don't see this for cris-elf test-results.  Can't
help wondering if there's something wrong target-wise then. :)

As you noticed (cross-referenced PR) I do see it for
mmix-knuth-mmixware.  I'll have to check and likely add that to
the glob in your patch.  Thanks, one less mystery (but another added).

brgds, H-P

Patch

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]} {