These tests fail when multilib options use -mfpu=xxxx and override the -mfpu=neon-fp16 used for the test: g++.dg/ext/arm-fp16/arm-fp16-ops-5.C g++.dg/ext/arm-fp16/arm-fp16-ops-6.C gcc.dg/torture/arm-fp16-ops-5.c gcc.dg/torture/arm-fp16-ops-6.c gcc.target/arm/fp16-compile-vcvt.c The option -mfpu-neon-fp16 is added via "dg-add-options arm_neon_fp16" after an earlier "dg-require-effective-target arm_neon_fp16_ok". This patch modifies check_effective_target_arm_neon_fp16_ok_nocache to return 0 (causing the test to be skipped) if multilib flags include -mfpu= with a value other than neon-fp16. Tested on arm-none-linux-gnueabi for several multilibs; these tests are compile-only so it didn't matter that I didn't have runtime support for them. OK for trunk and 4.6 branch?