Dear Trent Piepho, In message <1234999325-13456-1-git-send-email-tpie...@freescale.com> you wrote: > From: Trent Piepho <xy...@speakeasy.org> > > A recent gcc added a new unaligned rodata section called '.rodata.str1.1', > which needs to be added the the linker script. Instead of just adding this > one section, we use a wildcard ".rodata*" to get all rodata linker section > gcc has now and might add in the future. > > However, '*(.rodata*)' by itself will result in sub-optimal section > ordering. The sections will be sorted by object file, which causes extra > padding between the unaligned rodata.str.1.1 of one object file and the > aligned rodata of the next object file. This is easy to fix by using the > SORT_BY_ALIGNMENT command. > > This patch has not be tested one most of the boards modified. Some boards > have a linker script that looks something like this: > > *(.text) > . = ALIGN(16); > *(.rodata) > *(.rodata.str1.4) > *(.eh_frame) > > I change this to: > > *(.text) > . = ALIGN(16); > *(.eh_frame) > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) > > This means the start of rodata will no longer be 16 bytes aligned. > However, the boundary between text and rodata/eh_frame is still aligned to > 16 bytes, which is what I think the real purpose of the ALIGN call is. > > Signed-off-by: Trent Piepho <xy...@speakeasy.org> > ---
Applied to "next" branch. Thanks - I really appreciate your work. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de "They that can give up essential liberty to obtain a little temporary saftey deserve neither liberty not saftey." - Benjamin Franklin, 1759 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot