aboutsummaryrefslogtreecommitdiff
path: root/gdb/minsyms.c
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1993-03-26 14:59:43 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1993-03-26 14:59:43 +0000
commit3c02636b4ef8b4526865bf3a9baeba2011ff0d08 (patch)
tree5424aa520ee09da58c7601202b89865e7fa903c4 /gdb/minsyms.c
parent786f2f340287e170737a96aea29b5d45d5d28957 (diff)
downloadgdb-3c02636b4ef8b4526865bf3a9baeba2011ff0d08.zip
gdb-3c02636b4ef8b4526865bf3a9baeba2011ff0d08.tar.gz
gdb-3c02636b4ef8b4526865bf3a9baeba2011ff0d08.tar.bz2
* Clean up xcoff relocation.
objfiles.h (struct objfiles): Add section_offsets, num_sections. symfile.c (syms_from_objfile), xcoffread.c (xcoff_symfile_offsets): Set them. symtab.h (struct general_symbol_info): Add section field. minsyms.c (prim_record_minimal_symbol{,_and_info}): Set it. xcoffread.c: Set section for symbols and msymbols. (struct symtab): Add block_line_section field. buildsym.c (end_symtab): Set it. (end_symtab and callers): Add section parameter. objfiles.c (objfile_relocate): New funciton. xcoffexec.c (vmap_symtab): Use it. xcoffsolib.h (struct vmap): Remove unused fields. config/rs6000/tm-rs6000.h, stack.c, xcoffexec.c: Remove CORE_NEEDS_RELOCATION, symtab_relocated. config/rs6000/tm-rs6000.h: Remove use of loadinfotext. rs6000-tdep.c: Make loadinfotext static. breakpoint.c (fixup_breakpoints): Doc fix. symtab.h (struct symtab), config/rs6000/tm-rs6000.h, buildsym.c (end_symtab): primary field replaces nonreloc.
Diffstat (limited to 'gdb/minsyms.c')
-rw-r--r--gdb/minsyms.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gdb/minsyms.c b/gdb/minsyms.c
index b4ee141..4b48e2e 100644
--- a/gdb/minsyms.c
+++ b/gdb/minsyms.c
@@ -266,6 +266,7 @@ prim_record_minimal_symbol (name, address, ms_type)
SYMBOL_NAME (msymbol) = (char *) name;
SYMBOL_INIT_LANGUAGE_SPECIFIC (msymbol, language_unknown);
SYMBOL_VALUE_ADDRESS (msymbol) = address;
+ SYMBOL_SECTION (msymbol) = -1;
MSYMBOL_TYPE (msymbol) = ms_type;
/* FIXME: This info, if it remains, needs its own field. */
MSYMBOL_INFO (msymbol) = NULL; /* FIXME! */
@@ -277,11 +278,12 @@ prim_record_minimal_symbol (name, address, ms_type)
and pass it a NULL info pointer value if info is not needed? */
void
-prim_record_minimal_symbol_and_info (name, address, ms_type, info)
+prim_record_minimal_symbol_and_info (name, address, ms_type, info, section)
const char *name;
CORE_ADDR address;
enum minimal_symbol_type ms_type;
char *info;
+ int section;
{
register struct msym_bunch *new;
register struct minimal_symbol *msymbol;
@@ -297,6 +299,7 @@ prim_record_minimal_symbol_and_info (name, address, ms_type, info)
SYMBOL_NAME (msymbol) = (char *) name;
SYMBOL_INIT_LANGUAGE_SPECIFIC (msymbol, language_unknown);
SYMBOL_VALUE_ADDRESS (msymbol) = address;
+ SYMBOL_SECTION (msymbol) = section;
MSYMBOL_TYPE (msymbol) = ms_type;
/* FIXME: This info, if it remains, needs its own field. */
MSYMBOL_INFO (msymbol) = info; /* FIXME! */