aboutsummaryrefslogtreecommitdiff
path: root/gcc/analyzer/program-state.cc
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2020-04-21 17:45:02 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2021-03-23 15:11:51 +0000
commit165bc67beb45f0f7e0d4f41347dab1649436f08a (patch)
treec472bd83047332dee5b93103dd24eaef525e5e3c /gcc/analyzer/program-state.cc
parentbed1736f3aa3909649617dd402d13db1fa8ef5d4 (diff)
downloadgcc-165bc67beb45f0f7e0d4f41347dab1649436f08a.zip
gcc-165bc67beb45f0f7e0d4f41347dab1649436f08a.tar.gz
gcc-165bc67beb45f0f7e0d4f41347dab1649436f08a.tar.bz2
testsuite/arm: Fix -mfloat-abi order in arm_v8_1m_mve_ok_nocache and arm_v8_1m_mve_fp_ok_nocache
Make the order in which we try -mfloat-abi options consistent with the other similar effective targets: try softfp first, then hard. This shows that a few tests implicitly rely on -mfloat-abi=hard, so we add this option via dg-additional-options so that it comes after any potential -mfloat-abi option that the preceding effective-targets might have added. armv8_1m-fpXX-move-1.c tests don't need arm_hard_ok because they don't include arm_mve.h: adding -mfloat-abi=hard when using a soft/softfp toolchain does not lead to the missing include gnu/stubs-*.h error. This patch makes armv8_1m-fpXX-move-1.c pass on arm-linux-gnueabi, and the other tests become unsupported (instead of fail) on this target. On arm-eabi with default cpu/fpu/mode and a+rm multilibs, the same mve/intrinsics/* tests become unsupported instead of pass because arm_hard_ok fails with "selected processor lacks an FPU". Since we also override the fpu via dg-options, we'd need another effective target (say arm_hard_mve_ok) that would check -mfloat-abi=hard -mfpu=auto -march=armv8.1-m.main+mve.fp at the same time. But we have already so many arm effective targets, it doesn't seem like a good way forward. 2021-03-19 Christophe Lyon <christophe.lyon@linaro.org> gcc/testsuite/ * lib/target-supports.exp (check_effective_target_arm_v8_1m_mve_fp_ok_nocache): Fix -mfloat-abi= options order. (check_effective_target_arm_v8_1m_mve_ok_nocache): Likewise * gcc.target/arm/mve/intrinsics/mve_vector_float2.c: Add arm_hard_ok effective target and -mfloat-abi=hard additional option. * gcc.target/arm/mve/intrinsics/mve_vector_int.c: Likewise. * gcc.target/arm/mve/intrinsics/mve_vector_uint.c: Likewise. * gcc.target/arm/mve/intrinsics/mve_vector_uint1.c: Likewise. * gcc.target/arm/mve/intrinsics/mve_vector_uint2.c: Likewise. * gcc.target/arm/mve/intrinsics/vgetq_lane_s64.c: Likewise. * gcc.target/arm/mve/intrinsics/vgetq_lane_u64.c: Likewise. * gcc.target/arm/mve/intrinsics/vsetq_lane_s64.c: Likewise. * gcc.target/arm/mve/intrinsics/vsetq_lane_u64.c: Likewise. * gcc.target/arm/armv8_1m-fp16-move-1.c: Add -mfloat-abi=hard additional option. * gcc.target/arm/armv8_1m-fp32-move-1.c: Likewise. * gcc.target/arm/armv8_1m-fp64-move-1.c: Likewise.
Diffstat (limited to 'gcc/analyzer/program-state.cc')
0 files changed, 0 insertions, 0 deletions