aarch64: fix vector multiplication costs
This patch introduces a vect.mul RTX cost and decouples the vector
multiplication costing from the scalar one.
gcc/ChangeLog:
2021-02-09 Andre Vieira <andre.simoesdiasvieira@arm.com>
* config/aarch64/aarch64-cost-tables.h: Add entries for vect.mul.
* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Use vect.mul for
vector multiplies and vect.alu for SSRA.
* config/arm/aarch-common-protos.h (struct vector_cost_table): Define
vect.mul cost field.
* config/arm/aarch-cost-tables.h: Add entries for vect.mul.
* config/arm/arm.c: Likewise.
gcc/testsuite/ChangeLog:
2021-02-09 Andre Vieira <andre.simoesdiasvieira@arm.com>
* gcc.target/aarch64/asimd-mul-to-shl-sub.c: New test.