> 
> This caused:
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65237

Hi,
this is patch I commited.  gcc.dg/attr-noinline.c has template that counts 
number of calls
in optimized assembler.  Those do not match if one function is turned into 
another's wrapper.
gcc.dg/noreturn-7.c misses one warning because we unify the functions before 
outputting it.
I think that is OK given that the warning will come out if user fix the first 
instance.

gcc.dg/ipa/ipa-cp-1.c, gcc.dg/ipa/ipa-cp-2.c was accidental commits from my 
work with
Martin Jambor, sorry for that.
There is still gcc.target/i386/stackalign/longlong-2.c that is real bug of 
alignments not
being compared.  I noticed that independnetly yesterday and asked Martin to add 
patch
(among with several other details)

Honza

        PR ipa/65237
        * gcc.dg/attr-noinline.c: Add -fno-ipa-icf
        * gcc.dg/noreturn-7.c: Add -fno-ipa-icf.
        * gcc.dg/ipa/ipa-cp-1.c: Revert accidental commit.
        * gcc.dg/ipa/ipa-cp-2.c: Revert accidental commit.
Index: gcc.dg/attr-noinline.c
===================================================================
--- gcc.dg/attr-noinline.c      (revision 221034)
+++ gcc.dg/attr-noinline.c      (working copy)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -finline-functions" } */
+/* { dg-options "-O2 -finline-functions -fno-ipa-icf" } */
 
 extern int t();
 
Index: gcc.dg/noreturn-7.c
===================================================================
--- gcc.dg/noreturn-7.c (revision 221034)
+++ gcc.dg/noreturn-7.c (working copy)
@@ -5,7 +5,7 @@
    in presence of tail recursion within a noreturn function.  */
 
 /* { dg-do compile } */
-/* { dg-options "-O2 -Wreturn-type -Wmissing-noreturn" } */
+/* { dg-options "-O2 -Wreturn-type -Wmissing-noreturn -fno-ipa-icf" } */
 
 
 void f(void) __attribute__ ((__noreturn__));
Index: gcc.dg/ipa/ipa-cp-1.c
===================================================================
--- gcc.dg/ipa/ipa-cp-1.c       (revision 221034)
+++ gcc.dg/ipa/ipa-cp-1.c       (working copy)
@@ -1,22 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-ipa-cp"  } */
-int n;
-
-static void
-__attribute__ ((noinline))
-test(void *a)
-{
-  __builtin_memset (a,0,n);
-}
-
-int
-main()
-{
-  int aa;
-  short bb;
-  test (&aa);
-  test (&bb);
-  return 0;
-}
-/* { dg-final { scan-ipa-dump "Alignment 2"  "cp"  } } */
-/* { dg-final { cleanup-ipa-dump "cp" } } */
Index: gcc.dg/ipa/ipa-cp-2.c
===================================================================
--- gcc.dg/ipa/ipa-cp-2.c       (revision 221034)
+++ gcc.dg/ipa/ipa-cp-2.c       (working copy)
@@ -1,22 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-ipa-cp"  } */
-int n;
-
-static void
-__attribute__ ((noinline))
-test(void *a)
-{
-  __builtin_memset (a,0,n);
-}
-
-static __attribute__ ((aligned(16))) int aa[10];
-
-int
-main()
-{
-  test (&aa[1]);
-  test (&aa[3]);
-  return 0;
-}
-/* { dg-final { scan-ipa-dump "Alignment 8, misalignment 4"  "cp"  } } */
-/* { dg-final { cleanup-ipa-dump "cp" } } */

Reply via email to