This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug rtl-optimization/50107] [IRA, i386] allocates regiters in very non-optimal way


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50107

--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> 2011-08-17 18:43:41 UTC ---
(In reply to comment #2)
> I guess something wrong with hard register preferencing for multi-register
> pseudos in ira-color.c::ira_assign.  I believe it works fine for one-register
> pseudos.  I'll look at this.  Thanks for reporting.

One problem is IRA ues RCX/RBX pair, instead of R8/R9, for TImode.
Since RBX is callee-saved, we have to save and restore it.

> By the way, your patch is wrong.  There should be TARGET_64BIT in define_split
> instead of !TARGET_64BIT.

It has been fixed.  Thanks.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]