2003-05-23 Raoul Gough <RaoulGough@yahoo.co.uk>
Committed by Elena Zannoni <ezannoni@redhat.com>. * coffread.c(coff_symtab_read): Do relocate static symbols from PE files, don't relocate absolute symbols (and do use mst_abs).
This commit is contained in:
parent
e8f3fcdde6
commit
182d43bc6e
@ -1,3 +1,9 @@
|
||||
2003-05-23 Raoul Gough <RaoulGough@yahoo.co.uk>
|
||||
|
||||
Committed by Elena Zannoni <ezannoni@redhat.com>.
|
||||
* coffread.c(coff_symtab_read): Do relocate static symbols from PE
|
||||
files, don't relocate absolute symbols (and do use mst_abs).
|
||||
|
||||
2003-05-23 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* objc-lang.c: Include "gdb_assert.h".
|
||||
|
@ -869,7 +869,6 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
|
||||
print_address_symbolic work right without the (now
|
||||
gone) "set fast-symbolic-addr off" kludge. */
|
||||
|
||||
/* FIXME: should use mst_abs, and not relocate, if absolute. */
|
||||
enum minimal_symbol_type ms_type;
|
||||
int sec;
|
||||
|
||||
@ -891,12 +890,23 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
|
||||
|| cs->c_sclass == C_THUMBEXT ?
|
||||
mst_bss : mst_file_bss;
|
||||
}
|
||||
else if (cs->c_secnum == N_ABS)
|
||||
{
|
||||
/* Use the correct minimal symbol type (and don't
|
||||
relocate) for absolute values. */
|
||||
ms_type = mst_abs;
|
||||
sec = cs_to_section (cs, objfile);
|
||||
tmpaddr = cs->c_value;
|
||||
}
|
||||
else
|
||||
{
|
||||
sec = cs_to_section (cs, objfile);
|
||||
tmpaddr = cs->c_value;
|
||||
if (cs->c_sclass == C_EXT || cs->c_sclass == C_THUMBEXTFUNC
|
||||
|| cs->c_sclass == C_THUMBEXT)
|
||||
/* Statics in a PE file also get relocated */
|
||||
if (cs->c_sclass == C_EXT
|
||||
|| cs->c_sclass == C_THUMBEXTFUNC
|
||||
|| cs->c_sclass == C_THUMBEXT
|
||||
|| (pe_file && (cs->c_sclass == C_STAT)))
|
||||
tmpaddr += ANOFFSET (objfile->section_offsets, sec);
|
||||
|
||||
if (sec == SECT_OFF_TEXT (objfile))
|
||||
|
Loading…
Reference in New Issue
Block a user