Skip to content
Snippets Groups Projects
  • Wolfgang Denk's avatar
    c08e5cf7
    POWERPC: enable --gc-sections and -ffunction-sections -fdata-sections · c08e5cf7
    Wolfgang Denk authored
    
    The switch from archive libraries to partial linking has introduced a
    number of problems, that are non-trivial to solve.  For example, it is
    no longer possible to include individual object files in the linker
    script as we did before for example in the case of boards with
    embedded environment to fill up the gap caused by the need to align
    the environment on flash erase block boundaries.
    
    The best (but unfortunately not easiest) approach to address this
    problem is to enable -ffunction-sections (and -fdata-sections) so
    we can again (and even in much finer granularity) place certain code
    where we want it.  When doing this step, it seems only consequent to
    also add --gc-sections which has the added benefit of reducing the
    memory footprint of the U-Boot image (both in flash and in RAM).
    
    Unfortunately, this requires changes to a lot of linker scripts.
    
    Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
    Cc: Stefan Roese <sr@denx.de>
    Cc: Kim Phillips <kim.phillips@freescale.com>
    Cc: Andy Fleming <afleming@gmail.com>
    Cc: Kumar Gala <galak@kernel.crashing.org>
    Acked-by: default avatarStefan Roese <sr@denx.de>
    c08e5cf7
    History
    POWERPC: enable --gc-sections and -ffunction-sections -fdata-sections
    Wolfgang Denk authored
    
    The switch from archive libraries to partial linking has introduced a
    number of problems, that are non-trivial to solve.  For example, it is
    no longer possible to include individual object files in the linker
    script as we did before for example in the case of boards with
    embedded environment to fill up the gap caused by the need to align
    the environment on flash erase block boundaries.
    
    The best (but unfortunately not easiest) approach to address this
    problem is to enable -ffunction-sections (and -fdata-sections) so
    we can again (and even in much finer granularity) place certain code
    where we want it.  When doing this step, it seems only consequent to
    also add --gc-sections which has the added benefit of reducing the
    memory footprint of the U-Boot image (both in flash and in RAM).
    
    Unfortunately, this requires changes to a lot of linker scripts.
    
    Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
    Cc: Stefan Roese <sr@denx.de>
    Cc: Kim Phillips <kim.phillips@freescale.com>
    Cc: Andy Fleming <afleming@gmail.com>
    Cc: Kumar Gala <galak@kernel.crashing.org>
    Acked-by: default avatarStefan Roese <sr@denx.de>