Fixed generation of thumb function symbols.
This commit is contained in:
parent
49fe88644c
commit
a03925a2fc
@ -1,3 +1,8 @@
|
||||
Fri Sep 4 17:07:14 1998 Nick Clifton <nickc@cygnus.com>
|
||||
|
||||
* config/tc-arm.h (obj_adjust_symtab): Fixed typo.
|
||||
* config/tc-arm.c (armelf_adjust_symtab): Reformatted.
|
||||
|
||||
Fri Sep 4 13:57:43 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
|
||||
|
||||
* config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
|
||||
|
@ -6355,56 +6355,38 @@ arm_adjust_symtab ()
|
||||
coffsymbol(sym->bsym)->native->u.syment.n_flags = 0xFF;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif /* OBJ_COFF */
|
||||
#ifdef OBJ_ELF
|
||||
void
|
||||
armelf_adjust_symtab ()
|
||||
{
|
||||
symbolS * sym;
|
||||
elf_symbol_type *elf_sym;
|
||||
char bind;
|
||||
|
||||
for (sym = symbol_rootP; sym != NULL; sym = symbol_next (sym))
|
||||
{
|
||||
if (ARM_IS_THUMB (sym))
|
||||
{
|
||||
if (THUMB_IS_FUNC (sym))
|
||||
{
|
||||
elf_sym = elf_symbol(sym->bsym);
|
||||
bind = ELF_ST_BIND(elf_sym);
|
||||
elf_sym->internal_elf_sym.st_info = ELF_ST_INFO(bind, STT_ARM_TFUNC);
|
||||
}
|
||||
if (ARM_IS_THUMB (sym) && (THUMB_IS_FUNC (sym)))
|
||||
{
|
||||
elf_symbol_type * elf_sym;
|
||||
unsigned char bind;
|
||||
|
||||
}
|
||||
}
|
||||
elf_sym = elf_symbol (sym->bsym);
|
||||
bind = ELF_ST_BIND (elf_sym->internal_elf_sym.st_info);
|
||||
|
||||
elf_sym->internal_elf_sym.st_info = ELF_ST_INFO (bind, STT_ARM_TFUNC);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef OBJ_ELF
|
||||
void
|
||||
armelf_frob_symbol (symp, puntp)
|
||||
symbolS *symp;
|
||||
int *puntp;
|
||||
|
||||
symbolS * symp;
|
||||
int * puntp;
|
||||
{
|
||||
elf_frob_symbol (symp, puntp);
|
||||
}
|
||||
|
||||
/*
|
||||
if (S_IS_EXTERNAL (symp))
|
||||
S_SET_STORAGE_CLASS(symp, C_EXT);
|
||||
#endif /* OBJ_ELF */
|
||||
|
||||
if (S_GET_STORAGE_CLASS (symp) == C_NULL)
|
||||
{
|
||||
if (S_GET_SEGMENT (symp) == text_section
|
||||
&& symp != seg_info (text_section)->sym)
|
||||
S_SET_STORAGE_CLASS (symp, C_LABEL);
|
||||
else
|
||||
S_SET_STORAGE_CLASS (symp, C_STAT);
|
||||
}
|
||||
*/
|
||||
}
|
||||
#endif
|
||||
int
|
||||
arm_data_in_code ()
|
||||
{
|
||||
|
@ -151,10 +151,10 @@ char *arm_canonicalize_symbol_name PARAMS ((char *));
|
||||
|
||||
/* Finish processing the entire symbol table: */
|
||||
#ifdef OBJ_ELF
|
||||
#define obj_adjust_symtab() armelf_adjust_symtab ()
|
||||
#define obj_adjust_symtab armelf_adjust_symtab
|
||||
extern void armelf_adjust_symtab PARAMS ((void));
|
||||
#else
|
||||
#define obj_adjust_symtab() arm_adjust_symtab ()
|
||||
#define obj_adjust_symtab arm_adjust_symtab
|
||||
extern void arm_adjust_symtab PARAMS ((void));
|
||||
#endif
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user