> Hi Jan, > > > * g++.dg/lto/alias-3_0.C: New file. > > * g++.dg/lto/alias-3_1.c: New file. > > the new test has a couple of problems: DejaGnu warns everywhere: > > WARNING: lto.exp does not support dg-lto-do in secondary source files > WARNING: lto.exp does not support dg-lto-options in secondary source files > > This would have been prominent in either mail-report.log or the runtest > output. > > Besides, the test FAILs in the same way as its companions lto/alias-[12] > on Solaris (PRs ipa/90720 and lto/91028). Your fix for the latter two > didn't change anything, btw., neither on Solaris nor on Linux/x86_64 > with -fno-use-linker-plugin. Hi, sorry for the noise. This patch fixes -fno-use-linker-plugin for me and also removes the extra dg-do I forgot in alias_3-1.c
* alias-1_0.C: Use -O3. * alias-2_0.C: Use -O3. * alias-3_0.C: Add loop to enable inlining with -fno-use-linker-plugin. * alias-3_1.C: Remove dg-lto-do and dg-lto-options. Index: g++.dg/lto/alias-1_0.C =================================================================== --- g++.dg/lto/alias-1_0.C (revision 273478) +++ g++.dg/lto/alias-1_0.C (working copy) @@ -1,5 +1,5 @@ /* { dg-lto-do run } */ -/* { dg-lto-options { { -O2 -flto } } } */ +/* { dg-lto-options { { -O3 -flto } } } */ /* With LTO we consider all pointers to incomplete types to be possibly aliasing. This makes *bptr to alias with aptr. Index: g++.dg/lto/alias-2_0.C =================================================================== --- g++.dg/lto/alias-2_0.C (revision 273478) +++ g++.dg/lto/alias-2_0.C (working copy) @@ -1,5 +1,5 @@ /* { dg-lto-do run } */ -/* { dg-lto-options { { -O2 -flto } } } */ +/* { dg-lto-options { { -O3 -flto } } } */ /* With LTO we consider all pointers to incomplete types to be possibly aliasing. This makes *bptr to alias with aptr. Index: g++.dg/lto/alias-3_0.C =================================================================== --- g++.dg/lto/alias-3_0.C (revision 273478) +++ g++.dg/lto/alias-3_0.C (working copy) @@ -14,13 +14,15 @@ __attribute__ ((used)) struct b b, *bptr __attribute__ ((used)) int i,j; extern "C" void inline_me_late (void); +int n=1; int main (void) { int jj=j; bptr2->a[jj].bar = 0; - inline_me_late (); + for (int i=0; i<n; i++) + inline_me_late (); if (!__builtin_constant_p (bptr2->a[jj].bar == 0)) __builtin_abort (); return 0; Index: g++.dg/lto/alias-3_1.c =================================================================== --- g++.dg/lto/alias-3_1.c (revision 273478) +++ g++.dg/lto/alias-3_1.c (working copy) @@ -1,5 +1,3 @@ -/* { dg-lto-do run } */ -/* { dg-lto-options { { -O3 -flto -fno-early-inlining } } } */ struct a { int foo,bar;