mirror_edk2/BaseTools/Source/C
Ard Biesheuvel 0192b71ca3 BaseTools/GenFw: move .debug contents to .data to save space
In order to reduce the memory footprint of PE/COFF images when
using large values for the PE/COFF section alignment, move the
contents of the .debug section to data, and point the debug data
directory entry to it. This allows us to drop the .debug section
entirely, as well as any associated rounding. Since our .debug
section only contains the filename of the ELF input image, the
penalty of keeping this data in a non-discardable section is
negligible.

Note that the PE/COFF spec v6.3 explicitly mentions that this is
allowed.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Yingke Liu <yingke.d.liu@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18077 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-27 13:49:54 +00:00
..
BootSectImage BootSectImage.exe, EfiLdrImage.exe and Split.exe tools have incorrect output from the --version option. 2014-08-25 20:06:55 +00:00
Common BaseTools/Common: fix heap overrun in ReadMemoryFileLine () 2015-07-26 08:03:15 +00:00
EfiLdrImage License header updated to match correct format. 2014-08-28 13:53:34 +00:00
EfiRom License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenBootSector License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenCrc32 License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenFfs License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenFv BaseTools: Fix build on FreeBSD and allow use of non-gcc system compiler 2015-07-08 01:06:25 +00:00
GenFw BaseTools/GenFw: move .debug contents to .data to save space 2015-07-27 13:49:54 +00:00
GenPage License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenSec License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GenVtf License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GnuGenBootSector License header updated to match correct format. 2014-08-28 13:53:34 +00:00
Include BaseTools: Add missing EfiPersistentMemory to EFI_MEMORY_TYPE 2015-07-01 15:21:03 +00:00
LzmaCompress BaseTools: Fix build on FreeBSD and allow use of non-gcc system compiler 2015-07-08 01:06:25 +00:00
Makefiles BaseTools: Fix build on FreeBSD and allow use of non-gcc system compiler 2015-07-08 01:06:25 +00:00
PyEfiCompressor License header updated to match correct format. 2014-08-28 13:53:34 +00:00
PyUtility License header updated to match correct format. 2014-08-28 13:53:34 +00:00
Split BootSectImage.exe, EfiLdrImage.exe and Split.exe tools have incorrect output from the --version option. 2014-08-25 20:06:55 +00:00
TianoCompress License header updated to match correct format. 2014-08-28 13:53:34 +00:00
VfrCompile BaseTools: Fix build on FreeBSD and allow use of non-gcc system compiler 2015-07-08 01:06:25 +00:00
VolInfo License header updated to match correct format. 2014-08-28 13:53:34 +00:00
GNUmakefile Sync BaseTool trunk (version r2670) into EDKII BaseTools. 2014-07-01 07:10:10 +00:00
Makefile Fix nmake cleanall bugs. 2014-08-25 05:00:34 +00:00