The fix is attached. Ok to commit?
David
On Thu, May 22, 2014 at 9:11 AM, Xinliang David Li <[email protected]> wrote:
> I did -- but very likely there was a process error in my side. Will
> fix them soon.
>
> David
>
> On Thu, May 22, 2014 at 2:12 AM, Richard Biener
> <[email protected]> wrote:
>> On Thu, May 22, 2014 at 10:49 AM, Paolo Carlini
>> <[email protected]> wrote:
>>> Hi,
>>>
>>> is somebody already working on the regressions which appeared yesterday,
>>> see:
>>
>> David, did you forget to run the testsuite?
>>
>> Richard.
>>
>>> https://gcc.gnu.org/ml/gcc-testresults/2014-05/msg01920.html
>>>
>>> ie:
>>>
>>> FAIL: g++.dg/ipa/devirt-15.C -std=gnu++98 scan-ipa-dump devirt
>>> "Speculatively devirtualizing call"
>>> FAIL: g++.dg/ipa/devirt-15.C -std=gnu++11 scan-ipa-dump devirt
>>> "Speculatively devirtualizing call"
>>> FAIL: g++.dg/ipa/devirt-15.C -std=gnu++1y scan-ipa-dump devirt
>>> "Speculatively devirtualizing call"
>>> FAIL: g++.dg/ipa/devirt-16.C -std=gnu++98 scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-16.C -std=gnu++11 scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-16.C -std=gnu++1y scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-17.C -std=gnu++98 scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-17.C -std=gnu++11 scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-17.C -std=gnu++1y scan-ipa-dump whole-program
>>> "Devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-26.C -std=gnu++98 scan-ipa-dump devirt
>>> "Speculatively devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-26.C -std=gnu++11 scan-ipa-dump devirt
>>> "Speculatively devirtualizing"
>>> FAIL: g++.dg/ipa/devirt-26.C -std=gnu++1y scan-ipa-dump devirt
>>> "Speculatively devirtualizing"
>>> FAIL: g++.dg/ipa/imm-devirt-1.C -std=gnu++98 scan-tree-dump fre1 "Replacing
>>> call target with foo"
>>> FAIL: g++.dg/ipa/imm-devirt-1.C -std=gnu++11 scan-tree-dump fre1 "Replacing
>>> call target with foo"
>>> FAIL: g++.dg/ipa/imm-devirt-1.C -std=gnu++1y scan-tree-dump fre1 "Replacing
>>> call target with foo"
>>> FAIL: g++.dg/ipa/imm-devirt-2.C -std=gnu++98 scan-tree-dump fre1 "Replacing
>>> call target"
>>> FAIL: g++.dg/ipa/imm-devirt-2.C -std=gnu++11 scan-tree-dump fre1 "Replacing
>>> call target"
>>> FAIL: g++.dg/ipa/imm-devirt-2.C -std=gnu++1y scan-tree-dump fre1 "Replacing
>>> call target"
>>> FAIL: g++.dg/tree-ssa/pr8781.C -std=gnu++98 scan-tree-dump fre1 "Replacing
>>> call target with f"
>>> FAIL: g++.dg/tree-ssa/pr8781.C -std=gnu++11 scan-tree-dump fre1 "Replacing
>>> call target with f"
>>> FAIL: g++.dg/tree-ssa/pr8781.C -std=gnu++1y scan-tree-dump fre1 "Replacing
>>> call target with f"
>>>
>>>
>>> Thanks!
>>> Paolo.
>>>
>>> PS: by the way, I have been also seeing the same guality fails that H.J.
>>> sees:
>>>
>>> FAIL: g++.dg/guality/pr55665.C -O2 line 23 p == 40
>>> FAIL: g++.dg/guality/pr55665.C -O3 -fomit-frame-pointer line 23 p == 40
>>> FAIL: g++.dg/guality/pr55665.C -O3 -g line 23 p == 40
>>>
>>> but these are very old, XFAIL maybe?!?
>>>
>>>
Index: testsuite/g++.dg/ipa/devirt-17.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-17.C (revision 210819)
+++ testsuite/g++.dg/ipa/devirt-17.C (working copy)
@@ -1,7 +1,7 @@
/* We shall devirtualize to B::foo since it is the only live candidate of an
anonymous type. */
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-ipa-whole-program" } */
+/* { dg-options "-O2 -fdump-ipa-whole-program-details" } */
namespace {
class B {
public:
@@ -37,7 +37,7 @@ main()
return b->foo();
}
-/* { dg-final { scan-ipa-dump "Devirtualizing" "whole-program"} } */
+/* { dg-final { scan-ipa-dump "devirtualizing" "whole-program"} } */
/* { dg-final { scan-ipa-dump-not "builtin_unreachable" "whole-program"} } */
/* { dg-final { scan-ipa-dump "B::foo" "whole-program"} } */
/* { dg-final { scan-ipa-dump-not "A::foo" "whole-program"} } */
Index: testsuite/g++.dg/ipa/devirt-26.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-26.C (revision 210819)
+++ testsuite/g++.dg/ipa/devirt-26.C (working copy)
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -fdump-ipa-devirt" } */
+/* { dg-options "-O3 -fdump-ipa-devirt-details" } */
struct A
{
int a;
@@ -25,5 +25,5 @@ int test(void)
/* The call to b->foo() is perfectly devirtualizable because C can not be in
construction
when &c was used, but we can not analyze that so far. Test that we at
least speculate
that type is in the construction. */
-/* { dg-final { scan-ipa-dump "Speculatively devirtualizing" "devirt" } } */
+/* { dg-final { scan-ipa-dump "speculatively devirtualizing" "devirt" } } */
/* { dg-final { cleanup-ipa-dump "devirt" } } */
Index: testsuite/g++.dg/ipa/imm-devirt-1.C
===================================================================
--- testsuite/g++.dg/ipa/imm-devirt-1.C (revision 210819)
+++ testsuite/g++.dg/ipa/imm-devirt-1.C (working copy)
@@ -58,5 +58,5 @@ int main (int argc, char *argv[])
return 0;
}
-/* { dg-final { scan-tree-dump "Replacing call target with foo" "fre1" } } */
+/* { dg-final { scan-tree-dump "converting indirect call to function virtual
int B::foo" "fre1" } } */
/* { dg-final { cleanup-tree-dump "fre1" } } */
Index: testsuite/g++.dg/ipa/devirt-16.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-16.C (revision 210819)
+++ testsuite/g++.dg/ipa/devirt-16.C (working copy)
@@ -1,7 +1,7 @@
/* We shall devirtualize to unreachable. No anonymous type method should
surivve
reachability. */
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-ipa-whole-program" } */
+/* { dg-options "-O2 -fdump-ipa-whole-program-details" } */
namespace {
class B {
public:
@@ -32,7 +32,7 @@ main()
return b->foo();
}
-/* { dg-final { scan-ipa-dump "Devirtualizing" "whole-program"} } */
+/* { dg-final { scan-ipa-dump "devirtualizing" "whole-program"} } */
/* { dg-final { scan-ipa-dump "builtin_unreachable" "whole-program"} } */
/* { dg-final { scan-ipa-dump-not "A::foo" "whole-program"} } */
/* { dg-final { scan-ipa-dump-not "A::foo" "whole-program"} } */
Index: testsuite/g++.dg/ipa/imm-devirt-2.C
===================================================================
--- testsuite/g++.dg/ipa/imm-devirt-2.C (revision 210819)
+++ testsuite/g++.dg/ipa/imm-devirt-2.C (working copy)
@@ -91,5 +91,5 @@ int main (int argc, char *argv[])
return 0;
}
-/* { dg-final { scan-tree-dump "Replacing call target" "fre1" } } */
+/* { dg-final { scan-tree-dump "converting indirect call to function" "fre1"
} } */
/* { dg-final { cleanup-tree-dump "fre1" } } */
Index: testsuite/g++.dg/ipa/devirt-15.C
===================================================================
--- testsuite/g++.dg/ipa/devirt-15.C (revision 210819)
+++ testsuite/g++.dg/ipa/devirt-15.C (working copy)
@@ -1,7 +1,7 @@
/* Check that we speculatively devirutalize call to FOO to B::foo becuase
A is noreturn. */
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-ipa-devirt -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fdump-ipa-devirt-details -fdump-tree-optimized" } */
class A {
public:
virtual int foo(void)
@@ -33,7 +33,7 @@ main()
m();
}
-/* { dg-final { scan-ipa-dump "Speculatively devirtualizing call" "devirt"} }
*/
+/* { dg-final { scan-ipa-dump "speculatively devirtualizing call" "devirt"} }
*/
/* { dg-final { cleanup-ipa-dump "devirt" } } */
/* Match if (PROF_6 == foo) to verify that the speculation survived. */
/* { dg-final { scan-tree-dump "== foo" "optimized"} } */
Index: testsuite/g++.dg/tree-ssa/pr8781.C
===================================================================
--- testsuite/g++.dg/tree-ssa/pr8781.C (revision 210819)
+++ testsuite/g++.dg/tree-ssa/pr8781.C (working copy)
@@ -24,5 +24,5 @@ int x()
/* We should optimize this to a direct call. */
-/* { dg-final { scan-tree-dump "Replacing call target with f" "fre1" } } */
+/* { dg-final { scan-tree-dump "converting indirect call to function int f()"
"fre1" } } */
/* { dg-final { cleanup-tree-dump "fre1" } } */
Index: testsuite/ChangeLog
===================================================================
--- testsuite/ChangeLog (revision 210819)
+++ testsuite/ChangeLog (working copy)
@@ -1,3 +1,13 @@
+2014-05-22 Xinliang David Li <[email protected]>
+
+ * g++.dg/ipa/devirt-15.C: Fix expected message.
+ * g++.dg/ipa/devirt-16.C: Ditto.
+ * g++.dg/ipa/devirt-17.C: Ditto.
+ * g++.dg/ipa/devirt-26.C: Ditto.
+ * g++.dg/ipa/imm-devirt-1.C: Ditto.
+ * g++.dg/ipa/imm-devirt-2.C: Ditto.
+ * g++.dg/tree-ssa/pr8781.C:Ditto.
+
2014-05-22 Peter Bergner <[email protected]>
* gcc.target/powerpc/htm-ttest.c: New test.