This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix unresolved patterns in devirt-*.C testcases
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 21 Oct 2014 17:56:56 +0200
- Subject: Fix unresolved patterns in devirt-*.C testcases
- Authentication-results: sourceware.org; auth=none
Hi,
Richi pointed out to me that there are unresolved tests in devirt-*.C. This is fixed by this
patch (one template needs update for missing unreachable function removal)
Will commit it later tonight or tomorrow.
Honza
* g++.dg/ipa/devirt-42.C: Fix template.
* g++.dg/ipa/devirt-46.C: Fix template.
* g++.dg/ipa/devirt-47.C: Fix template.
Index: testsuite/g++.dg/ipa/devirt-42.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-42.C (revision 216436)
+++ testsuite/g++.dg/ipa/devirt-42.C (working copy)
@@ -30,9 +30,10 @@ main()
/* { dg-final { scan-ipa-dump-times "First type is base of second" 3 "inline" } } */
/* { dg-final { scan-ipa-dump-times "Discovered a virtual call to a known target" 2 "inline" } } */
-/* Verify that speculation is optimized by late optimizers. */
-/* { dg-final { scan-ipa-dump-times "return 2" 2 "optimized" } } */
-/* { dg-final { scan-ipa-dump-not "OBJ_TYPE_REF" "optimized" } } */
+/* Verify that speculation is optimized by late optimizers; Eventually we want to remove the
+ virtual functions but at the moment this does not happen. */
+/* { dg-final { scan-tree-dump-times "return 2" 3 "optimized" } } */
+/* { dg-final { scan-tree-dump-not "OBJ_TYPE_REF" "optimized" } } */
/* { dg-final { cleanup-ipa-dump "inline" } } */
-/* { dg-final { cleanup-ipa-dump "optimized" } } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
Index: testsuite/g++.dg/ipa/devirt-46.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-46.C (revision 216436)
+++ testsuite/g++.dg/ipa/devirt-46.C (working copy)
@@ -21,7 +21,7 @@ m()
}
/* { dg-final { scan-ipa-dump-times "Discovered a virtual call to a known target\[^\\n\]*B::foo" 1 "inline" } } */
-/* { dg-final { scan-ipa-dump-not "OBJ_TYPE_REF" "optimized" } } */
-/* { dg-final { scan-ipa-dump-not "abort" "optimized" } } */
+/* { dg-final { scan-tree-dump-not "OBJ_TYPE_REF" "optimized" } } */
+/* { dg-final { scan-tree-dump-not "abort" "optimized" } } */
/* { dg-final { cleanup-ipa-dump "inline" } } */
-/* { dg-final { cleanup-ipa-dump "optimized" } } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
Index: testsuite/g++.dg/ipa/devirt-47.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-47.C (revision 216436)
+++ testsuite/g++.dg/ipa/devirt-47.C (working copy)
@@ -24,8 +24,8 @@ m()
}
/* { dg-final { scan-ipa-dump-times "Discovered a virtual call to a known target\[^\\n\]*C::_ZTh" 1 "inline" } } */
-/* { dg-final { scan-ipa-dump-not "OBJ_TYPE_REF" "optimized" } } */
+/* { dg-final { scan-tree-dump-not "OBJ_TYPE_REF" "optimized" } } */
/* FIXME: We ought to inline thunk. */
-/* { dg-final { scan-ipa-dump "C::_ZThn" "optimized" } } */
+/* { dg-final { scan-tree-dump "C::_ZThn" "optimized" } } */
/* { dg-final { cleanup-ipa-dump "inline" } } */
-/* { dg-final { cleanup-ipa-dump "optimized" } } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */