On Mon, Oct 26, 2020 at 10:51:43AM +0100, Paolo Bonzini wrote: > On 23/10/20 22:06, Daniele Buono wrote: > > This patch allows to compile QEMU with link-time optimization (LTO). > > Compilation with LTO is handled directly by meson. This patch adds checks > > in configure to make sure the toolchain supports LTO. > > > > Currently, allow LTO only with clang, since I have found a couple of issues > > with gcc-based LTO. > > > > In case fuzzing is enabled, automatically switch to llvm's linker (lld). > > The standard bfd linker has a bug where function wrapping (used by the fuzz* > > targets) is used in conjunction with LTO. > > > > Tested with all major versions of clang from 6 to 12 > > > > Signed-off-by: Daniele Buono <dbu...@linux.vnet.ibm.com> > > What are the problems like if you have GCC or you ar/linker are not up > to the job? I wouldn't mind omitting the tests since this has to be > enabled explicitly by the user.
We temporarily disabled LTO in Fedora rawhide due to GCC bugs causing wierd test suite asserts. Those were pre-release versions of GCC/binutils though. I've just tested again and LTO works correctly, so I've enabled LTO once again. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|