* nlmread.c (nlm_symtab_read): Clean up a bit.

* (nlm_symfile_read):  Record bounds of main() so that backtrace
	command will know where to stop.
	* objfiles.c (objfile_relocate):  Relocate entry point/func info
	for backtrace as well.
	* objfiles.h:  Define values for invalid PCs for entry point info.
	* symfile.c (init_entry_point_info):  Initialize invalid values
	with aforementioned macros.
	* config/alpha/tm-alphanw.h:  Turn on FRAME_CHAIN_VALID_ALTERNATE
	to cause backtrace to stop when it gets back to main().
	* config/i386/tm-i386nw.h:  Ditto.
This commit is contained in:
Stu Grossman
1994-06-09 06:30:38 +00:00
parent 5005cbca02
commit a4b4f52058
6 changed files with 72 additions and 15 deletions

View File

@@ -578,6 +578,27 @@ objfile_relocate (objfile, new_offsets)
}
}
}
if (objfile->ei.entry_point != ~0)
objfile->ei.entry_point += ANOFFSET (delta, SECT_OFF_TEXT);
if (objfile->ei.entry_func_lowpc != INVALID_ENTRY_LOWPC)
{
objfile->ei.entry_func_lowpc += ANOFFSET (delta, SECT_OFF_TEXT);
objfile->ei.entry_func_highpc += ANOFFSET (delta, SECT_OFF_TEXT);
}
if (objfile->ei.entry_file_lowpc != INVALID_ENTRY_LOWPC)
{
objfile->ei.entry_file_lowpc += ANOFFSET (delta, SECT_OFF_TEXT);
objfile->ei.entry_file_highpc += ANOFFSET (delta, SECT_OFF_TEXT);
}
if (objfile->ei.main_func_lowpc != INVALID_ENTRY_LOWPC)
{
objfile->ei.main_func_lowpc += ANOFFSET (delta, SECT_OFF_TEXT);
objfile->ei.main_func_highpc += ANOFFSET (delta, SECT_OFF_TEXT);
}
}
/* Many places in gdb want to test just to see if we have any partial