This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/70232] [6 regression] excessive stack usage with -O2
- From: "law at redhat dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 21 Mar 2016 23:21:34 +0000
- Subject: [Bug target/70232] [6 regression] excessive stack usage with -O2
- Auto-submitted: auto-generated
- References: <bug-70232-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70232
--- Comment #14 from Jeffrey A. Law <law at redhat dot com> ---
WRT c#8, the FSM threader is much better at finding jump threading
opportunities which involve multiple blocks in the thread path. I'm still not
entirely happy with the heuristics around that.
Closely related, the FSM threader is particularly poor at identifying jump
threads which use identical paths (starting from different incoming edges to
the path). The FSM threader makes a unique copy of the path for each jump
thread. THe old threader will create one jump thread path for that case and
redirect all appropriate edges to that common path -- this can significantly
reduce unnecessary block copying. I suspect (but have not confirmed) that
limitation of the FSM threader is playing a role here. Addressing that is near
the top of the gcc-7 queue.
ANyway, I'll try to take a deeper look tomorrow.