Skip to content
  • Ilias Apalodimas's avatar
    arm: remove redundant section alignments · 7828a1ee
    Ilias Apalodimas authored and Tom Rini's avatar Tom Rini committed
    
    
    Previous patches cleaning up linker symbols, also merged any explicit
    . = ALIGN(x); into section definitions -- e.g
    .bss ALIGN(x) : instead of
    
    . = ALIGN(x);
    . bss : {...}
    
    However, if the output address is not specified then one will be chosen
    for the section. This address will be adjusted to fit the alignment
    requirement of the output section following the strictest alignment of
    any input section contained within the output section. So let's get rid
    of the redundant ALIGN directives when they are not needed.
    
    While at add comments for the alignment of __bss_start/end since our
    C runtime setup assembly assumes that __bss_start - __bss_end will be
    a multiple of 4/8 for armv7 and armv8 respectively.
    
    It's worth noting that the alignment is preserved on .rel.dyn for
    mach-zynq which was explicitly aligning that section on an 8b
    boundary instead of 4b one.
    
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Signed-off-by: default avatarIlias Apalodimas <ilias.apalodimas@l...>
    7828a1ee