On 2024-11-01 19:40, Richard Earnshaw (lists) wrote:
On 24/10/2024 09:50, Torbjörn SVENSSON wrote:
Ok for trunk and releases/gcc-14?
--
As these tests are set to execute and require neon hardware to do so,
add the missing dg-require-effective-target arm_neon_hw.
gcc/testsuite/ChangeLog:
* gcc.target/arm/memset-inline-4.c: Use effective-target
arm_neon_hw.
* gcc.target/arm/memset-inline-5.c: Likewise.
* gcc.target/arm/memset-inline-6.c: Likewise.
Signed-off-by: Torbjörn SVENSSON <torbjorn.svens...@foss.st.com>
These tests combine both a scan-assembler and a run. Unconditionally requiring
neon hardware before running the test means we lose the scan-assembler when the
hardware is not available. But I think you can write
/* { dg-do run { arm_neon_hw } } */
instead and now the framework will only try to run the test if hardware is
available, but will fall back to a compile test otherwise.
Would you mind testing that out, please?
Using
/* { dg-do run { target arm_neon_hw } } */
works, but I'm not entirely sure sure what the difference is.
With both solutions (dg-run and dg-require-effective-target), Cortex-A7
tests with -mfloat-abi=soft marks the tests as unsupported. All other
targets that I test is unchanged.
I suppose that the reason why there is no difference between the two
suggested solutions is that the tests are skipped if
arm_tune_string_ops_prefer_neon is not true (the line above my addition
in the patch).
Let me know if you prefer the dg-require-effective-target or your
solution. If we go for your solution, should I send a v2 with it?
Kind regards,
Torbjörn