On Mon, Jul 4, 2016 at 2:46 PM, Matthew Wahab <matthew.wa...@foss.arm.com> wrote: > On 17/05/16 15:22, Matthew Wahab wrote: >> This patch adds the command options for the architecture ARMv8.2-A and >> the half-precision extension. The architecture is selected by >> -march=armv8.2-a and has all the properties of -march=armv8.1-a. >> >> This patch also enables the CRC extension (+crc) which is required >> for both ARMv8.2-A and ARMv8.1-A architectures but is not currently >> enabled by default for -march=armv8.1-a. >> >> The half-precision extension is selected using the extension +fp16. This >> enables the VFP FP16 instructions if an ARMv8 VFP unit is also >> specified, e.g. by -mfpu=fp-armv8. It also enables the FP16 NEON >> instructions if an ARMv8 NEON unit is specified, e.g. by >> -mfpu=neon-fp-armv8. Note that if the NEON FP16 instructions are enabled >> then so are the VFP FP16 instructions. > > This a minor respin that moves the setting of arm_fp16_inst in > arm_option_override to immediately before it is used to set the required > arm_fp16_format. > > 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.
OK. Thanks, Ramana > > 2016-07-04 Matthew Wahab <matthew.wa...@arm.com> > > > * config/arm/arm-arches.def ("armv8.1-a"): Add FL_CRC32. > ("armv8.2-a"): New. > ("armv8.2-a+fp16"): New. > * config/arm/arm-protos.h (FL2_ARCH8_2): New. > (FL2_FP16INST): New. > (FL2_FOR_ARCH8_2A): New. > * config/arm/arm-tables.opt: Regenerate. > * config/arm/arm.c (arm_arch8_2): New. > (arm_fp16_inst): New. > (arm_option_override): Set arm_arch8_2 and arm_fp16_inst. Check > for incompatible fp16-format settings. > * config/arm/arm.h (TARGET_VFP_FP16INST): New. > (TARGET_NEON_FP16INST): New. > (arm_arch8_2): Declare. > (arm_fp16_inst): Declare. > * config/arm/bpabi.h (BE8_LINK_SPEC): Add entries for > march=armv8.2-a and march=armv8.2-a+fp16. > * config/arm/t-aprofile (Arch Matches): Add entries for armv8.2-a > and armv8.2-a+fp16. > * doc/invoke.texi (ARM Options): Add "-march=armv8.1-a", > "-march=armv8.2-a" and "-march=armv8.2-a+fp16". >