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

--- Comment #6 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Jakub Jelinek from comment #5)
> Created attachment 31893 [details]
> gcc49-pr59880.patch
> 
> Untested fix.  The reason for the problem is that if it is just a
> (zero-extended SI->DI or normal) move from %r13, %rbp or (for k6 %esi), then
> decomposition sets parts.disp to const0_rtx and thus we count it as two
> parts, even when we wouldn't emit it as a lea insn originally.

True. However, can you put new test before costly call to
ix86_ok_to_clobber_flags and ix86_decompose_address?

Reply via email to