This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/51117] [4.7 regression] rev.181172 causes glibc build failure
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 09 Dec 2011 16:09:48 +0000
- Subject: [Bug tree-optimization/51117] [4.7 regression] rev.181172 causes glibc build failure
- Auto-submitted: auto-generated
- References: <bug-51117-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51117
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-12-09 16:09:48 UTC ---
Created attachment 26034
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26034
gcc47-pr51117-sink.patch
So far untested attempt to sink clobbers if a BB with all EH pred edges and a
single EH succ edge, ending with internal throwing RESX contains other than
that just CLOBBER stmts (and optionally debug stmts).
Such BBs force us to immediately rethrow with no actual code in between, when
the clobber stmts are sunk into the successor, we can actually ehcleanup those.
Had to tweak a little bit the conflict detection in the expander for that
though, without that it would think the vars still conflict on the incoming
edge (even when no actual insns that might touch memory appear before the
clobber).