diff mbox series

testuite: Accept vmov.f64

Message ID 20240814200304.2919240-1-torbjorn.svensson@foss.st.com
State New
Headers show
Series testuite: Accept vmov.f64 | expand

Commit Message

Torbjörn SVENSSON Aug. 14, 2024, 8:03 p.m. UTC
Ok for trunk and releases/gcc-14?

--

On Cortex-M55 with fpv5-d16, the vmov.f64 instruction is used.

gcc/testsuite/ChangeLog:

	* armv8_1m-fp64-move-1.c: Accept vmov.f64 instruction.

Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
---
 gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Christophe Lyon Aug. 21, 2024, 4:06 p.m. UTC | #1
On Wed, 14 Aug 2024 at 22:04, Torbjörn SVENSSON
<torbjorn.svensson@foss.st.com> wrote:
>
> Ok for trunk and releases/gcc-14?
>
> --
>
> On Cortex-M55 with fpv5-d16, the vmov.f64 instruction is used.

Hi Torbjorn,

Thanks for the patch: after looking further I realized that we can
always generate vmov.f64 with MVE, so I propose this patch instead:
https://gcc.gnu.org/pipermail/gcc-patches/2024-August/661064.html

Thanks,

Christophe

>
> gcc/testsuite/ChangeLog:
>
>         * armv8_1m-fp64-move-1.c: Accept vmov.f64 instruction.
>
> Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
> ---
>  gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
> index d236f0826c3..44abfcf1518 100644
> --- a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
> +++ b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
> @@ -2,7 +2,7 @@
>  /* { dg-options "-O" } */
>  /* { dg-require-effective-target arm_v8_1m_mve_ok } */
>  /* { dg-add-options arm_v8_1m_mve } */
> -/* { dg-additional-options "-mfloat-abi=hard" } *
> +/* { dg-additional-options "-mfloat-abi=hard" } */
>  /* { dg-final { check-function-bodies "**" "" } } */
>
>  /*
> @@ -39,6 +39,8 @@ w_r ()
>  ** |
>  **     vmov.f32        s3, s1
>  **     vmov.f32        s2, s0
> +** |
> +**     vmov.f64        d1, d0
>  ** )
>  **     bx      lr
>  */
> --
> 2.25.1
>
Richard Earnshaw (lists) Aug. 27, 2024, 10:17 a.m. UTC | #2
On 21/08/2024 17:06, Christophe Lyon wrote:
> On Wed, 14 Aug 2024 at 22:04, Torbjörn SVENSSON
> <torbjorn.svensson@foss.st.com> wrote:
>>
>> Ok for trunk and releases/gcc-14?
>>
>> --
>>
>> On Cortex-M55 with fpv5-d16, the vmov.f64 instruction is used.
> 
> Hi Torbjorn,
> 
> Thanks for the patch: after looking further I realized that we can
> always generate vmov.f64 with MVE, so I propose this patch instead:
> https://gcc.gnu.org/pipermail/gcc-patches/2024-August/661064.html
> 

Agreed, except ...

> Thanks,
> 
> Christophe
> 
>>
>> gcc/testsuite/ChangeLog:
>>
>>         * armv8_1m-fp64-move-1.c: Accept vmov.f64 instruction.
>>
>> Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
>> ---
>>  gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
>> index d236f0826c3..44abfcf1518 100644
>> --- a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
>> +++ b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
>> @@ -2,7 +2,7 @@
>>  /* { dg-options "-O" } */
>>  /* { dg-require-effective-target arm_v8_1m_mve_ok } */
>>  /* { dg-add-options arm_v8_1m_mve } */
>> -/* { dg-additional-options "-mfloat-abi=hard" } *
>> +/* { dg-additional-options "-mfloat-abi=hard" } */

... this typo isn't fixed by Christophe's patch.  Could you commit that as obvious, please.

R.

>>  /* { dg-final { check-function-bodies "**" "" } } */
>>
>>  /*
>> @@ -39,6 +39,8 @@ w_r ()
>>  ** |
>>  **     vmov.f32        s3, s1
>>  **     vmov.f32        s2, s0
>> +** |
>> +**     vmov.f64        d1, d0
>>  ** )
>>  **     bx      lr
>>  */
>> --
>> 2.25.1
>>
diff mbox series

Patch

diff --git a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
index d236f0826c3..44abfcf1518 100644
--- a/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
+++ b/gcc/testsuite/gcc.target/arm/armv8_1m-fp64-move-1.c
@@ -2,7 +2,7 @@ 
 /* { dg-options "-O" } */
 /* { dg-require-effective-target arm_v8_1m_mve_ok } */
 /* { dg-add-options arm_v8_1m_mve } */
-/* { dg-additional-options "-mfloat-abi=hard" } *
+/* { dg-additional-options "-mfloat-abi=hard" } */
 /* { dg-final { check-function-bodies "**" "" } } */
 
 /*
@@ -39,6 +39,8 @@  w_r ()
 ** |
 **	vmov.f32	s3, s1
 **	vmov.f32	s2, s0
+** |
+**	vmov.f64	d1, d0
 ** )
 **	bx	lr
 */