On 04/02/16 09:00, Ramana Radhakrishnan wrote:
On Fri, Jan 22, 2016 at 9:52 AM, Kyrill Tkachov
<kyrylo.tkac...@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.
Is it ok to backport this to the GCC 5 branch?
It fixes a testcase with cortex-a5 tuning and was tested by Christophe:
https://gcc.gnu.org/ml/gcc-patches/2016-02/msg01238.html
Thanks,
Kyrill
Thanks,
Ramana
Thanks,
Kyrill
2016-01-22 Kyrylo Tkachov <kyrylo.tkac...@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.