[FFmpeg-cvslog] avfilter/internal: Mark ff_filter_get_nb_threads() as av_pure

Andreas Rheinhardt git at videolan.org
Mon Jul 19 01:32:09 EEST 2021

ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sun Jun 13 01:57:27 2021 +0200| [b76f9bcfd0796afb3d23a4c833508a34dd516a78] | committer: Andreas Rheinhardt

avfilter/internal: Mark ff_filter_get_nb_threads() as av_pure

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>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b76f9bcfd0796afb3d23a4c833508a34dd516a78

 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

More information about the ffmpeg-cvslog mailing list