Comments online On 07 нояб. 2014 г., at 22:20, Jordan Justen <jordan.l.jus...@intel.com> wrote:
> On 2014-11-07 07:33:24, Scott Duplichan wrote: >> The summary of the 4 changes needed is not detailed enough for easy >> application. Instead, apply this patch: >> >> http://sourceforge.net/projects/edk2developertoolsforwindows/files/Patches/ >> Link%20Time%20Optimization/ Even with these patches I can’t compile with -flto. /Users/sergey/src/edk2/MdePkg/Library/UefiApplicationEntryPoint/ApplicationEntryPoint.c:48: undefined reference to `_gUefiDriverRevision' /Users/sergey/src/edk2/MdePkg/Library/UefiApplicationEntryPoint/ApplicationEntryPoint.c:60: undefined reference to `ProcessLibraryConstructorList' /Users/sergey/src/edk2/MdePkg/Library/UefiApplicationEntryPoint/ApplicationEntryPoint.c:65: undefined reference to `ProcessModuleEntryPointList' /Users/sergey/src/edk2/MdePkg/Library/UefiApplicationEntryPoint/ApplicationEntryPoint.c:70: undefined reference to `ProcessLibraryDestructorList' collect2: error: ld returned 1 exit status These symbols stripped? > > Patches should be contributed using the process documented in > BaseTools/Contributions.txt. Otherwise, we cannot use the > contribution. > > The work looks promising though! :) > > Other feedback: What is up with all the environment variables? It > seems to be to allow GCC49 to be used with/without lto... > > Instead, I think we should do one of these: > * Convert GCC49 to LTO only > * Wait for GCC50 to enable LTO > * Add GCC49LTO I think it may be like conditional compilation ./build.sh -D WITH_LTO By default no. > > -Jordan > >> From: Sergey Isakov [mailto:isakov...@bk.ru] >> Sent: Friday, November 07, 2014 07:06 AM >> To: edk2-devel@lists.sourceforge.net >> Subject: Re: [edk2] Status of gcc link time optimization for EDK2 use >> >> >> >> It is very interesting and I hope someone can apply this to EDK2. I failed. >> >> I created gcc-4.9.2 for linux-gnu target with --enable-plugin. And binutils >> with --enable-plugins. Success. >> >> But option -flto brakes building. >> >> This advice >> >> --------- >> >> 2) Use gcc to launch the ld instead of invoking ld directly >> >> ----------- >> >> failed because of build options for ld >> >> ----- >> >> x86_64-linux-gnu-gcc: error: unrecognized command line option '-Map' >> >> x86_64-linux-gnu-gcc: error: unrecognized command line option '-melf_x86_64' >> >> x86_64-linux-gnu-gcc: error: unrecognized command line option '--oformat= >> elf64-x86-64' >> >> x86_64-linux-gnu-gcc: error: unrecognized command line option '-(' >> >> ----- >> >> and so on. >> >> Using ld I got another problems like error adding symbols: Bad value >> >> As well as losing _ModuleEntryPoint or .text section at all. >> >> >> >> I pass waiting for a good news. >> >> >> >> >> >> >> >> On 07.11.2014, at 9:05, Scott Duplichan wrote: >> >> >> >> http://notabs.org/uefi/gcc-lto.htm >> >> Thanks, >> Scott >> >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/edk2-devel >> >> >> > > ------------------------------------------------------------------------------ > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
_______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel