[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v7 13/22] osdep: Avoid using Clang-specific __builtin_availab
From: |
Akihiko Odaki |
Subject: |
Re: [PATCH v7 13/22] osdep: Avoid using Clang-specific __builtin_available() |
Date: |
Mon, 7 Mar 2022 13:11:57 +0900 |
Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
On Mon, Mar 7, 2022 at 8:19 AM Philippe Mathieu-Daudé
<philippe.mathieu.daude@gmail.com> wrote:
>
> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>
> Remove the Clang specific __builtin_available() to allow building
> with GCC, otherwise we get:
>
> include/qemu/osdep.h: In function 'qemu_thread_jit_write':
> include/qemu/osdep.h:787:9: warning: implicit declaration of function
> '__builtin_available'; did you mean '__builtin_scalbl'?
> [-Wimplicit-function-declaration]
> 787 | if (__builtin_available(macOS 11.0, *)) {
> | ^~~~~~~~~~~~~~~~~~~
> | __builtin_scalbl
> include/qemu/osdep.h:787:9: warning: nested extern declaration of
> '__builtin_available' [-Wnested-externs]
> include/qemu/osdep.h:787:29: error: 'macOS' undeclared (first use in this
> function)
> 787 | if (__builtin_available(macOS 11.0, *)) {
> | ^~~~~
> include/qemu/osdep.h:787:29: note: each undeclared identifier is reported
> only once for each function it appears in
> include/qemu/osdep.h:787:34: error: expected ')' before numeric constant
> 787 | if (__builtin_available(macOS 11.0, *)) {
> | ~ ^~~~~
> | )
>
> Beside, on macOS Catalina we get 2254 times:
>
> include/qemu/osdep.h:780:5: warning: 'pthread_jit_write_protect_np' is only
> available on macOS 11.0 or newer [-Wunguarded-availability-new]
> pthread_jit_write_protect_np(true);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Fix by using a stricker toolchain version low range, replacing
> MAC_OS_X_VERSION_MAX_ALLOWED by MAC_OS_X_VERSION_MIN_REQUIRED.
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> include/qemu/osdep.h | 10 +++-------
> 1 file changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
> index 7bcce3bceb..488a286300 100644
> --- a/include/qemu/osdep.h
> +++ b/include/qemu/osdep.h
> @@ -642,19 +642,15 @@ size_t qemu_get_host_physmem(void);
> * for the current thread.
> */
> #if defined(MAC_OS_VERSION_11_0) && \
> - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_VERSION_11_0
> + MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_VERSION_11_0
> static inline void qemu_thread_jit_execute(void)
> {
> - if (__builtin_available(macOS 11.0, *)) {
> - pthread_jit_write_protect_np(true);
> - }
> + pthread_jit_write_protect_np(true);
> }
>
> static inline void qemu_thread_jit_write(void)
> {
> - if (__builtin_available(macOS 11.0, *)) {
> - pthread_jit_write_protect_np(false);
> - }
> + pthread_jit_write_protect_np(false);
> }
> #else
> static inline void qemu_thread_jit_write(void) {}
> --
> 2.34.1
>
- Re: [PATCH v7 06/22] hvf: Fix OOB write in RDTSCP instruction decode, (continued)
[PATCH v7 07/22] block/file-posix: Remove a deprecation warning on macOS 12, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 08/22] audio/coreaudio: Remove a deprecation warning on macOS 12, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 09/22] audio/dbus: Fix building with modules on macOS, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 10/22] audio: Log context for audio bug, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 11/22] coreaudio: Always return 0 in handle_voice_change, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 12/22] audio: Rename coreaudio extension to use Objective-C compiler, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 13/22] osdep: Avoid using Clang-specific __builtin_available(), Philippe Mathieu-Daudé, 2022/03/06
- Re: [PATCH v7 13/22] osdep: Avoid using Clang-specific __builtin_available(),
Akihiko Odaki <=
[PATCH v7 14/22] meson: Resolve the entitlement.sh script once for good, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 15/22] meson: Log QEMU_CXXFLAGS content in summary, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 16/22] configure: Pass filtered QEMU_OBJCFLAGS to meson, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 17/22] ui/cocoa: Constify qkeycode translation arrays, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 18/22] ui/cocoa: add option to disable left-command forwarding to guest, Philippe Mathieu-Daudé, 2022/03/06
[PATCH v7 19/22] ui/cocoa: release mouse when user switches away from QEMU window, Philippe Mathieu-Daudé, 2022/03/06