I don't think LTO strips debug symbols... But yes, LTO does significantly
increase link time if your machine doesn't have lots of cores to
parallelize the link. It slows it down in general, but with gcc you can
parallelize the link with LTO where you can't without LTO for some reason,
and that outweighs the other overhead if you have enough cores to throw at
it.

Especially when running in a virtual machine, you might just be running out
of memory. LTO will use more ram, and if you run out things will fail in
potentially strange ways.

It sounds like you have a workaround for now so this may be a moot point,
but in general, when you report compiler errors (or errors in general) it's
very helpful to provide the error output instead of just describing the
errors. That provides a lot of helpful detail which can make diagnosing the
problem much easier.

Gabe

On Mon, May 24, 2021 at 1:07 PM Bobby Bruce via gem5-users <
gem5-users@gem5.org> wrote:

> Thanks for the report Eliot. In this case there's no need to file a bug
> report as we're about to produce a minor release of gem5 that will off LTO
> by default. I'm not familiar with this particular problem you are facing,
> but we've found we need to turn it off for other reasons (1. It increases
> links times for some users to unacceptable levels and 2. LTO strips debug
> symbols which you'll need if you want to run tools such as GDB).
>
> I'm hoping we can ship the minor release sometime this week!
>
> --
> Dr. Bobby R. Bruce
> Room 3050,
> Kemper Hall, UC Davis
> Davis,
> CA, 95616
>
> web: https://www.bobbybruce.net
>
>
> On Mon, May 24, 2021 at 12:43 PM Eliot Moss via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Dear Gem5-ers:
>>
>> I have been trying to build Gem5 out of the box, for x86, on a VirtualBox
>> virtual machine set up for 64-bit Ubuntu 20.04 ("focal").  I can do
>>
>> scons build/X86/gem5.opt
>>
>> but it will succeed only if I disable link time optimization LTO using
>> --no-lto.  I've tried various versions GCC - 7, 8, 9, and 10 - and all
>> produce the same result.  (I think the key thing is probably something in
>> binutils, but I don't know what version to try to obtain, and this
>> version of
>> Ubuntu does not readily offer anything other than 2.34.)
>>
>> Searching the web about this general problem mostly produces the
>> "solution" of
>> disabling LTO.  So, where should we / I file a bug report?  By turning on
>> LTO
>> reporting, I have found that the proximal cause is that decoder.o does not
>> have a .debug_str section and yet there are a huge number of references to
>> things that should be there (labels, I guess - the decode *would* have a
>> lot
>> of those!).
>>
>> Regards - Eliot
>> _______________________________________________
>> gem5-users mailing list -- gem5-users@gem5.org
>> To unsubscribe send an email to gem5-users-le...@gem5.org
>> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
>>
> _______________________________________________
> gem5-users mailing list -- gem5-users@gem5.org
> To unsubscribe send an email to gem5-users-le...@gem5.org
> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to