http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48345
--- Comment #4 from Vladimir Makarov <vmakarov at redhat dot com> 2011-03-30 00:49:50 UTC --- (In reply to comment #3) > Thanks! Is > > PR rtl-optimization/48345 > * ira-color.c (assign_hard_reg): Skip prohibited hard registers > for given class and mode. > > OK for ChangeLog? Sorry, Kazumoto. Please do not commit the patch. The problem is a bit more deeper than I thought. The profitable hard regs should exclude prohibited hard regs for given mode. It is true for major allocation. The wrong register is assigned during secondary allocation (after flattening IRA IR or during reload) where profitable hard register is not defined properly. So the fix should contain the code for proper setting profitable hard regs. I'll create a patch soon. Sorry again for jumping to a wrong conclusion.