[PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

Uros Bizjak ubizjak@gmail.com
Fri Jan 17 14:24:00 GMT 2014


On Fri, Jan 17, 2014 at 3:19 PM, H.J. Lu <hongjiu.lu@intel.com> wrote:
> ix86_split_lea_for_addr transforms a single LEA instruction into a series
> of MOV and ADD instructions.  For
>
> lea 0x400(%eax, %ecx, 8), %edx
>
> we get
>
> mov %eax, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add %ecx, %edx
> add $0x400, %edx
>
> For -mtune=intel, we want to turn on X86_TUNE_OPT_AGU, but avoid
> ix86_split_lea_for_addr.  This patch adds X86_TUNE_AVOID_LEA_FOR_ADDR
> and PROCESSOR_INTEL.  We keep PROCESSOR_INTEL the same as
> PROCESSOR_SILVERMONT, except that X86_TUNE_AVOID_LEA_FOR_ADDR isn't
> turned on for PROCESSOR_INTEL.  OK for trunk?

As said earlier, m_INTEL is not a processor, but equals a REAL
processor, so the patch is not acceptable.

Uros.



More information about the Gcc-patches mailing list