aboutsummaryrefslogtreecommitdiff
path: root/gdb/objfiles.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/objfiles.c')
-rw-r--r--gdb/objfiles.c116
1 files changed, 0 insertions, 116 deletions
diff --git a/gdb/objfiles.c b/gdb/objfiles.c
index 40ab8fb..381a095 100644
--- a/gdb/objfiles.c
+++ b/gdb/objfiles.c
@@ -421,21 +421,6 @@ free_all_objfiles ()
clear_symtab_users ();
}
-struct objfile *
-find_pc_objfile(pc)
- CORE_ADDR pc;
-{
-struct objfile *obj;
-struct obj_section *s;
-
- ALL_OBJFILES (obj)
- for (s = obj->sections; s < obj->sections_end; s++)
- {
- if (s->addr <= pc && s->endaddr > pc) return obj;
- }
- return (struct objfile *)NULL;
-}
-
/* Relocate OBJFILE to NEW_OFFSETS. There should be OBJFILE->NUM_SECTIONS
entries in new_offsets. */
void
@@ -555,107 +540,6 @@ objfile_relocate (objfile, new_offsets)
}
}
-/* Relocate OBJFILE to NEW_OFFSETS. There should be OBJFILE->NUM_SECTIONS
- entries in new_offsets. */
-void
-objfile_relocate_data (objfile, new_offsets)
- struct objfile *objfile;
- struct section_offsets *new_offsets;
-{
- struct section_offsets *delta = (struct section_offsets *) alloca
- (sizeof (struct section_offsets)
- + objfile->num_sections * sizeof (delta->offsets));
-
- {
- int i;
- int something_changed = 0;
- for (i = 0; i < objfile->num_sections; ++i)
- {
- if (i != SECT_OFF_DATA && i != SECT_OFF_BSS)
- ANOFFSET (delta, i) = 0;
- else
- ANOFFSET (delta, i) = ANOFFSET(new_offsets, i)
- - ANOFFSET (objfile->section_offsets, i);
- if (ANOFFSET (delta, i) != 0)
- something_changed = 1;
- }
- if (!something_changed)
- return;
- }
-
- /* OK, get all the symtabs. */
- {
- struct symtab *s;
-
- for (s = objfile->symtabs; s; s = s->next)
- {
- struct linetable *l;
- struct blockvector *bv;
- int i;
-
- /* Don't relocate a shared blockvector more than once. */
- if (!s->primary)
- continue;
-
- bv = BLOCKVECTOR (s);
- for (i = 0; i < BLOCKVECTOR_NBLOCKS (bv); ++i)
- {
- struct block *b;
- int j;
-
- b = BLOCKVECTOR_BLOCK (bv, i);
- BLOCK_START (b) += ANOFFSET (delta, s->block_line_section);
- BLOCK_END (b) += ANOFFSET (delta, s->block_line_section);
-
- for (j = 0; j < BLOCK_NSYMS (b); ++j)
- {
- struct symbol *sym = BLOCK_SYM (b, j);
- /* The RS6000 code from which this was taken skipped
- any symbols in STRUCT_NAMESPACE or UNDEF_NAMESPACE.
- But I'm leaving out that test, on the theory that
- they can't possibly pass the tests below. */
- if ((SYMBOL_CLASS (sym) == LOC_LABEL
- || SYMBOL_CLASS (sym) == LOC_STATIC)
- && SYMBOL_SECTION (sym) >= 0)
- {
- SYMBOL_VALUE_ADDRESS (sym) +=
- ANOFFSET (delta, SYMBOL_SECTION (sym));
- }
- }
- }
- }
- }
-
- {
- struct partial_symbol *psym;
-
- for (psym = objfile->global_psymbols.list;
- psym < objfile->global_psymbols.next;
- psym++)
- if (SYMBOL_SECTION (psym) >= 0)
- SYMBOL_VALUE_ADDRESS (psym) += ANOFFSET (delta, SYMBOL_SECTION (psym));
- for (psym = objfile->static_psymbols.list;
- psym < objfile->static_psymbols.next;
- psym++)
- if (SYMBOL_SECTION (psym) >= 0)
- SYMBOL_VALUE_ADDRESS (psym) += ANOFFSET (delta, SYMBOL_SECTION (psym));
- }
-
- {
- struct minimal_symbol *msym;
- ALL_OBJFILE_MSYMBOLS (objfile, msym)
- if (SYMBOL_SECTION (msym) >= 0)
- SYMBOL_VALUE_ADDRESS (msym) += ANOFFSET (delta, SYMBOL_SECTION (msym));
- }
-
- {
- int i;
- for (i = 0; i < objfile->num_sections; ++i)
- if (i == SECT_OFF_DATA || i == SECT_OFF_BSS)
- ANOFFSET (objfile->section_offsets, i) = ANOFFSET (new_offsets, i);
- }
-}
-
/* Many places in gdb want to test just to see if we have any partial
symbols available. This function returns zero if none are currently
available, nonzero otherwise. */