This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA] osfsolib.c: support Tru64 5.x
On May 24, 10:08pm, Nick Duffek wrote:
> A solution is to reorganize update_solib_list() in solib.c to do this:
>
> for (each module) {
> call target_so_ops.relocate_section_addresses();
> add sections to lookup table using target_resize_to_sections();
> }
>
> instead of this:
>
> for (each module) {
> call target_so_ops.relocate_section_addresses();
> }
> for (each module) {
> add sections to lookup table using target_resize_to_sections();
> }
>
> That way, each relocate_section_addresses() callback can read addresses
> from all objects earlier in the module list.
>
> The appended patch makes that change as well. With the patch and with the
> new solib-osf.c backend that I'll post shortly, there are no regressions
> (and several progressions) on Tru64 5.0 and Digital UNIX 4.0.
I think this is slightly less efficient, but it doesn't concern me
greatly. I did spend a while staring at it to convince myself that
it was correct.
> Okay to apply?
>
> Nick
>
> 2001-05-24 Nick Duffek <nsd@redhat.com>
>
> * solib.c (update_solib_list): Move target_resize_to_sections()
> into solib_map_sections() loop.
> (info_sharedlibrary_command): Try bfd_arch_bits_per_address() if
> bfd_get_arch_size() fails.
This is approved so long as you fix the typo in the line below:
> + that later noes in the list can query this object, as is needed
^^^^