This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/50588] gcc produce bad inlined code with -march=athlon -O2
- From: "bernds at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 06 Oct 2011 13:30:31 +0000
- Subject: [Bug target/50588] gcc produce bad inlined code with -march=athlon -O2
- Auto-submitted: auto-generated
- References: <bug-50588-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50588
--- Comment #14 from Bernd Schmidt <bernds at gcc dot gnu.org> 2011-10-06 13:30:31 UTC ---
It looks like ifcvt (or rather, can_move_insns_across_p) is doing the right
thing. The problem is that may_trap_or_fault_p returns false for the memory
reference with an out-of-range address based on the frame pointer.
I'll keep thinking about it; no good idea yet about how to fix it without
losing too many optimization opportunities.