• Andreas Rheinhardt's avatar
    avcodec/aacdec_fixed: Move fixed-point sinewin tables to its only user · 698a4b22
    Andreas Rheinhardt authored
    The fixed-point AAC decoder is the only user of the fixed-point sinewin
    tables from sinewin; and it only uses a few of them (about 10% when
    counting by size). This means that guarding initializing these tables by
    an AVOnce (as done in 37191220) is
    unnecessary for them. Furthermore the array of pointers to the
    individual arrays is also unneeded.
    
    Therefore this commit moves these tables directly into aacdec_fixed.c;
    this is done by ridding the original sinewin.h and sinewin_tablegen.h
    headers completely of any fixed-point code at the cost of a bit of
    duplicated code (the alternative is an ugly ifdef-mess).
    
    This saves about 58KB from the binary when using hardcoded tables (as
    these tables are hardcoded in this scenario); when not using hardcoded
    tables, most of these savings only affect the .bss segment, but the rest
    (< 1KB) contains relocations (i.e. savings in .data.rel.ro).
    Reviewed-by: 's avatarLynne <dev@lynne.ee>
    Signed-off-by: 's avatarAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
    698a4b22
aacdec_fixed.c 14.2 KB