Commit c1a7cdbb by Jan Hubicka Committed by Jan Hubicka

lto.exp (lto_init): Test slib lto and no-liker-plugin path.

	* lib/lto.exp (lto_init): Test slib lto and no-liker-plugin path.
	* lto/gcc-dg.exp (check_effective_target_lto): Likewise.
	* lto/c-torture.exp: Likewise.
	* execute/bultins/strstr-asm.c: Force fat LTO.
	* gcc.c-torture/compile/sync-1.c: Likewise.
	* gcc.c-torture/compile/sync-1.c: Likewise.
	* gcc.c-torture/compile/sync-3.c: Likewise.
	* gcc.dg/noncompile/invalid_asm.c: Likewise.
	* gcc.dg/noncompile/920507-1.c: Likewise.
	* gcc.dg/torture/pr36400.c: Likewise.
	* g++.dg/torture/pr34850.C: Likewise.

From-SVN: r180245
parent 1d6d1a92
2011-10-19 Jan Hubicka <jh@suse.cz>
* lib/lto.exp (lto_init): Test slib lto and no-liker-plugin path.
* lto/gcc-dg.exp (check_effective_target_lto): Likewise.
* lto/c-torture.exp: Likewise.
* execute/bultins/strstr-asm.c: Force fat LTO.
* gcc.c-torture/compile/sync-1.c: Likewise.
* gcc.c-torture/compile/sync-1.c: Likewise.
* gcc.c-torture/compile/sync-3.c: Likewise.
* gcc.dg/noncompile/invalid_asm.c: Likewise.
* gcc.dg/noncompile/920507-1.c: Likewise.
* gcc.dg/torture/pr36400.c: Likewise.
* g++.dg/torture/pr34850.C: Likewise.
2011-10-20 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/source_ref1.adb: New test.
......
/* { dg-do compile } */
/* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
/* { dg-options "-ffat-lto-objects" } */
typedef unsigned char uint8_t;
typedef unsigned int uint32_t;
......
/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
/* { dg-options "-ffat-lto-objects" } */
/* Validate that each of the __sync builtins compiles. This won't
necessarily link, since the target might not support the builtin,
......
/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
/* { dg-options "-ffat-lto-objects" } */
/* Validate that each of the __sync builtins compiles. This won't
necessarily link, since the target might not support the builtin,
......
/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
/* { dg-options "-ffat-lto-objects" } */
/* Validate that each of the __sync builtins compiles. This won't
necessarily link, since the target might not support the builtin,
......
......@@ -2,6 +2,7 @@
Ensure all expected transformations of builtin strstr occur and
perform correctly in presence of redirect. */
/* { dg-options "-ffat-lto-objects" } */
#define ASMNAME(cname) ASMNAME2 (__USER_LABEL_PREFIX__, cname)
#define ASMNAME2(prefix, cname) STRING (prefix) cname
......
/* { dg-options "-ffat-lto-objects" } */
int *
x(void)
{
......
/* { dg-options "-ffat-lto-objects" } */
asm_invalid_register_name()
{
asm("":::"this_is_an_invalid_register_name"); /* { dg-error "unknown register" } */
......
/* { dg-do compile } */
/* { dg-options "-ffat-lto-objects" } */
struct barstruct { char const* some_string; };
......
......@@ -52,10 +52,19 @@ if [info exists ADDITIONAL_TORTURE_OPTIONS] {
set LTO_TORTURE_OPTIONS ""
if [check_effective_target_lto] {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -flto-partition=none } \
{ -O2 -flto }
]
# When having plugin test both slim and fat LTO and plugin/nonplugin
# path.
if [check_linker_plugin_available] {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -fno-use-linker-plugin -flto-partition=none } \
{ -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects }
]
} else {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -flto-partition=none } \
{ -O2 -flto }
]
}
}
global GCC_UNDER_TEST
......
......@@ -69,10 +69,19 @@ if [info exists ADDITIONAL_TORTURE_OPTIONS] {
set LTO_TORTURE_OPTIONS ""
if [check_effective_target_lto] {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -flto-partition=none } \
{ -O2 -flto }
]
# When having plugin test both slim and fat LTO and plugin/nonplugin
# path.
if [check_linker_plugin_available] {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -fno-use-linker-plugin -flto-partition=none } \
{ -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects }
]
} else {
set LTO_TORTURE_OPTIONS [list \
{ -O2 -flto -flto-partition=none } \
{ -O2 -flto }
]
}
}
......
......@@ -66,14 +66,25 @@ proc lto_init { args } {
# You can put this in the environment before site.exp is written or
# add it to site.exp directly.
if ![info exists LTO_OPTIONS] {
set LTO_OPTIONS [list \
{-O0 -flto -flto-partition=none } \
{-O2 -flto -flto-partition=none } \
{-O0 -flto -flto-partition=1to1 } \
{-O2 -flto -flto-partition=1to1 } \
{-O0 -flto} \
{-O2 -flto} \
]
if [check_linker_plugin_available] {
set LTO_OPTIONS [list \
{-O0 -flto -flto-partition=none -fuse-linker-plugin} \
{-O2 -flto -flto-partition=none -fuse-linker-plugin -fno-fat-lto-objects } \
{-O0 -flto -flto-partition=1to1 -fno-use-linker-plugin } \
{-O2 -flto -flto-partition=1to1 -fno-use-linker-plugin } \
{-O0 -flto -fuse-linker-plugin -fno-fat-lto-objects } \
{-O2 -flto -fuse-linker-plugin} \
]
} else {
set LTO_OPTIONS [list \
{-O0 -flto -flto-partition=none } \
{-O2 -flto -flto-partition=none } \
{-O0 -flto -flto-partition=1to1 } \
{-O2 -flto -flto-partition=1to1 } \
{-O0 -flto } \
{-O2 -flto} \
]
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment