diff mbox series

[testsuite,guality] Add -fno-ipa-icf in gcc.dg/guality

Message ID 20180713091835.7behph5r2z4gcek3@delia
State New
Headers show
Series [testsuite,guality] Add -fno-ipa-icf in gcc.dg/guality | expand

Commit Message

Tom de Vries July 13, 2018, 9:18 a.m. UTC
Hi,

Optimization fipa-icf breaks debug info (as is noted in PR63572 - "ICF
breaks user debugging experience"), which make guality tests clztest.c,
ctztest.c and sra-1.c unsupported for option combination "-O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects".  F.i., in clztest.c foo and bar are
merged, and gdb can set a breakpoint on a line in foo, but trying to set a
breakpoint on a line in bar results in a breakpoint in main instead.

This patch works around the problem by adding -fno-ipa-icf (as is already done
in csttest.c and pr43077-1.c) to those testcases:
...
-UNSUPPORTED: gcc.dg/guality/clztest.c ... line . g == f
+PASS:        gcc.dg/guality/clztest.c ... line . g == f
-UNSUPPORTED: gcc.dg/guality/ctztest.c ... line . g == f
+PASS:        gcc.dg/guality/ctztest.c ... line . g == f
-UNSUPPORTED: gcc.dg/guality/sra-1.c ... line .+1 a[0] == 4
+PASS:        gcc.dg/guality/sra-1.c ... line .+1 a[0] == 4
-UNSUPPORTED: gcc.dg/guality/sra-1.c ... line . a[1] == 14
+PASS:        gcc.dg/guality/sra-1.c ... line . a[1] == 14
...

Tested on x86_64.

OK for trunk?

Thanks,
- Tom

[testsuite, guality] Add -fno-ipa-icf in gcc.dg/guality

2018-07-13  Tom de Vries  <tdevries@suse.de>

	* gcc.dg/guality/clztest.c: Add -fno-ipa-icf in dg-options.
	* gcc.dg/guality/ctztest.c: Same.
	* gcc.dg/guality/sra-1.c: Same.

---
 gcc/testsuite/gcc.dg/guality/clztest.c | 2 +-
 gcc/testsuite/gcc.dg/guality/ctztest.c | 2 +-
 gcc/testsuite/gcc.dg/guality/sra-1.c   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

Comments

Richard Biener July 13, 2018, 11:09 a.m. UTC | #1
On Fri, Jul 13, 2018 at 11:18 AM Tom de Vries <tdevries@suse.de> wrote:
>
> Hi,
>
> Optimization fipa-icf breaks debug info (as is noted in PR63572 - "ICF
> breaks user debugging experience"), which make guality tests clztest.c,
> ctztest.c and sra-1.c unsupported for option combination "-O2 -flto
> -fuse-linker-plugin -fno-fat-lto-objects".  F.i., in clztest.c foo and bar are
> merged, and gdb can set a breakpoint on a line in foo, but trying to set a
> breakpoint on a line in bar results in a breakpoint in main instead.
>
> This patch works around the problem by adding -fno-ipa-icf (as is already done
> in csttest.c and pr43077-1.c) to those testcases:
> ...
> -UNSUPPORTED: gcc.dg/guality/clztest.c ... line . g == f
> +PASS:        gcc.dg/guality/clztest.c ... line . g == f
> -UNSUPPORTED: gcc.dg/guality/ctztest.c ... line . g == f
> +PASS:        gcc.dg/guality/ctztest.c ... line . g == f
> -UNSUPPORTED: gcc.dg/guality/sra-1.c ... line .+1 a[0] == 4
> +PASS:        gcc.dg/guality/sra-1.c ... line .+1 a[0] == 4
> -UNSUPPORTED: gcc.dg/guality/sra-1.c ... line . a[1] == 14
> +PASS:        gcc.dg/guality/sra-1.c ... line . a[1] == 14
> ...
>
> Tested on x86_64.
>
> OK for trunk?

OK.

Thanks,
Richard.

> Thanks,
> - Tom
>
> [testsuite, guality] Add -fno-ipa-icf in gcc.dg/guality
>
> 2018-07-13  Tom de Vries  <tdevries@suse.de>
>
>         * gcc.dg/guality/clztest.c: Add -fno-ipa-icf in dg-options.
>         * gcc.dg/guality/ctztest.c: Same.
>         * gcc.dg/guality/sra-1.c: Same.
>
> ---
>  gcc/testsuite/gcc.dg/guality/clztest.c | 2 +-
>  gcc/testsuite/gcc.dg/guality/ctztest.c | 2 +-
>  gcc/testsuite/gcc.dg/guality/sra-1.c   | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gcc/testsuite/gcc.dg/guality/clztest.c b/gcc/testsuite/gcc.dg/guality/clztest.c
> index f89c1c31a15..69527561c22 100644
> --- a/gcc/testsuite/gcc.dg/guality/clztest.c
> +++ b/gcc/testsuite/gcc.dg/guality/clztest.c
> @@ -1,5 +1,5 @@
>  /* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
> -/* { dg-options "-g" } */
> +/* { dg-options "-g -fno-ipa-icf" } */
>
>  volatile int vv;
>
> diff --git a/gcc/testsuite/gcc.dg/guality/ctztest.c b/gcc/testsuite/gcc.dg/guality/ctztest.c
> index 5ce6c674be3..276752ac986 100644
> --- a/gcc/testsuite/gcc.dg/guality/ctztest.c
> +++ b/gcc/testsuite/gcc.dg/guality/ctztest.c
> @@ -1,5 +1,5 @@
>  /* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
> -/* { dg-options "-g" } */
> +/* { dg-options "-g -fno-ipa-icf" } */
>
>  volatile int vv;
>
> diff --git a/gcc/testsuite/gcc.dg/guality/sra-1.c b/gcc/testsuite/gcc.dg/guality/sra-1.c
> index a747bc302aa..8ad57cf3f8e 100644
> --- a/gcc/testsuite/gcc.dg/guality/sra-1.c
> +++ b/gcc/testsuite/gcc.dg/guality/sra-1.c
> @@ -1,6 +1,6 @@
>  /* PR debug/43983 */
>  /* { dg-do run } */
> -/* { dg-options "-g" } */
> +/* { dg-options "-g -fno-ipa-icf" } */
>
>  struct A { int i; int j; };
>  struct B { int : 4; int i : 12; int j : 12; int : 4; };
diff mbox series

Patch

diff --git a/gcc/testsuite/gcc.dg/guality/clztest.c b/gcc/testsuite/gcc.dg/guality/clztest.c
index f89c1c31a15..69527561c22 100644
--- a/gcc/testsuite/gcc.dg/guality/clztest.c
+++ b/gcc/testsuite/gcc.dg/guality/clztest.c
@@ -1,5 +1,5 @@ 
 /* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
-/* { dg-options "-g" } */
+/* { dg-options "-g -fno-ipa-icf" } */
 
 volatile int vv;
 
diff --git a/gcc/testsuite/gcc.dg/guality/ctztest.c b/gcc/testsuite/gcc.dg/guality/ctztest.c
index 5ce6c674be3..276752ac986 100644
--- a/gcc/testsuite/gcc.dg/guality/ctztest.c
+++ b/gcc/testsuite/gcc.dg/guality/ctztest.c
@@ -1,5 +1,5 @@ 
 /* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
-/* { dg-options "-g" } */
+/* { dg-options "-g -fno-ipa-icf" } */
 
 volatile int vv;
 
diff --git a/gcc/testsuite/gcc.dg/guality/sra-1.c b/gcc/testsuite/gcc.dg/guality/sra-1.c
index a747bc302aa..8ad57cf3f8e 100644
--- a/gcc/testsuite/gcc.dg/guality/sra-1.c
+++ b/gcc/testsuite/gcc.dg/guality/sra-1.c
@@ -1,6 +1,6 @@ 
 /* PR debug/43983 */
 /* { dg-do run } */
-/* { dg-options "-g" } */
+/* { dg-options "-g -fno-ipa-icf" } */
 
 struct A { int i; int j; };
 struct B { int : 4; int i : 12; int j : 12; int : 4; };