On Jul 21, 2014, at 2:55 PM, Jordan Justen <jljus...@gmail.com> wrote:
> On Mon, Jul 21, 2014 at 2:44 PM, Andrew Fish <af...@apple.com> wrote: >> On Jul 21, 2014, at 2:42 PM, Jordan Justen <jljus...@gmail.com> wrote: >>> On Sun, Jul 20, 2014 at 9:28 AM, Andrew Fish <af...@apple.com> wrote: >>>> On Jul 19, 2014, at 9:42 PM, Jordan Justen <jljus...@gmail.com> wrote: >>>>> Anyway, I figured out what the issue is, but I don't have a solution yet. >>>>> https://gcc.gnu.org/ml/gcc-help/2014-07/msg00075.html >>>>> >>>>> Basically GCC 4.9 creates a 64-byte aligned section in the elf image, >>>>> but we instruct the linker to use 32 byte alignment. Then GenFw (which >>>>> also assumes 32 byte alignment) complains while trying to convert the >>>>> ELF image to PE/COFF. >>>>> >>>> >>>> The default alignment for image (PE/COFF, ELF, etc.) sections is usually >>>> 4K (page aligned). We cranked the alignment down to 32 bytes (0x20) to >>>> make the images smaller. There is nothing magic about 32 bytes, it was >>>> just the smallest alignment we could make work with VC++. >>>> >>>> I think if you set the section alignment to 64 bytes everything would just >>>> work. >>>> >>>> I think that means you would need a different linker script fro GCC 4.9. >>>> https://svn.code.sf.net/p/edk2/code/trunk/edk2/BaseTools/Scripts/gcc4.4-ld-script >>> >>> Ok. I'll do this. >>> >>> If we find a way to get GCC 4.9 to cap the alignment at 32 bytes, then >>> we can adjust the toolchain to save some space. >> >> Is it all CPU architectures? Maybe you only need to change the ones that >> fail? > > I checked it for IA32 & X64. > > I think this can be checked using the simple command I mentioned in: > https://gcc.gnu.org/ml/gcc-help/2014-07/msg00075.html > > The patch I just sent will only update the linker alignment on IA32 & > X64 builds. > OK thanks for the info. Looks like some kind of cache alignment performance enhancement? Thanks, Andrew Fish > -Jordan ------------------------------------------------------------------------------ Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel