[FFmpeg-devel] [PATCH 13/17] avfilter/internal: Mark ff_filter_get_nb_threads() as av_pure

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Tue Jun 15 01:41:29 EEST 2021


It does not modify anything; it only returns a value, so it fulfills
the requirements for av_pure.
The deeper rationale behind this change is that this function is called
quite often inside arguments to FFMIN which may lead to two calls to it;
declaring this function as av_pure allows the compiler to optimize the
second call away.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libavfilter/internal.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavfilter/internal.h b/libavfilter/internal.h
index f3b434dbe9..1bcfb830a1 100644
--- a/libavfilter/internal.h
+++ b/libavfilter/internal.h
@@ -363,7 +363,7 @@ static inline int ff_norm_qscale(int qscale, int type)
  * Get number of threads for current filter instance.
  * This number is always same or less than graph->nb_threads.
  */
-int ff_filter_get_nb_threads(AVFilterContext *ctx);
+int ff_filter_get_nb_threads(AVFilterContext *ctx) av_pure;
 
 /**
  * Generic processing of user supplied commands that are set
-- 
2.27.0



More information about the ffmpeg-devel mailing list