]> git.proxmox.com Git - mirror_edk2.git/commit
BaseTools/GenFw: disable RVCT linker size optimization
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 24 Sep 2015 19:35:16 +0000 (19:35 +0000)
committerabiesheuvel <abiesheuvel@Edk2>
Thu, 24 Sep 2015 19:35:16 +0000 (19:35 +0000)
commit0bd0d6dff6d34b0c6abfb87d73f2a5973e3cd273
tree9b4c07e9e03109b0dd126a709f622fc3a827b674
parent0c960e86c22c46c002b257c4ba3500d1fba03c26
BaseTools/GenFw: disable RVCT linker size optimization

Disable the RVCT size optimization that may put sections at an offset
that is not aligned to their own alignment, by adding the --no_legacyalign
switch to the RVCT linker command line. This is necessary since such sections
cannot be correctly converted into PE/COFF sections without padding them at
the front, which defeats the purpose of the optimization anyway.

With the optimization gone, we can also remove the special case for ARM in
GenFw that could result in corrupt PE/COFF images to be emitted. Instead,
sections whose base address is not aligned correctly are outright rejected.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18540 6f19259b-4bc3-4df7-8a09-765794883524
BaseTools/Conf/tools_def.template
BaseTools/Source/C/GenFw/Elf32Convert.c