[patch] vtable garbage-collection correction to selective6

Nick Clifton nickc@redhat.com
Mon Oct 16 12:57:00 GMT 2000


Hi Hans-Peter,

  What is the current status of this patch ?

  Are you still awaiting approval ?

Cheers
	 Nick


2000-10-02  Hans-Peter Nilsson  <hp@bitrange.com>

        * section.c (bfd_get_section_id_bound): New.
        * elf-bfd.h (struct elf_link_hash_entry): Change type of member
        vtable_entries_used to be struct htab **.
        * elflink.h: Include hashtab.h from libiberty.
        (struct elf_gc_mark_info, struct elf_gc_info): New.
        (elf_gc_mark): Add parameter gc_info.  All callers changed.
        Do not process relocs marked with ELF_R_VTABLE_MARK_BIT.
        Add recursed sections to gc_info->sections.
        (elf_gc_copy_htab_entry): New.
        (elf_gc_propagate_vtable_entries_used): Adjust to using
        hash-tables for vt entry usage.
        (elf_gc_smash_unused_vtentry_relocs): Similar.
        Add ELF_R_VTABLE_MARK_BIT mark to vt entry relocs whose usage
        depends on whether the user is garbage-collected.
        (elf_gc_mark_vtentry_relocs): New.
        (elf_gc_sweep_vtentry_relocs): New.
        (elf_gc_sections): Change to use a list of marked sections to
        iterate over vt:s checking if the users of the entries are kept
        after garbage collection.
        (elf_gc_record_vtentry): Adjust to mark the user in a hash-table
        for the vt entry.



More information about the Binutils mailing list