On Tue, Oct 31, 2017 at 12:16:18PM +0000, Thomas Köppe wrote: > Variables used in inline assembly need to be marked with attribute((used)).
This should not be the case. Variables referenced through in/out operands should not need that. Only ones accessed directly bypassing operands should need this > Static constants already were, via the define of DECLARE_ASM_CONST. > But DECLARE_ALIGNED does not add this attribute, and some of the variables > defined with it are const only used in inline assembly, and therefore > appeared dead. > --- > libavcodec/cabac.c | 2 +- > libavutil/mem.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/libavcodec/cabac.c b/libavcodec/cabac.c > index dd2b057c6d..7321b48901 100644 > --- a/libavcodec/cabac.c > +++ b/libavcodec/cabac.c > @@ -32,7 +32,7 @@ > #include "cabac.h" > #include "cabac_functions.h" > > -const uint8_t ff_h264_cabac_tables[512 + 4*2*64 + 4*64 + 63] = { > +DECLARE_ALIGNED(1, const uint8_t, ff_h264_cabac_tables)[512 + 4*2*64 + 4*64 > + 63] = { > 9,8,7,7,6,6,6,6,5,5,5,5,5,5,5,5, > 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, > 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, > diff --git a/libavutil/mem.h b/libavutil/mem.h > index 527cd03191..c4ee11af58 100644 > --- a/libavutil/mem.h > +++ b/libavutil/mem.h > @@ -101,7 +101,7 @@ > #define DECLARE_ALIGNED(n,t,v) t __attribute__ ((aligned (FFMIN(n, > 16)))) v > #define DECLARE_ASM_CONST(n,t,v) static const t av_used __attribute__ > ((aligned (FFMIN(n, 16)))) v > #elif defined(__GNUC__) || defined(__clang__) > - #define DECLARE_ALIGNED(n,t,v) t __attribute__ ((aligned (n))) v > + #define DECLARE_ALIGNED(n,t,v) t av_used __attribute__ ((aligned > (n))) v which variables actually are affected/ need this ? Marking all aligned variables as used makes it harder to spot unused variables leading to accumulation of cruft [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB The misfortune of the wise is better than the prosperity of the fool. -- Epicurus
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel