[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2018-01-15 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Richard Biener  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #11 from Richard Biener  ---
Note the miscompare went away ~Jan 3rd.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2018-01-08 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Jeffrey A. Law  changed:

   What|Removed |Added

   Priority|P3  |P1

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-29 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #10 from Martin Liška  ---
> But there is something really wonky about this benchmark.  There are times
> when I fully expect it to pass and it fails and vice-versa.  I'm really
> starting to wonder if there's an uninit read in there or something similar.

Maybe there's some randomness which was brought by the patch. I would wait for
fixes or remaining issues related to the revision.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-21 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #9 from Jeffrey A. Law  ---
My bisections keep landing on:
commit bb173647d8221f86812f4e98942960b894e9e972 (HEAD, refs/bisect/bad)
Author: hubicka 
Date:   Thu Nov 23 15:56:28 2017 +

* ipa-fnsummary.c (record_modified_bb_info): Use sreal
frequencies. Fix estimation of aggregate parameters.

* gcc.dg/ipa/inline-1.c: Update template.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255103
138bc75d-0d04-0410-961f-82ee72b054a4


But there is something really wonky about this benchmark.  There are times when
I fully expect it to pass and it fails and vice-versa.  I'm really starting to
wonder if there's an uninit read in there or something similar.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-19 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #8 from Jeffrey A. Law  ---
Doesn't look to be the same correctness issue I'm tracking right now as I get a
mis-compare with and without those changes.  Sigh.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-19 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #7 from Jeffrey A. Law  ---
It could well be the same problem.  The fix for the codegen bug I'm tracking
affects relax_sh.c from 435.gromacs.  I'm still investigating.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-19 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #6 from rguenther at suse dot de  ---
On Tue, 19 Dec 2017, law at redhat dot com wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438
> 
> --- Comment #5 from Jeffrey A. Law  ---
> Richi,
> 
> I've got a code correctness issue I'm looking at with those changes.  If you
> could pass along the .dom2 and .dom3 dumps for the 435.gromacs benchmark I
> could probably scan them for the issue without too much trouble.

I'll just wait and see if the test PASSes after your fix goes in.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-19 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #5 from Jeffrey A. Law  ---
Richi,

I've got a code correctness issue I'm looking at with those changes.  If you
could pass along the .dom2 and .dom3 dumps for the 435.gromacs benchmark I
could probably scan them for the issue without too much trouble.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-19 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Martin Liška  changed:

   What|Removed |Added

 CC||marxin at gcc dot gnu.org

--- Comment #4 from Martin Liška  ---
So it's hard to isolate a single transformation that's responsible.
Jeff maybe you can come up with a dbg_cnt that will be usable to find a single
transformation?
Having that one can use --param lto-partitions=1 to isolate that.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-18 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

--- Comment #3 from rguenther at suse dot de  ---
On December 18, 2017 7:31:45 PM GMT+01:00, law at redhat dot com
 wrote:
>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438
>
>Jeffrey A. Law  changed:
>
>   What|Removed |Added
>
> CC||law at redhat dot com
>
>--- Comment #2 from Jeffrey A. Law  ---
>There was a correctness fix that went in about a week later:

It still fails as of today. 

>Author: law 
>Date:   Tue Dec 12 22:46:46 2017 +
>
>PR tree-optimization/83298
>PR tree-optimization/83362
>PR tree-optimization/83383
>  * gimple-ssa-evrp-analyze.h (class evrp_range_analyzer): Make
>push_value_range a public interface.  Add new argument to
>record_ranges_from_stmt.
>* gimple-ssa-evrp-analyze.c
>  (evrp_range_analyzer::record_ranges_from_stmt): Add new argument.
>Update comments.  Handle recording temporary equivalences.
>* tree-ssa-dom.c (dom_opt_opt_walker::before_dom_children): Add
>new argument to call to
>evrp_range_analyzer::record_ranges_from_stmt.
>* gimple-ssa-evrp.c (evrp_dom_walker::before_dom_children):
>Likewise.
> * tree-ssa-threadedge.c: Include alloc-pool.h, vr-values.h and
>gimple-ssa-evrp-analyze.h.
> (record_temporary_equivalences_from_phis): Add new argument.  When
>the PHI arg is an SSA_NAME, set the result's range to the range
>of the PHI arg.
>  (record_temporary_equivalences_from_stmts_at_dest): Record ranges
>from statements too.
>(thread_through_normal_block): Accept new argument,
>evrp_range_analyzer.
>Pass it down to children as needed.
>(thread_outgoing_edges): Likewise.
>  (thread_across_edge): Likewise.   Push/pop range state as needed.
> * tree-ssa-threadedge.h (thread_outgoing_edges): Update prototype.
>
>PR tree-optimization/83298
>PR tree-optimization/83362
>PR tree-optimization/83383
>* gcc.c-torture/execute/pr83298.c: New test.
>* gcc.c-torture/execute/pr83362.c New test.
>* gcc.c-torture/execute/pr83383.c New test.
>
>git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255593
>138bc75d-0d04-0410-961f-82ee72b054a4

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-18 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Jeffrey A. Law  changed:

   What|Removed |Added

 CC||law at redhat dot com

--- Comment #2 from Jeffrey A. Law  ---
There was a correctness fix that went in about a week later:

Author: law 
Date:   Tue Dec 12 22:46:46 2017 +

PR tree-optimization/83298
PR tree-optimization/83362
PR tree-optimization/83383
* gimple-ssa-evrp-analyze.h (class evrp_range_analyzer): Make
push_value_range a public interface.  Add new argument to
record_ranges_from_stmt.
* gimple-ssa-evrp-analyze.c
(evrp_range_analyzer::record_ranges_from_stmt): Add new argument.
Update comments.  Handle recording temporary equivalences.
* tree-ssa-dom.c (dom_opt_opt_walker::before_dom_children): Add
new argument to call to
evrp_range_analyzer::record_ranges_from_stmt.
* gimple-ssa-evrp.c (evrp_dom_walker::before_dom_children):
Likewise.
* tree-ssa-threadedge.c: Include alloc-pool.h, vr-values.h and
gimple-ssa-evrp-analyze.h.
(record_temporary_equivalences_from_phis): Add new argument.  When
the PHI arg is an SSA_NAME, set the result's range to the range
of the PHI arg.
(record_temporary_equivalences_from_stmts_at_dest): Record ranges
from statements too.
(thread_through_normal_block): Accept new argument,
evrp_range_analyzer.
Pass it down to children as needed.
(thread_outgoing_edges): Likewise.
(thread_across_edge): Likewise.   Push/pop range state as needed.
* tree-ssa-threadedge.h (thread_outgoing_edges): Update prototype.

PR tree-optimization/83298
PR tree-optimization/83362
PR tree-optimization/83383
* gcc.c-torture/execute/pr83298.c: New test.
* gcc.c-torture/execute/pr83362.c New test.
* gcc.c-torture/execute/pr83383.c New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255593
138bc75d-0d04-0410-961f-82ee72b054a4

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-18 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Martin Liška  changed:

   What|Removed |Added

   Keywords|needs-bisection |
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2017-12-18
 CC||law at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Martin Liška  ---
Confirmed, looks it started with r255387. I'm trying to isolate it somehow.

[Bug tree-optimization/83438] [8 Regression] 435.gromacs miscompares

2017-12-15 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438

Richard Biener  changed:

   What|Removed |Added

   Keywords||needs-bisection
   Target Milestone|--- |8.0