[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-07-21 Thread ygribov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Yury Gribov changed: What|Removed |Added Target Milestone|--- |8.0 Known to fail|

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-07-21 Thread ygribov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Yury Gribov changed: What|Removed |Added Status|NEW |RESOLVED CC|

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-07-21 Thread ygribov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #16 from Yury Gribov --- Author: ygribov Date: Fri Jul 21 19:48:51 2017 New Revision: 250442 URL: https://gcc.gnu.org/viewcvs?rev=250442=gcc=rev Log: 2017-07-21 Yury Gribov PR middle-end/56727

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-11 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #15 from Jan Hubicka --- Author: hubicka Date: Sat Feb 11 17:56:02 2017 New Revision: 245359 URL: https://gcc.gnu.org/viewcvs?rev=245359=gcc=rev Log: PR tree-ssa/56727 * gcc.dg/tree-ssa/pr56727.c: New testcase.

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-09 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #14 from Jan Hubicka --- For the draft patch you need to check for aliases. If global symbol is indeed the only way to reach the function, then the transformation is IMO valid. As for tailcall, we have recursive_call_p predicate

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-09 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #13 from Jakub Jelinek --- (In reply to Yuri Gribov from comment #12) > Inlining inline functions is fine due to ODR rule. ODR doesn't apply just to inline functions. So all semantic interposition, except for the case when both

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-09 Thread tetra2005 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #12 from Yuri Gribov --- (In reply to Jakub Jelinek from comment #10) > (In reply to Yuri Gribov from comment #9) > > (In reply to Alexander Monakov from comment #8) > > > Well, if my argument is correct, then GCC generates wrong

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-09 Thread fw at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #11 from Florian Weimer --- (In reply to Jakub Jelinek from comment #10) > Don't we also inline any beneficial inline functions at -O3 even if they > could be interposed (definitely not suggesting we stop doing that, that > would

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-02-09 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #10 from Jakub Jelinek --- (In reply to Yuri Gribov from comment #9) > (In reply to Alexander Monakov from comment #8) > > Well, if my argument is correct, then GCC generates wrong code for the very > > first example in comment #0. >

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-01-24 Thread tetra2005 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #9 from Yuri Gribov --- (In reply to Alexander Monakov from comment #8) > Well, if my argument is correct, then GCC generates wrong code for the very > first example in comment #0. I believe it does (see my #5, most probly author of

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-01-23 Thread amonakov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #8 from Alexander Monakov --- Well, if my argument is correct, then GCC generates wrong code for the very first example in comment #0. If that is deliberate as a compromise even though otherwise GCC suppresses optimizations to honor

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-01-23 Thread tetra2005 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #7 from Yuri Gribov --- (In reply to Alexander Monakov from comment #6) > Note that even without symbol aliases, such calls are not necessarily > self-recursive when 'f' is first called via dlsym with RTLD_NEXT or a > specific module

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-01-23 Thread amonakov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Alexander Monakov changed: What|Removed |Added CC||amonakov at gcc dot gnu.org ---

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2017-01-23 Thread tetra2005 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Yuri Gribov changed: What|Removed |Added CC||tetra2005 at gmail dot com --- Comment #5

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2013-03-26 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords|

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2013-03-26 Thread hubicka at ucw dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 --- Comment #3 from Jan Hubicka hubicka at ucw dot cz 2013-03-26 16:12:27 UTC --- Confirmed. We don't optimize callgraph cycles with one externally visible entry that way. And I believe we currently have no way of annotating a single

[Bug middle-end/56727] Recursive call goes through the PLT unnecessarily

2013-03-26 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56727 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at