[ARM/FDPIC v6 20/24] [ARM][testsuite] FDPIC: Skip tests using architectures unsupport...
authorChristophe Lyon <christophe.lyon@st.com>
Tue, 17 Sep 2019 12:35:21 +0000 (14:35 +0200)
committerChristophe Lyon <clyon@gcc.gnu.org>
Tue, 17 Sep 2019 12:35:21 +0000 (14:35 +0200)
commit6fbb9dd1030a749e6055e8c7c1b3406055d3add8
treeb7569000252c22a3e70dbfc997f50821ed8be0ad
parent351e7c3b5fbd45bde3efb601f7fee9a31c4f2063
[ARM/FDPIC v6 20/24] [ARM][testsuite] FDPIC: Skip tests using architectures unsupported by FDPIC

Since FDPIC currently supports arm and thumb-2 modes only, these tests
fail because they enforce an architecture version that doesn't match
these restrictions.

This patch introduces new values for the arm_arch effective-target
(v4t_thumb, v5t_thumb, v5te_thumb, v6_thumb, v6k_thumb, v6z_thumb) as
needed, and adds them to the relevant tests.  In addition, it adds
v4t_arm, v5t_arm, v5te_arm, v6_arm, v6k_arm and v6z_arm to avoid
skipping some tests when GCC is configured to generate Thumb code by
default.

It also adds the corresponding non-thumb effective-target to the tests
that were missing it.

The existing v4t, v5t, v5te, v6 v6k and v6z effective-targets now force
-mfloat-abi=softfp since these thumb-1 targets do not support
hard-float anyway.

Finally, the patch removes the special case to detect the presence of
-marm in the flags, since it makes atomic_loaddi tests unsupported:
since the flags in question also include -march, the combination is
supported, while -marm alone is not if GCC is configured to target an
M-profile CPU.

2019-19-17  Christophe Lyon  <christophe.lyon@st.com>

* lib/target-supports.exp
(check_effective_target_arm_arch_FUNC_ok): Add v4t_arm, v4t_thumb,
v5t_arm, v5t_thumb, v5te_arm, v5te_thumb, v6_arm, v6_thumb,
v6k_arm, v6k_thumb, v6z_arm, v6z_thumb.
Add -mfloat-abi=softfp to v4t, v5t, v5te, v6, v6k, v6z.
Remove early exit for -marm.
* gcc.target/arm/armv6-unaligned-load-ice.c: Add arm_arch
effective-target.
* gcc.target/arm/attr-unaligned-load-ice.c: Likewise.
* gcc.target/arm/ftest-armv4-arm.c: Likewise.
* gcc.target/arm/ftest-armv4t-arm.c: Likewise.
* gcc.target/arm/ftest-armv4t-thumb.c: Likewise.
* gcc.target/arm/ftest-armv5t-arm.c: Likewise.
* gcc.target/arm/ftest-armv5t-thumb.c: Likewise.
* gcc.target/arm/ftest-armv5te-arm.c: Likewise.
* gcc.target/arm/ftest-armv5te-thumb.c: Likewise.
* gcc.target/arm/ftest-armv6-arm.c: Likewise.
* gcc.target/arm/ftest-armv6-thumb.c: Likewise.
* gcc.target/arm/ftest-armv6k-arm.c: Likewise.
* gcc.target/arm/ftest-armv6k-thumb.c: Likewise.
* gcc.target/arm/ftest-armv6m-thumb.c: Likewise.
* gcc.target/arm/ftest-armv6t2-arm.c: Likewise.
* gcc.target/arm/ftest-armv6t2-thumb.c: Likewise.
* gcc.target/arm/ftest-armv6z-arm.c: Likewise.
* gcc.target/arm/ftest-armv6z-thumb.c: Likewise.
* gcc.target/arm/g2.c: Likewise.
* gcc.target/arm/macro_defs1.c: Likewise.
* gcc.target/arm/pr59858.c: Likewise.
* gcc.target/arm/pr65647-2.c: Likewise.
* gcc.target/arm/pr79058.c: Likewise.
* gcc.target/arm/pr83712.c: Likewise.
* gcc.target/arm/pragma_arch_switch_2.c: Likewise.
* gcc.target/arm/scd42-1.c: Likewise.
* gcc.target/arm/scd42-2.c: Likewise.
* gcc.target/arm/scd42-3.c: Likewise.
* gcc.c-torture/compile/pr82096.c: Fix arm_arch effective-target.
* gcc.target/arm/attr_arm-err.c: Likewise.
* gcc.target/arm/di-longlong64-sync-withldrexd.c: Likewise.

From-SVN: r275803
33 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr82096.c
gcc/testsuite/gcc.target/arm/armv6-unaligned-load-ice.c
gcc/testsuite/gcc.target/arm/attr-unaligned-load-ice.c
gcc/testsuite/gcc.target/arm/attr_arm-err.c
gcc/testsuite/gcc.target/arm/di-longlong64-sync-withldrexd.c
gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv4t-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv4t-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv5t-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv5t-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv5te-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv5te-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv6-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv6-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv6k-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv6k-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv6m-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv6t2-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv6t2-thumb.c
gcc/testsuite/gcc.target/arm/ftest-armv6z-arm.c
gcc/testsuite/gcc.target/arm/ftest-armv6z-thumb.c
gcc/testsuite/gcc.target/arm/g2.c
gcc/testsuite/gcc.target/arm/macro_defs1.c
gcc/testsuite/gcc.target/arm/pr59858.c
gcc/testsuite/gcc.target/arm/pr65647-2.c
gcc/testsuite/gcc.target/arm/pr79058.c
gcc/testsuite/gcc.target/arm/pr83712.c
gcc/testsuite/gcc.target/arm/pragma_arch_switch_2.c
gcc/testsuite/gcc.target/arm/scd42-1.c
gcc/testsuite/gcc.target/arm/scd42-2.c
gcc/testsuite/gcc.target/arm/scd42-3.c
gcc/testsuite/lib/target-supports.exp