• A
    avcodec/mpegaudio_tablegen: Avoid write-only buffers · 22140374
    Andreas Rheinhardt 提交于
    The mpegaudio_tablegen header contains code to initialize several
    tables; it is included in both the fixed as well as the floating point
    mpegaudio decoders and some of these tables are only used by the fixed
    resp. floating point decoders; yet both types are always initialized,
    leaving the compiler to figure out that one of them is unused.
    
    GCC 9.3 fails at this (even with -O3):
    $ readelf -s mpegaudiodec_fixed.o|grep _float
        28: 0000000000001660 32768 OBJECT  LOCAL  DEFAULT    4 expval_table_float
    An actually unused table (expval_table_fixed/float) of size 32KiB is kept
    and initialized (the reason for this is probably that this table is read
    from, namely to initialize another table: exp_table_fixed/float; of course
    the float resp. fixed tables are not used in the fixed resp. floating point
    decoder).
    
    Therefore #ifdef the unneeded tables away.
    Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
    22140374
mpegaudio_tablegen.c 1.5 KB