On 9/11/18 7:38 AM, Vlad Lazar wrote:
> Hi.
> 
> This patch makes the scheduler prefer instructions with higher cost if
> two given instructions are equally good.
> Issuing more restricted instructions first is particularly useful on
> in-order cores because it increases the
> number of dual issue opportunities.
> 
> For example, on AArch64, instead of:
> 
>   add     x11, x2, 96
>   mov     x4, x2
>   mov     w10, 1
>   ldrh    w5, [x0]
>   ldrh    w13, [x0, 2]
>   ldrh    w9, [x0, 4]
>   ldrh    w12, [x0, 6]
>   b       .L759
> 
> Generate:
> 
>   ldrh    w5, [x0]
>   add     x11, x2, 96
>   ldrh    w13, [x0, 2]
>   mov     x4, x2
>   ldrh    w9, [x0, 4]
>   mov     w10, 1
>   ldrh    w12, [x0, 6]
>   b       .L759
> 
> Bootstrapped and regtested on aarch64-none-linux-gnu and there are no
> regressions.
> Ok for trunk?
> 
> Thanks,
> Vlad
> 
> gcc/
> Changelog for gcc/Changelog
> 2018-09-11  Vlad Lazar  <vlad.la...@arm.com>
> 
>     * haifa-sched.c (rank_for_schedule): Schedule by INSN_COST.
>     (rfs_decision): New scheduling decision.
OK.
jeff

Reply via email to