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/50088] movzbl is generated instead of movl


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

--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> 2011-08-15 15:47:39 UTC ---
(In reply to comment #4)
> (In reply to comment #3)
> > It is done on purpose:
> > 
> >   /* X86_TUNE_MOVX: Enable to zero extend integer registers to avoid
> >      partial dependencies.  */
> >   m_PPRO | m_P4_NOCONA | m_CORE2I7 | m_ATOM | m_GEODE | m_AMD_MULTIPLE  |
> > m_GENERIC,
> > 
> > You can remove m_ATOM to see its performance impact with -mtune=atom
> > on Atom.
> 
> Well, yes, I think the proposal was to spill/load the full SImode instead
> which would avoid both the partial dependency and the mismatched load/store
> size.  No?

It is for movqi.  We can only safely replace mozbl with movl if
the source is 4byte aligned.  It should a new backend option.


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