Re: [PATCH] gcov: Fix __LIBGCC_HAVE_LIBATOMIC definition

2023-11-30 Thread Richard Biener
On Thu, Nov 30, 2023 at 5:21 PM Sebastian Huber
 wrote:
>
> In libgcov we use defined (__LIBGCC_HAVE_LIBATOMIC), so we must define it only
> if needed (vs. #if __LIBGCC_HAVE_LIBATOMIC).

For consistency wouldn't it be better to change the user side in libgcc?

> gcc/c-family/ChangeLog:
>
> PR target/112777
>
> * c-cppbuiltin.cc (c_cpp_builtins):  Define __LIBGCC_HAVE_LIBATOMIC
> only if targetm.have_libatomic is true.
> ---
>  gcc/c-family/c-cppbuiltin.cc | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc
> index e536429fa4c..f8ec6f1747c 100644
> --- a/gcc/c-family/c-cppbuiltin.cc
> +++ b/gcc/c-family/c-cppbuiltin.cc
> @@ -1570,8 +1570,8 @@ c_cpp_builtins (cpp_reader *pfile)
>/* For libgcov.  */
>builtin_define_with_int_value ("__LIBGCC_VTABLE_USES_DESCRIPTORS__",
>  TARGET_VTABLE_USES_DESCRIPTORS);
> -  builtin_define_with_int_value ("__LIBGCC_HAVE_LIBATOMIC",
> -targetm.have_libatomic);
> +  if (targetm.have_libatomic)
> +   cpp_define (pfile, "__LIBGCC_HAVE_LIBATOMIC");
>  }
>
>/* For use in assembly language.  */
> --
> 2.35.3
>


[PATCH] gcov: Fix __LIBGCC_HAVE_LIBATOMIC definition

2023-11-30 Thread Sebastian Huber
In libgcov we use defined (__LIBGCC_HAVE_LIBATOMIC), so we must define it only
if needed (vs. #if __LIBGCC_HAVE_LIBATOMIC).

gcc/c-family/ChangeLog:

PR target/112777

* c-cppbuiltin.cc (c_cpp_builtins):  Define __LIBGCC_HAVE_LIBATOMIC
only if targetm.have_libatomic is true.
---
 gcc/c-family/c-cppbuiltin.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc
index e536429fa4c..f8ec6f1747c 100644
--- a/gcc/c-family/c-cppbuiltin.cc
+++ b/gcc/c-family/c-cppbuiltin.cc
@@ -1570,8 +1570,8 @@ c_cpp_builtins (cpp_reader *pfile)
   /* For libgcov.  */
   builtin_define_with_int_value ("__LIBGCC_VTABLE_USES_DESCRIPTORS__",
 TARGET_VTABLE_USES_DESCRIPTORS);
-  builtin_define_with_int_value ("__LIBGCC_HAVE_LIBATOMIC",
-targetm.have_libatomic);
+  if (targetm.have_libatomic)
+   cpp_define (pfile, "__LIBGCC_HAVE_LIBATOMIC");
 }
 
   /* For use in assembly language.  */
-- 
2.35.3