[Bug rtl-optimization/71022] GCC prefers register moves over move immediate

wdijkstr at arm dot com gcc-bugzilla@gcc.gnu.org
Tue May 10 10:30:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71022

--- Comment #2 from Wilco <wdijkstr at arm dot com> ---
(In reply to Richard Biener from comment #1)
> IRA might choose to do this as part of life-range splitting/shortening.  Note
> that reg-reg moves may be cheaper code-size wise (like on CISC archs with
> non-fixed insn lengths).  RTL cost should tell you, of course.

The cases I spotted are typically conflicting liveranges that just happen to
share the same initialization value (0 being the most common). This
transformation can be done in a generic phase using RTL costs, the moves even
have the correct regnotes.


More information about the Gcc-bugs mailing list