* [FFmpeg-devel] [PATCH 1/3] configure: fix _Pragma check.
@ 2023-10-29 17:56 Reimar.Doeffinger
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support Reimar.Doeffinger
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 3/3] libavutil/log.c: only include valgrind header when used Reimar.Doeffinger
0 siblings, 2 replies; 4+ messages in thread
From: Reimar.Doeffinger @ 2023-10-29 17:56 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Reimar Döffinger
From: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
The test can current pass when _Pragma is not supported, since
_Pragma might be treated as a implicitly declared function.
This happens e.g. with tinycc.
Extending the check to 2 pragmas both matches the actual use
better and avoids this misdetection.
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index ff3ac9f4de..e2bcf4e1c2 100755
--- a/configure
+++ b/configure
@@ -5987,7 +5987,7 @@ for restrict_keyword in restrict __restrict__ __restrict ""; do
test_code cc "" "char * $restrict_keyword p" && break
done
-check_cc pragma_deprecated "" '_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")'
+check_cc pragma_deprecated "" '_Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")'
# The global variable ensures the bits appear unchanged in the object file.
test_cc <<EOF || die "endian test failed"
--
2.39.3 (Apple Git-145)
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 4+ messages in thread
* [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support.
2023-10-29 17:56 [FFmpeg-devel] [PATCH 1/3] configure: fix _Pragma check Reimar.Doeffinger
@ 2023-10-29 17:56 ` Reimar.Doeffinger
2023-10-29 20:49 ` Martin Storsjö
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 3/3] libavutil/log.c: only include valgrind header when used Reimar.Doeffinger
1 sibling, 1 reply; 4+ messages in thread
From: Reimar.Doeffinger @ 2023-10-29 17:56 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Reimar Döffinger
From: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Fixes compilation with tcc, which does not have aarch64
inline asm support.
---
libavutil/aarch64/cpu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c
index bd780e8591..0d7c1e268d 100644
--- a/libavutil/aarch64/cpu.c
+++ b/libavutil/aarch64/cpu.c
@@ -34,7 +34,7 @@ static int detect_flags(void)
hwcap = getauxval(AT_HWCAP);
-#if defined(HWCAP_CPUID)
+#if defined(HWCAP_CPUID) && HAVE_INLINE_ASM
// We can check for DOTPROD and I8MM using HWCAP_ASIMDDP and
// HWCAP2_I8MM too, avoiding to read the CPUID registers (which triggers
// a trap, handled by the kernel). However the HWCAP_* defines for these
--
2.39.3 (Apple Git-145)
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 4+ messages in thread
* [FFmpeg-devel] [PATCH 3/3] libavutil/log.c: only include valgrind header when used.
2023-10-29 17:56 [FFmpeg-devel] [PATCH 1/3] configure: fix _Pragma check Reimar.Doeffinger
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support Reimar.Doeffinger
@ 2023-10-29 17:56 ` Reimar.Doeffinger
1 sibling, 0 replies; 4+ messages in thread
From: Reimar.Doeffinger @ 2023-10-29 17:56 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Reimar Döffinger
From: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
This is cleaner, but it is also a workaround for when
the header exists, but cannot be compiled.
This will happen when the compiler has no inline asm
support.
Possibly the configure check should be improved as well.
---
libavutil/log.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavutil/log.c b/libavutil/log.c
index 5948e50467..2d358b7ab9 100644
--- a/libavutil/log.c
+++ b/libavutil/log.c
@@ -47,7 +47,7 @@ static AVMutex mutex = AV_MUTEX_INITIALIZER;
#define LINE_SZ 1024
-#if HAVE_VALGRIND_VALGRIND_H
+#if HAVE_VALGRIND_VALGRIND_H && CONFIG_VALGRIND_BACKTRACE
#include <valgrind/valgrind.h>
/* this is the log level at which valgrind will output a full backtrace */
#define BACKTRACE_LOGLEVEL AV_LOG_ERROR
--
2.39.3 (Apple Git-145)
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support.
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support Reimar.Doeffinger
@ 2023-10-29 20:49 ` Martin Storsjö
0 siblings, 0 replies; 4+ messages in thread
From: Martin Storsjö @ 2023-10-29 20:49 UTC (permalink / raw)
To: FFmpeg development discussions and patches; +Cc: Reimar Döffinger
On Sun, 29 Oct 2023, Reimar.Doeffinger@gmx.de wrote:
> From: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
>
> Fixes compilation with tcc, which does not have aarch64
> inline asm support.
> ---
> libavutil/aarch64/cpu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c
> index bd780e8591..0d7c1e268d 100644
> --- a/libavutil/aarch64/cpu.c
> +++ b/libavutil/aarch64/cpu.c
> @@ -34,7 +34,7 @@ static int detect_flags(void)
>
> hwcap = getauxval(AT_HWCAP);
>
> -#if defined(HWCAP_CPUID)
> +#if defined(HWCAP_CPUID) && HAVE_INLINE_ASM
> // We can check for DOTPROD and I8MM using HWCAP_ASIMDDP and
> // HWCAP2_I8MM too, avoiding to read the CPUID registers (which triggers
> // a trap, handled by the kernel). However the HWCAP_* defines for these
> --
> 2.39.3 (Apple Git-145)
LGTM, thanks!
// Martin
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-10-29 20:49 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-29 17:56 [FFmpeg-devel] [PATCH 1/3] configure: fix _Pragma check Reimar.Doeffinger
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 2/3] libavutil/aarch64/cpu.c: HWCAPS requires inline asm support Reimar.Doeffinger
2023-10-29 20:49 ` Martin Storsjö
2023-10-29 17:56 ` [FFmpeg-devel] [PATCH 3/3] libavutil/log.c: only include valgrind header when used Reimar.Doeffinger
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git