On Tue, May 17, 2016 at 3:29 PM, Matthew Wahab <matthew.wa...@foss.arm.com> wrote: > The handling of 16-bit integer data-movement in the ARM backend doesn't > make full use of the VFP instructions when they are available, even when > the values are for use in VFP operations. > > This patch adds support for using the VFP instructions and registers > when moving 16-bit integer and floating point data between registers and > between registers and memory. > > Tested the series for arm-none-linux-gnueabihf with native bootstrap and > make check and for arm-none-eabi and armeb-none-eabi with make check on > an ARMv8.2-A emulator. Tested this patch for arm-none-linux-gnueabihf > with native bootstrap and make check and for arm-none-eabi with > check-gcc on an ARMv8.2-A emulator. > > Ok for trunk?
OK. ( the test function where this will make a difference is testhisf for the record) ... Ramana > Matthew > > 2016-05-17 Jiong Wang <jiong.w...@arm.com> > Matthew Wahab <matthew.wa...@arm.com> > > * config/arm/arm.c (output_move_vfp): Weaken assert to allow > HImode. > (arm_hard_regno_mode_ok): Allow HImode values in VFP registers. > * config/arm/arm.md (*movhi_insn_arch4) Disable when VFP registers > are > available. > (*movhi_bytes): Likewise. > * config/arm/vfp.md (*arm_movhi_vfp): New. > (*thumb2_movhi_vfp): New. > > testsuite/ > 2016-05-17 Matthew Wahab <matthew.wa...@arm.com> > > * gcc.target/arm/short-vfp-1.c: New. >