[libstdc++,testsuite] xfail dbl from_chars for aarch64 rtems ldbl

Message ID ormt11y80p.fsf@lxoliva.fsfla.org
State Committed
Commit a371a639b76f1bdcd7a957f400b5a7c0faf30a15
Headers
Series [libstdc++,testsuite] xfail dbl from_chars for aarch64 rtems ldbl |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 success Testing passed

Commit Message

Alexandre Oliva June 14, 2023, 10:49 p.m. UTC
  rtems, like vxworks, uses fast-float doubles for from_chars even for
long double, so it loses precision, so expect the long double bits to
fail on aarch64.

Regstrapped on x86_64-linux-gnu, also tested on aarch64-rtems6.  Ok to
install?


for  libstdc++-v3/ChangeLog

	* testsuite/20_util/from_chars/4.cc: Skip long double on
	aarch64-rtems.
---
 libstdc++-v3/testsuite/20_util/from_chars/4.cc |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Jonathan Wakely June 15, 2023, 10:44 a.m. UTC | #1
On Thu, 15 Jun 2023, 01:49 Alexandre Oliva via Libstdc++, <
libstdc++@gcc.gnu.org> wrote:

>
> rtems, like vxworks, uses fast-float doubles for from_chars even for
> long double, so it loses precision, so expect the long double bits to
> fail on aarch64.
>
> Regstrapped on x86_64-linux-gnu, also tested on aarch64-rtems6.  Ok to
> install?
>

OK, thanks



>
> for  libstdc++-v3/ChangeLog
>
>         * testsuite/20_util/from_chars/4.cc: Skip long double on
>         aarch64-rtems.
> ---
>  libstdc++-v3/testsuite/20_util/from_chars/4.cc |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> index 206e18daeb229..76e07df9d2bf3 100644
> --- a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> +++ b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> @@ -18,7 +18,7 @@
>  // <charconv> is supported in C++14 as a GNU extension
>  // { dg-do run { target c++14 } }
>  // { dg-add-options ieee }
> -// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target
> aarch64-*-vxworks* x86_64-*-vxworks* } }
> +// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-rtems*
> aarch64-*-vxworks* x86_64-*-vxworks* } }
>
>  #include <charconv>
>  #include <string>
>
> --
> Alexandre Oliva, happy hacker                https://FSFLA.org/blogs/lxo/
>    Free Software Activist                       GNU Toolchain Engineer
> Disinformation flourishes because many people care deeply about injustice
> but very few check the facts.  Ask me about <https://stallmansupport.org>
>
  

Patch

diff --git a/libstdc++-v3/testsuite/20_util/from_chars/4.cc b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
index 206e18daeb229..76e07df9d2bf3 100644
--- a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
+++ b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
@@ -18,7 +18,7 @@ 
 // <charconv> is supported in C++14 as a GNU extension
 // { dg-do run { target c++14 } }
 // { dg-add-options ieee }
-// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-vxworks* x86_64-*-vxworks* } }
+// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-rtems* aarch64-*-vxworks* x86_64-*-vxworks* } }
 
 #include <charconv>
 #include <string>