Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables as hidden
@ 2022-10-14 22:31 Andreas Rheinhardt
  2022-10-14 22:32 ` [FFmpeg-devel] [PATCH 2/2] avcodec/msmpeg4data: Mark tables " Andreas Rheinhardt
  2022-10-17 14:41 ` [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables " Andreas Rheinhardt
  0 siblings, 2 replies; 3+ messages in thread
From: Andreas Rheinhardt @ 2022-10-14 22:31 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

These tables are not exported as avpriv symbols, but instead
included into every library using them. Therefore they
can be mark with the hidden elf visibility. For certain arches
this is necessary in order to avoid building suboptimal code;
for other arches it just allows the compiler to simplify accesses
like ff_mjpeg_bits_dc_luminance + 1 because the "+ 1" can be baked
into the offset.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/jpegtables.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/jpegtables.h b/libavcodec/jpegtables.h
index 49b5ecdeb0..39baec3efb 100644
--- a/libavcodec/jpegtables.h
+++ b/libavcodec/jpegtables.h
@@ -23,6 +23,9 @@
 
 #include <stdint.h>
 
+#include "libavutil/attributes_internal.h"
+
+FF_VISIBILITY_PUSH_HIDDEN
 extern const uint8_t ff_mjpeg_bits_dc_luminance[];
 extern const uint8_t ff_mjpeg_val_dc[];
 
@@ -33,5 +36,6 @@ extern const uint8_t ff_mjpeg_val_ac_luminance[];
 
 extern const uint8_t ff_mjpeg_bits_ac_chrominance[];
 extern const uint8_t ff_mjpeg_val_ac_chrominance[];
+FF_VISIBILITY_POP_HIDDEN
 
 #endif /* AVCODEC_JPEGTABLES_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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [FFmpeg-devel] [PATCH 2/2] avcodec/msmpeg4data: Mark tables as hidden
  2022-10-14 22:31 [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables as hidden Andreas Rheinhardt
@ 2022-10-14 22:32 ` Andreas Rheinhardt
  2022-10-17 14:41 ` [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables " Andreas Rheinhardt
  1 sibling, 0 replies; 3+ messages in thread
From: Andreas Rheinhardt @ 2022-10-14 22:32 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

This e.g. allows compilers to bake the "+ 256" offset
used to access ff_v2_dc_(lum|chroma)_table into
the general offset; for certain arches this is also necessary
in order to avoid building suboptimal code.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/msmpeg4data.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/msmpeg4data.h b/libavcodec/msmpeg4data.h
index ec7957c126..b2b5bade4d 100644
--- a/libavcodec/msmpeg4data.h
+++ b/libavcodec/msmpeg4data.h
@@ -32,6 +32,8 @@
 
 #include <stdint.h>
 
+#include "libavutil/attributes_internal.h"
+
 #include "rl.h"
 #include "vlc.h"
 
@@ -45,6 +47,7 @@ typedef struct MVTable {
     VLC vlc;                /* decoding: vlc */
 } MVTable;
 
+FF_VISIBILITY_PUSH_HIDDEN
 extern VLC ff_msmp4_mb_i_vlc;
 extern VLC ff_msmp4_dc_luma_vlc[2];
 extern VLC ff_msmp4_dc_chroma_vlc[2];
@@ -83,5 +86,6 @@ extern const uint32_t ff_table1_dc_chroma[120][2];
 
 #define WMV2_INTER_CBP_TABLE_COUNT 4
 extern const uint32_t (* const ff_wmv2_inter_table[WMV2_INTER_CBP_TABLE_COUNT])[2];
+FF_VISIBILITY_POP_HIDDEN
 
 #endif /* AVCODEC_MSMPEG4DATA_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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables as hidden
  2022-10-14 22:31 [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables as hidden Andreas Rheinhardt
  2022-10-14 22:32 ` [FFmpeg-devel] [PATCH 2/2] avcodec/msmpeg4data: Mark tables " Andreas Rheinhardt
@ 2022-10-17 14:41 ` Andreas Rheinhardt
  1 sibling, 0 replies; 3+ messages in thread
From: Andreas Rheinhardt @ 2022-10-17 14:41 UTC (permalink / raw)
  To: ffmpeg-devel

Andreas Rheinhardt:
> These tables are not exported as avpriv symbols, but instead
> included into every library using them. Therefore they
> can be mark with the hidden elf visibility. For certain arches
> this is necessary in order to avoid building suboptimal code;
> for other arches it just allows the compiler to simplify accesses
> like ff_mjpeg_bits_dc_luminance + 1 because the "+ 1" can be baked
> into the offset.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
>  libavcodec/jpegtables.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/libavcodec/jpegtables.h b/libavcodec/jpegtables.h
> index 49b5ecdeb0..39baec3efb 100644
> --- a/libavcodec/jpegtables.h
> +++ b/libavcodec/jpegtables.h
> @@ -23,6 +23,9 @@
>  
>  #include <stdint.h>
>  
> +#include "libavutil/attributes_internal.h"
> +
> +FF_VISIBILITY_PUSH_HIDDEN
>  extern const uint8_t ff_mjpeg_bits_dc_luminance[];
>  extern const uint8_t ff_mjpeg_val_dc[];
>  
> @@ -33,5 +36,6 @@ extern const uint8_t ff_mjpeg_val_ac_luminance[];
>  
>  extern const uint8_t ff_mjpeg_bits_ac_chrominance[];
>  extern const uint8_t ff_mjpeg_val_ac_chrominance[];
> +FF_VISIBILITY_POP_HIDDEN
>  
>  #endif /* AVCODEC_JPEGTABLES_H */

Will apply this patchset tomorrow unless there are objections.

- Andreas

_______________________________________________
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] 3+ messages in thread

end of thread, other threads:[~2022-10-17 14:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-14 22:31 [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables as hidden Andreas Rheinhardt
2022-10-14 22:32 ` [FFmpeg-devel] [PATCH 2/2] avcodec/msmpeg4data: Mark tables " Andreas Rheinhardt
2022-10-17 14:41 ` [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: Mark jpegtables " Andreas Rheinhardt

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