(The backport I've only just posted is not enough for the tests to pass; there's another problem)
r14-10824 is a backport of r15-4549, that rewrote and extended into check-function-bodies the save/restore expectations introduced in r15-2160. Alas, r15-2160 mentions an insn_propagation patch that enables those specific save/restore insns to be generated, presumably r15-1945, and this change is not present in gcc-14, so we get different save/restore insns, and the test fails, even after backporting r15-1035, that allows for single-character function names in check-function-bodies. Drop the save/restore checks that don't belong in gcc-14. Tested with gcc-14 on arm-vxworks7r2. Ok to install in gcc-14? for gcc/testsuite/ChangeLog * gcc.target/arm/fp16-aapcs-1.c: Drop save/restore checks. * gcc.target/arm/fp16-aapcs-2.c: Likewise. * gcc.target/arm/fp16-aapcs-3.c: Likewise. * gcc.target/arm/fp16-aapcs-4.c: Likewise. --- gcc/testsuite/gcc.target/arm/fp16-aapcs-1.c | 7 ++----- gcc/testsuite/gcc.target/arm/fp16-aapcs-2.c | 8 -------- gcc/testsuite/gcc.target/arm/fp16-aapcs-3.c | 7 ++----- gcc/testsuite/gcc.target/arm/fp16-aapcs-4.c | 8 -------- 4 files changed, 4 insertions(+), 26 deletions(-) diff --git a/gcc/testsuite/gcc.target/arm/fp16-aapcs-1.c b/gcc/testsuite/gcc.target/arm/fp16-aapcs-1.c index b18d7cda65c8d..450c52fcd5c6c 100644 --- a/gcc/testsuite/gcc.target/arm/fp16-aapcs-1.c +++ b/gcc/testsuite/gcc.target/arm/fp16-aapcs-1.c @@ -29,10 +29,8 @@ Below block is for non-armv8.1 ** ... ** vmov\.f32 s0, \2 ** ) -** vstr\.32 s2, \[sp, #4\] @ int +** ... ** bl swap -** vldr\.32 s2, \[sp, #4\] @ int -** vmov\.f32 s0, s2 ** | @@ -50,9 +48,8 @@ Below block is for armv8.1 ** ... ** vmov s0, \4 @ __fp16 ** ) -** vstr\.32 s2, \[sp, #4\] @ int +** ... ** bl swap -** vldr\.16 s0, \[sp, #4\] ** ) ** ... diff --git a/gcc/testsuite/gcc.target/arm/fp16-aapcs-2.c b/gcc/testsuite/gcc.target/arm/fp16-aapcs-2.c index 48510e895368d..c15f29dd3e44b 100644 --- a/gcc/testsuite/gcc.target/arm/fp16-aapcs-2.c +++ b/gcc/testsuite/gcc.target/arm/fp16-aapcs-2.c @@ -28,14 +28,6 @@ swap (__fp16, __fp16); ** ) ** ... */ -/* -** F: { target arm_little_endian } -** ... -** str r2, \[sp, #4\] -** bl swap -** ldrh r0, \[sp, #4\] @ __fp16 -** ... -*/ __fp16 F (__fp16 a, __fp16 b, __fp16 c) { diff --git a/gcc/testsuite/gcc.target/arm/fp16-aapcs-3.c b/gcc/testsuite/gcc.target/arm/fp16-aapcs-3.c index 7238ef3a02e03..1102dc7344919 100644 --- a/gcc/testsuite/gcc.target/arm/fp16-aapcs-3.c +++ b/gcc/testsuite/gcc.target/arm/fp16-aapcs-3.c @@ -29,10 +29,8 @@ Below block is for non-armv8.1 ** ... ** vmov\.f32 s0, \2 ** ) -** vstr\.32 s2, \[sp, #4\] @ int +** ... ** bl swap -** vldr\.32 s2, \[sp, #4\] @ int -** vmov\.f32 s0, s2 ** | @@ -50,9 +48,8 @@ Below block is for armv8.1 ** ... ** vmov s0, \4 ** ) -** vstr\.32 s2, \[sp, #4\] @ int +** ... ** bl swap -** vldr\.16 s0, \[sp, #4\] ** ) ** ... diff --git a/gcc/testsuite/gcc.target/arm/fp16-aapcs-4.c b/gcc/testsuite/gcc.target/arm/fp16-aapcs-4.c index 13f08d8afa32d..00a44d15129a8 100644 --- a/gcc/testsuite/gcc.target/arm/fp16-aapcs-4.c +++ b/gcc/testsuite/gcc.target/arm/fp16-aapcs-4.c @@ -28,14 +28,6 @@ swap (__fp16, __fp16); ** ) ** ... */ -/* -** F: { target arm_little_endian } -** ... -** str r2, \[sp, #4\] -** bl swap -** ldrh r0, \[sp, #4\] @ __fp16 -** ... -*/ __fp16 F (__fp16 a, __fp16 b, __fp16 c) { -- Alexandre Oliva, happy hacker https://blog.lx.oliva.nom.br/ Free Software Activist FSFLA co-founder GNU Toolchain Engineer More tolerance and less prejudice are key for inclusion and diversity. Excluding neuro-others for not behaving ""normal"" is *not* inclusive!