Re: [PATCH v2 28/42] Remove dwarf2_per_cu_data::objfile ()

Simon Marchi
2020-05-27T21:55:15Z

On 2020-05-27 5:08 p.m., Tom de Vries wrote:
>> I don't see this failure. Is it with a particular board file? Or maybe
>> gcc-version specific?
>>
>
> No, this is with native, and reproduced with gcc 7.5.0, gcc 4.8.5, gcc
> 10.1.1 and clang 5.0.2.
>
>> It looks related to what we have discussed here:
>>
>> https://sourceware.org/pipermail/gdb-patches/2020-May/168906.html
>>
>> I think the fix would be to temporarily override this->per_objfile to be
>> caller_per_objfile (with a scoped_restore). But I'd like to be able to
>> reproduce it to understand what's happening.
>
> I think maybe installing debug info for glibc and building with
> --with-separate-debug-dir=/usr/lib/debug may do the trick.
>
> Thanks,
> - Tom
>

I do have debug info for glibc and it is found:

(gdb) info shared
From To Syms Read Shared Object Library
0x00007ffff7dd7ac0 0x00007ffff7df5790 Yes /lib64/ld-linux-x86-64.so.2
0x00007ffff7bd3da0 0x00007ffff7bd498e Yes /lib/x86_64-linux-gnu/libdl.so.2
0x00007ffff78288b0 0x00007ffff797bb04 Yes /lib/x86_64-linux-gnu/libc.so.6

I tested with these two gccs:

$ gcc --version
gcc (Ubuntu 5.5.0-12ubuntu1~16.04) 5.5.0 20171010
$ gcc-9 --version
gcc-9 (Ubuntu 9.3.0-10ubuntu2~16.04) 9.3.0

I will give a shot at building GDB in an opensuse container [1], we'll see.

Simon

[1] https://hub.docker.com/r/opensuse/leap