This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/49936] [4.7 regression] IRA handles CANNOT_CHANGE_MODE_CLASS poorly, + spills to memory on 4.7
- From: "sandra at codesourcery dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 1 Aug 2011 19:44:36 +0000
- Subject: [Bug rtl-optimization/49936] [4.7 regression] IRA handles CANNOT_CHANGE_MODE_CLASS poorly, + spills to memory on 4.7
- Auto-submitted: auto-generated
- References: <bug-49936-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49936
--- Comment #1 from Sandra Loosemore <sandra at codesourcery dot com> 2011-08-01 19:44:34 UTC ---
Created attachment 24886
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24886
WIP patch to MIPS backend
Here is the WIP patch I referred to earlier. This patch (which handles abs
only) produced pretty good code on 4.6 by adding MIPS-specific expansions of
abs with explicit register constraints, but didn't fix the memory spills on
4.7. Since this is pretty complicated, I think it would be better to fix IRA
to deal better with CANNOT_CHANGE_MODE_CLASS in a target-inspecific way than
continue farther down this route.