On 12/05/2018 03:33 AM, Thomas Schwinge wrote:
Hi!
Sorry for my late follow-up; had a lot of catch up to do back then.
On Thu, 27 Sep 2018 11:47:31 +0200, Richard Biener<richard.guent...@gmail.com>
wrote:
On Mon, Sep 24, 2018 at 9:14 PM Indu Bhagat<indu.bha...@oracle.com> wrote:
Done. Attached is updated patch.
Patch is tested on x86_64
You obviously did_not_ properly test the patch since it causes a
bunch of new testsuite
failures: [...]
and more. Please get up to speed with GCC development and testing requirements!
Also, with this commit, several test cases regressed from PASS to
UNSUPPORTED because of "{ dg-require-effective-target freorder }" running
into:
fprofile_use_freorder16732.c: In function 'void foo()':
fprofile_use_freorder16732.c:2:20: warning:
'[...]/gcc/testsuite/g++/fprofile_use_freorder16732.gcda' profile count data
file not found [-Wmissing-profile]
Iain had just mentioned that in<https://gcc.gnu.org/PR88310>, and fixed
in r266785,<https://gcc.gnu.org/ml/gcc-patches/2018-12/msg00209.html>.
(Back then, I had produced the same fix, but not yet posted.) :-|
With "{ dg-require-effective-target freorder }" thusly restored, I then
also saw two other regressions/FAILs, back then:
[-UNSUPPORTED: g++.dg/tree-prof/pr63581.C-]
UNSUPPORTED: g++.dg/tree-prof/pr63581.C -fauto-profile
{+PASS: g++.dg/tree-prof/pr63581.C compilation, -fprofile-generate
-D_PROFILE_GENERATE+}
{+FAIL: g++.dg/tree-prof/pr63581.C compilation, -fprofile-use
-D_PROFILE_USE+}
{+PASS: g++.dg/tree-prof/pr63581.C execution, -fprofile-generate
-D_PROFILE_GENERATE+}
{+UNRESOLVED: g++.dg/tree-prof/pr63581.C execution, -fprofile-use
-D_PROFILE_USE+}
[...]/gcc/testsuite/g++.dg/tree-prof/pr63581.C: In function 'int uptodate(page*)':
[...]/gcc/testsuite/g++.dg/tree-prof/pr63581.C:28:19: warning: profile for
function 'int uptodate(page*)' not found in profile data [-Wmissing-profile]
..., and:
[-UNSUPPORTED: gcc.dg/tree-prof/20041218-1.c-]
UNSUPPORTED: gcc.dg/tree-prof/20041218-1.c -fauto-profile
{+PASS: gcc.dg/tree-prof/20041218-1.c compilation, -fprofile-generate
-D_PROFILE_GENERATE+}
{+FAIL: gcc.dg/tree-prof/20041218-1.c compilation, -fprofile-use
-D_PROFILE_USE+}
{+PASS: gcc.dg/tree-prof/20041218-1.c execution, -fprofile-generate
-D_PROFILE_GENERATE+}
{+UNRESOLVED: gcc.dg/tree-prof/20041218-1.c execution, -fprofile-use
-D_PROFILE_USE+}
[...]/gcc/testsuite/gcc.dg/tree-prof/20041218-1.c: In function 'bar':
[...]/gcc/testsuite/gcc.dg/tree-prof/20041218-1.c:58:1: warning: profile
for function 'bar' not found in profile data [-Wmissing-profile]
..., for which I came up with the following patch.
But, this doesn't now seem to be necessary anymore, or am I confused?
Maybe this got fixed differently -- or is anybody still seeing these
FAILs? (If not, then I'm not proposing to commit this, of course.)
I tested the trunk as of commit 85df98d7fbb6ef5c5b6e97190fff4028f4b70747
(Dec 5 PR c/87028) with and without the -Wmissing-profile on by default
in the compiler. I.e., with the following change :
Common Var(warn_missing_profile) Init(1) Warning
+Common Var(warn_missing_profile) Init(0) Warning
Two observations :
1. The two issues (tree-prof/pr63581.C and tree-prof/20041218-1.c) that you run
into are not repeatable on my end. I am not sure why you run into them.
2. I do however see other tests (a total of 23) which are have regressed from
PASS --> UNRESOLVED. A diff is attached.
Each one of them is due to "Error/Warning threshold exceeded: 1 0 (max. 1
3)"
E.g.,
ERROR: gcc.dg/tree-prof/20050826-2.c: error executing dg-final-use: couldn't open
"20050826-2.c.116t.dom2 20050826-2.c.115t.dom2": no such file or directory
Error/Warning threshold exceeded: 1 0 (max. 1 3)
(I have not been able to see the -Wmissing-profile warning explicitly in my logs
yet. I was thinking a RUNTESTFLAGS="-v -v -v" should have helped, but it
didnt.)
Any suggestions to resolve these tests are appreciated. I am not sure yet of the
most maintainable way to "allow the warning in all tests that it appears". I
need to look around a bit (Is Thomas' patch doing just what needs to be done
here ?).
Thanks
Indu
UNRESOLVED: c-c++-common/unroll-1.c -Wc++-compat : error executing dg-final:
couldn't open "unroll-1.c.250r.loop2_unroll unroll-1.c.251r.loop2_unroll": no
such file or directory
UNRESOLVED: gcc.dg/ipa/ipa-icf-38.c: error executing dg-final: couldn't open
"ipa-icf-38.exe.wpa.069i.icf ipa-icf-38.exe.wpa.070i.icf": no such file or
directory
UNRESOLVED: gcc.dg/tree-prof/20050826-2.c: Error executing dg-final-use:
couldn't open "20050826-2.c.116t.dom2 20050826-2.c.115t.dom2": no such file or
directory
UNRESOLVED: gcc.dg/tree-prof/cmpsf-1.c: Error executing dg-final-use: couldn't
open "cmpsf-1.c.115t.dom2 cmpsf-1.c.116t.dom2": no such file or directory
UNRESOLVED: gcc.dg/tree-prof/inliner-1.c: Error executing dg-final-use:
couldn't open "inliner-1.c.229t.optimized inliner-1.c.230t.optimized": no such
file or directory
UNRESOLVED: gcc.dg/tree-prof/merge_block.c: Error executing dg-final-use:
couldn't open "merge_block.c.229t.optimized merge_block.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/peel-1.c: Error executing dg-final-use: couldn't
open "peel-1.c.160t.cunroll peel-1.c.159t.cunroll": no such file or directory
UNRESOLVED: gcc.dg/tree-prof/pr77698.c: Error executing dg-final-use: couldn't
open "pr77698.c.304r.alignments pr77698.c.302r.alignments
pr77698.c.303r.alignments": no such file or directory
UNRESOLVED: gcc.dg/tree-prof/stringop-1.c: Error executing dg-final-use:
couldn't open "stringop-1.c.229t.optimized stringop-1.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/stringop-2.c: Error executing dg-final-use:
couldn't open "stringop-2.c.229t.optimized stringop-2.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/unroll-1.c: Error executing dg-final-use: couldn't
open "unroll-1.c.250r.loop2_unroll unroll-1.c.251r.loop2_unroll": no such file
or directory
UNRESOLVED: gcc.dg/tree-prof/update-cunroll-2.c: Error executing dg-final-use:
couldn't open "update-cunroll-2.c.229t.optimized
update-cunroll-2.c.230t.optimized": no such file or directory
UNRESOLVED: gcc.dg/tree-prof/update-loopch.c: Error executing dg-final-use:
couldn't open "update-loopch.c.169t.switchlower1
update-loopch.c.170t.switchlower1": no such file or directory
UNRESOLVED: gcc.dg/tree-prof/update-tailcall.c: Error executing dg-final-use:
couldn't open "update-tailcall.c.190t.tailc update-tailcall.c.191t.tailc": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-10.c: Error executing dg-final-use:
couldn't open "val-prof-10.c.232r.expand val-prof-10.c.231r.expand": no such
file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-2.c: Error executing dg-final-use:
couldn't open "val-prof-2.c.229t.optimized val-prof-2.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-3.c: Error executing dg-final-use:
couldn't open "val-prof-3.c.229t.optimized val-prof-3.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-4.c: Error executing dg-final-use:
couldn't open "val-prof-4.c.229t.optimized val-prof-4.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-5.c: Error executing dg-final-use:
couldn't open "val-prof-5.c.230t.optimized val-prof-5.c.229t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-6.c: Error executing dg-final-use:
couldn't open "val-prof-6.c.229t.optimized val-prof-6.c.230t.optimized": no
such file or directory
UNRESOLVED: gcc.dg/tree-prof/val-prof-9.c: Error executing dg-final-use:
couldn't open "val-prof-9.c.230t.optimized val-prof-9.c.229t.optimized": no
such file or directory
UNRESOLVED: g++.dg/tree-prof/indir-call-prof.C: Error executing dg-final-use:
couldn't open "indir-call-prof.C.230t.optimized
indir-call-prof.C.229t.optimized": no such file or directory
UNRESOLVED: g++.dg/tree-prof/pr35545.C: Error executing dg-final-use: couldn't
open "pr35545.C.069i.profile_estimate pr35545.C.068i.profile_estimate": no such
file or directory