summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog10
-rw-r--r--gcc/testsuite/g++.dg/ipa/ipa-icf-4.C2
-rw-r--r--gcc/testsuite/g++.dg/warn/Wsuggest-final.C3
-rw-r--r--gcc/testsuite/gcc.dg/ipa/iinline-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/ipa/ipa-cp-1.c22
-rw-r--r--gcc/testsuite/gcc.dg/ipa/ipa-cp-2.c22
-rw-r--r--gcc/testsuite/gcc.dg/pr28685-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/pr64454.c2
8 files changed, 60 insertions, 5 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 93fc50f2a91..3566d034365 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2015-02-26 Jan Hubicka <hubicka@ucw.cz>
+ Martin Liska <mliska@suse.cz>
+
+ PR bootstrap/65150
+ * gcc.dg/pr64454.c: Disable ICF.
+ * gcc.dg/pr28685-1.c: Disable ICF
+ * gcc.dg/ipa/iinline-5.c: Disable ICF.
+ * g++.dg/warn/Wsuggest-final.C: Force methods to be different.
+ * g++.dg/ipa/ipa-icf-4.C: Update template.
+
2015-02-26 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/65216
diff --git a/gcc/testsuite/g++.dg/ipa/ipa-icf-4.C b/gcc/testsuite/g++.dg/ipa/ipa-icf-4.C
index 912e06b9b43..2cd7a2eed3a 100644
--- a/gcc/testsuite/g++.dg/ipa/ipa-icf-4.C
+++ b/gcc/testsuite/g++.dg/ipa/ipa-icf-4.C
@@ -43,6 +43,6 @@ int main()
return 123;
}
-/* { dg-final { scan-ipa-dump "\(Varpool alias has been created\)|\(Symbol aliases are not supported by target\)" "icf" } } */
+/* { dg-final { scan-ipa-dump "\(Unified; Variable alias has been created\)|\(Symbol aliases are not supported by target\)" "icf" } } */
/* { dg-final { scan-ipa-dump "Equal symbols: 6" "icf" } } */
/* { dg-final { cleanup-ipa-dump "icf" } } */
diff --git a/gcc/testsuite/g++.dg/warn/Wsuggest-final.C b/gcc/testsuite/g++.dg/warn/Wsuggest-final.C
index 5371063559d..f1d419e144a 100644
--- a/gcc/testsuite/g++.dg/warn/Wsuggest-final.C
+++ b/gcc/testsuite/g++.dg/warn/Wsuggest-final.C
@@ -1,8 +1,9 @@
// { dg-do compile }
// { dg-options "-O2 -Wsuggest-final-types -Wsuggest-final-methods" }
+int c;
struct A { // { dg-warning "final would enable devirtualization of 4 calls" }
virtual void a() {} // { dg-warning "final would enable devirtualization of 2 calls" }
- virtual void b() {} // { dg-warning "final would enable devirtualization of 2 calls" }
+ virtual void b() {c++;} // { dg-warning "final would enable devirtualization of 2 calls" }
};
void
t(struct A *a)
diff --git a/gcc/testsuite/gcc.dg/ipa/iinline-5.c b/gcc/testsuite/gcc.dg/ipa/iinline-5.c
index 8fb47caffcc..b83b8c25a92 100644
--- a/gcc/testsuite/gcc.dg/ipa/iinline-5.c
+++ b/gcc/testsuite/gcc.dg/ipa/iinline-5.c
@@ -1,7 +1,7 @@
/* Verify that simple indirect calls are inlined even without early
inlining.. */
/* { dg-do run } */
-/* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining" } */
+/* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-icf" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/ipa/ipa-cp-1.c b/gcc/testsuite/gcc.dg/ipa/ipa-cp-1.c
new file mode 100644
index 00000000000..b1ec4d4bb66
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/ipa/ipa-cp-1.c
@@ -0,0 +1,22 @@
+/* { 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" } } */
diff --git a/gcc/testsuite/gcc.dg/ipa/ipa-cp-2.c b/gcc/testsuite/gcc.dg/ipa/ipa-cp-2.c
new file mode 100644
index 00000000000..0dbbcf1c0e1
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/ipa/ipa-cp-2.c
@@ -0,0 +1,22 @@
+/* { 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" } } */
diff --git a/gcc/testsuite/gcc.dg/pr28685-1.c b/gcc/testsuite/gcc.dg/pr28685-1.c
index 1d9d97ed615..1eb8c2d457b 100644
--- a/gcc/testsuite/gcc.dg/pr28685-1.c
+++ b/gcc/testsuite/gcc.dg/pr28685-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fno-ipa-icf" } */
/* Should produce <=. */
int test1 (int a, int b)
diff --git a/gcc/testsuite/gcc.dg/pr64454.c b/gcc/testsuite/gcc.dg/pr64454.c
index 33018d3bb18..35542349c70 100644
--- a/gcc/testsuite/gcc.dg/pr64454.c
+++ b/gcc/testsuite/gcc.dg/pr64454.c
@@ -1,6 +1,6 @@
/* PR tree-optimization/64454 */
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-vrp1" } */
+/* { dg-options "-O2 -fdump-tree-vrp1 -fno-ipa-icf" } */
unsigned
f1 (unsigned x)