Pointers to these functions are used in comparisons. Currently the compiler has to presume the worst for these, namely that the functions are from another DSO and therefore loads their addresses from the GOT (which also entails a relocation entry that is processed at runtime, regardless of whether the code using them is run or not). This changes if these functions are declared as hidden.
Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> --- libavcodec/fdctdsp.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavcodec/fdctdsp.h b/libavcodec/fdctdsp.h index 82edf8b3bb..9dc375322f 100644 --- a/libavcodec/fdctdsp.h +++ b/libavcodec/fdctdsp.h @@ -21,6 +21,7 @@ #include <stdint.h> +#include "libavutil/attributes_internal.h" #include "avcodec.h" typedef struct FDCTDSPContext { @@ -28,6 +29,7 @@ typedef struct FDCTDSPContext { void (*fdct248)(int16_t *block /* align 16 */); } FDCTDSPContext; +FF_VISIBILITY_PUSH_HIDDEN void ff_fdctdsp_init(FDCTDSPContext *c, AVCodecContext *avctx); void ff_fdctdsp_init_ppc(FDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth); @@ -40,5 +42,6 @@ void ff_jpeg_fdct_islow_8(int16_t *data); void ff_jpeg_fdct_islow_10(int16_t *data); void ff_fdct248_islow_8(int16_t *data); void ff_fdct248_islow_10(int16_t *data); +FF_VISIBILITY_POP_HIDDEN #endif /* AVCODEC_FDCTDSP_H */ -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".