[PATCH][ARM][2/4] Fix operand costing logic for SMUL[TB][TB]

Ramana Radhakrishnan ramana.gcc@googlemail.com
Thu Feb 4 09:00:00 GMT 2016


On Fri, Jan 22, 2016 at 9:52 AM, Kyrill Tkachov
<kyrylo.tkachov@foss.arm.com> wrote:
> Hi all,
>
> As part of investigating the codegen effects of a fix for PR 65932 I found
> we assign
> too high a cost for the sign-extending multiply instruction SMULBB.
> This is because we add the cost of a multiply-extend but then also recurse
> into the
> SIGN_EXTEND sub-expressions rather than the registers (or subregs) being
> sign-extended.
>
> This patch is a simple fix. The fix is right by itself, but in combination
> with patch 3
> fix the gcc.target/arm/wmul-2.c testcase.
>
> Bootstrapped and tested on arm-none-linux-gnueabihf.
>
> Ok for trunk?
>

OK.

Thanks,
Ramana
> Thanks,
> Kyrill
>
> 2016-01-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
>
>     * config/arm/arm.c (arm_new_rtx_costs, MULT case): Properly extract
>     the operands of the SIGN_EXTENDs from a SMUL[TB][TB] rtx.



More information about the Gcc-patches mailing list