[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-25 Thread cvs-commit at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #10 from CVS Commits  ---
The master branch has been updated by Jakub Jelinek :

https://gcc.gnu.org/g:05107d4e4ccd11ecc8712d6e271fcb4b5f17060f

commit r10-6226-g05107d4e4ccd11ecc8712d6e271fcb4b5f17060f
Author: Jakub Jelinek 
Date:   Sun Jan 26 00:47:18 2020 +0100

testsuite: Fix up pr93166.C test, so that it doesn't FAIL with -std=c++98
and tests what it is supposed to test.

2020-01-26  Jakub Jelinek  

PR ipa/93166
* g++.dg/pr93166.C: Move to ...
* g++.dg/pr93166_0.C: ... here.  Turn it into a proper lto test.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-25 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

Jeffrey A. Law  changed:

   What|Removed |Added

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

--- Comment #9 from Jeffrey A. Law  ---
Should be fixed by Feng's patch on the trunk.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-25 Thread cvs-commit at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #8 from CVS Commits  ---
The master branch has been updated by Feng Xue :

https://gcc.gnu.org/g:98dd8c97e44ee8134cecf681045b715a8a73c7cd

commit r10-6222-g98dd8c97e44ee8134cecf681045b715a8a73c7cd
Author: Feng Xue 
Date:   Sun Jan 19 15:49:44 2020 +0800

Remove assertion in get_info_about_necessary_edges

2020-01-25  Feng Xue  

PR ipa/93166
* ipa-cp.c (get_info_about_necessary_edges): Remove value
check assertion.

PR ipa/93166
* g++.dg/pr93166.C: New test.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-25 Thread fxue at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #7 from fxue at gcc dot gnu.org ---
(In reply to Jeffrey A. Law from comment #6)
> I've got state, so I'll take this as well.

Here is a patch at https://gcc.gnu.org/ml/gcc-patches/2020-01/msg00068.html,
waiting for review from someone.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-24 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

Jeffrey A. Law  changed:

   What|Removed |Added

   Assignee|unassigned at gcc dot gnu.org  |law at redhat dot com

--- Comment #6 from Jeffrey A. Law  ---
I've got state, so I'll take this as well.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-19 Thread fxue at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #5 from fxue at gcc dot gnu.org ---
To add a specialized class for tree lattices is a way, but will complicate the
code. We can simple remove the assertion. And a one-file test case was made
from original files.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-19 Thread fxue at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #4 from fxue at gcc dot gnu.org ---
Created attachment 47676
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47676=edit
all-in-one test case

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-16 Thread fxue at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #3 from fxue at gcc dot gnu.org ---
(In reply to Martin Jambor from comment #2)
> I have analyzed this ICE and came to the conclusion that the assert is
> wrong for polymorphic context lattices - e.g. in the reported case we
> always pass the same class to first parameter, which in the recursive
> call then serves as a basis to ancestor JF for the second parameter.
> 
> When propagating polymorphic contexts within SCCs we allow creating
> new values because for any sane input their number will be limited by
> class hierarchy (and potential insane input limited by
> param_ipa_cp_value_list_size).  I think that is OK too.
> 
> So we can either simply remove the assert or make it active only for
> tree lattices.  At the moment I'd prefer the former, but Feng, if this
> assert proved valuable in development the recursive function
> versioning patch, I'll be happy to keep it.  What do you think?

Sorry for late response due to trip. I'll check it.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-10 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

--- Comment #2 from Martin Jambor  ---
I have analyzed this ICE and came to the conclusion that the assert is
wrong for polymorphic context lattices - e.g. in the reported case we
always pass the same class to first parameter, which in the recursive
call then serves as a basis to ancestor JF for the second parameter.

When propagating polymorphic contexts within SCCs we allow creating
new values because for any sane input their number will be limited by
class hierarchy (and potential insane input limited by
param_ipa_cp_value_list_size).  I think that is OK too.

So we can either simply remove the assert or make it active only for
tree lattices.  At the moment I'd prefer the former, but Feng, if this
assert proved valuable in development the recursive function
versioning patch, I'll be happy to keep it.  What do you think?

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-09 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

Jeffrey A. Law  changed:

   What|Removed |Added

 CC||law at redhat dot com

--- Comment #1 from Jeffrey A. Law  ---
Just to pile on, I'm seeing this as well in the code-editor package builds.

[Bug lto/93166] [10 Regression] ICE in get_info_about_necessary_edges, at ipa-cp.c:4137 since r278893

2020-01-06 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93166

Martin Liška  changed:

   What|Removed |Added

   Priority|P3  |P1
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2020-01-06
 CC||hubicka at gcc dot gnu.org,
   ||jamborm at gcc dot gnu.org
  Known to work||9.2.0
   Target Milestone|--- |10.0
 Ever confirmed|0   |1
  Known to fail||10.0