The ACLE intrinsics introduced to support the ARMv8.2 FP16 extensions require that intrinsics for scalar (VFP) instructions are available under different conditions from those for the NEON intrinsics. To support this, changes to the builtins support code are needed to enable the scalar intrinsics to be initialized and expanded independently of the NEON intrinsics. This patch prepares for this by refactoring some of the builtin support code so that it can be used for both the scalar and the NEON intrinsics. 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 for trunk? Matthew 2016-05-17 Matthew Wahab * config/arm/arm-builtins.c (ARM_BUILTIN_NEON_PATTERN_START): Change offset calculation. (arm_init_neon_builtin): New. (arm_init_builtins): Move body of a loop to the standalone function arm_init_neon_builtin. (arm_expand_neon_builtin_1): New. Update comment. Function body moved from arm_expand_neon_builtin with some white-space fixes. (arm_expand_neon_builtin): Move code into the standalone function arm_expand_neon_builtin_1.