[RFA] Check solib bfd arch
Hui Zhu
teawater@gmail.com
Fri Sep 18 05:05:00 GMT 2009
Hi Joel,
Thanks for you work.
Could you please try it with "bfd_arch_rs6000 and bfd_arch_powerpc"?
Or Ulrich, maybe you can help us with it. :)
Thanks,
Hui
On Fri, Sep 18, 2009 at 06:56, Joel Brobecker <brobecker@adacore.com> wrote:
> Hello,
>
> The following patch is causing trouble on sparc-solaris:
>
>> 2009-07-08 Hui Zhu <teawater@gmail.com>
>>
>> * solib.c (solib_bfd_open): Output a warning if solib's
>> architecture is not compatible with inferior's architecture.
>
> I now see:
>
> (gdb) run
> Starting program: /[...]/sparc64/ex/task_switch
> warning: `/usr/platform/SUNW,Sun-Fire-V440/lib/sparcv9/libc_psr.so.1': Shared library architecture sparc:v9a is not compatible with target architecture sparc:v9.
>
>> + if (b->compatible (b, bfd_get_arch_info (abfd)) != b)
>
> In my case, b->compatible is bfd_default_compatible. the architecture
> is set to sparc:v9, and the shared library's architecture is sparc:v9a.
> The problem is that b->compatible is returning the architecture that
> is "more featureful" of the two, which in this case is sparc:v9a.
> As a result, we emit the warning.
>
> Looks to me like the check is too aggressive and should be changed
> to == 0. Would that be correct?
>
> 2009-09-16 Joel Brobecker <brobecker@adacore.com>
>
> * solib.c (solib_bfd_open): Relax a bit the compatibility check.
>
> Tested on sparc64-solaris.
>
> --
> Joel
>
More information about the Gdb-patches
mailing list