On 09/05/2013 09:16 PM, Albert ARIBAUD wrote: > Hi Michal, > > On Thu, 25 Jul 2013 16:16:46 +0200, Michal Simek > <michal.si...@xilinx.com> wrote: > >> Remove ARM eabi exception handling tables (for frame unwinding). >> AFAICT, u-boot stubs away the frame unwiding routines, so the tables will >> more or less just consume space. It should be OK to remove them. >> >> Signed-off-by: Edgar E. Iglesias <edgar.igles...@xilinx.com> >> Signed-off-by: Michal Simek <michal.si...@xilinx.com> >> --- >> This patch was sent to ML as RFC (May 9) >> >> Here is the origin response in connection to this patch. >> >> Ok, so Michal and I just did some fiddling with zynq builds and >> *exidx* sections. >> >> By default the *exidx* sections are between rodata and data, so >> removing them causes many apparent changes at the binary level. >> However, builds of zynq based on ARM master with the patch above vs >> master with a patch mapping *exidx* sections after BSS gives identical >> binaries. Thus the RFC has no functional effect. >> >> Also, ARM EHABI states that [exception] Tables are not required for ABI >> compliance at the C/Assembler level but are required for C++. >> >> http://infocenter.arm.com/help/topic/com.arm.doc.ihi0038a/IHI0038A_ehabi.pdf >> >> So as long as we don't put any C++ code in U-Boot (a prospect that I >> don't see happening any time soon), this RFC is safe and either is a >> no-op or removes useless bytes from the binary. >> >> --- >> arch/arm/cpu/u-boot.lds | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds >> index 3037885..8894c8a 100644 >> --- a/arch/arm/cpu/u-boot.lds >> +++ b/arch/arm/cpu/u-boot.lds >> @@ -113,4 +113,6 @@ SECTIONS >> /DISCARD/ : { *(.plt*) } >> /DISCARD/ : { *(.interp*) } >> /DISCARD/ : { *(.gnu*) } >> + /DISCARD/ : { *(.ARM.exidx*) } >> + /DISCARD/ : { *(.gnu.linkonce.armexidx.*) } >> } >> -- >> 1.8.2.3 >> > > Applied to u-boot-arm/master, thanks! >
Ok. Thanks, Michal -- Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91 w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/ Maintainer of Linux kernel - Xilinx Zynq ARM architecture Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform
signature.asc
Description: OpenPGP digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot