elfread.c (elf_symtab_read): merge SYMBOL_IS_SPECIAL into MAKE_MSYMBOL_SPECIAL

config/mips/tm-mips.h: ditto
symtab.h: update comments re minimal_symbol->info
mips-tdep.c: globalize gdb_print_insn_mips
txvu-tdep.c: disassemble support
config/mips/tm-txvu.h: add vu_pc, use MAKE_MSYMBOL_SPECIAL, track updates
	from tm-r5900.h
This commit is contained in:
Ron Unrau 1998-03-04 08:45:55 +00:00
parent 239f4e323c
commit 4f0f84e7fb
3 changed files with 17 additions and 13 deletions

View file

@ -1,3 +1,9 @@
Wed Mar 4 01:39:08 1998 Ron Unrau <runrau@cygnus.com>
* elfread.c (elf_symtab_read): merge SYMBOL_IS_SPECIAL into
MAKE_MSYMBOL_SPECIAL
* config/mips/tm-mips.h: ditto
Tue Mar 3 17:19:08 1998 John Metzler <jmetzler@cygnus.com>
* config/mips/tm-vr4xxx.h : implements vr4111 as saparate from 4300

View file

@ -564,25 +564,24 @@ typedef unsigned long t_inst; /* Integer big enough to hold an instruction */
/* Macros for setting and testing a bit in a minimal symbol that
marks it as 16-bit function. The MSB of the minimal symbol's
"info" field is used for this purpose. This field is already
"info" field is used for this purpose. This field is already
being used to store the symbol size, so the assumption is
that the symbol size cannot exceed 2^31.
SYMBOL_IS_SPECIAL tests whether an ELF symbol is "special", i.e. refers
to a 16-bit function
MAKE_MSYMBOL_SPECIAL sets a "special" bit in a minimal symbol to mark it
as a 16-bit function
MAKE_MSYMBOL_SPECIAL tests whether an ELF symbol is "special", i.e. refers
to a 16-bit function, and sets a "special" bit in a
minimal symbol to mark it as a 16-bit function
MSYMBOL_IS_SPECIAL tests the "special" bit in a minimal symbol
MSYMBOL_SIZE returns the size of the minimal symbol, i.e.
the "info" field with the "special" bit masked out
*/
#define SYMBOL_IS_SPECIAL(sym) \
(((elf_symbol_type *) sym) -> internal_elf_sym.st_other == STO_MIPS16)
#define MAKE_MSYMBOL_SPECIAL(msym) \
#define MAKE_MSYMBOL_SPECIAL(sym,msym) \
{ \
MSYMBOL_INFO (msym) = (char *) (((long) MSYMBOL_INFO (msym)) | 0x80000000); \
SYMBOL_VALUE_ADDRESS (msym) |= 1; \
if (((elf_symbol_type *) sym) -> internal_elf_sym.st_other == STO_MIPS16) { \
MSYMBOL_INFO (msym) = (char *) (((long) MSYMBOL_INFO (msym)) | 0x80000000); \
SYMBOL_VALUE_ADDRESS (msym) |= 1; \
} \
}
#define MSYMBOL_IS_SPECIAL(msym) \

View file

@ -538,9 +538,8 @@ elf_symtab_read (abfd, addr, objfile, dynamic)
if (msym != NULL)
msym->filename = filesymname;
#endif
#ifdef SYMBOL_IS_SPECIAL
if (SYMBOL_IS_SPECIAL (sym))
MAKE_MSYMBOL_SPECIAL (msym);
#ifdef MAKE_MSYMBOL_SPECIAL
MAKE_MSYMBOL_SPECIAL (sym,msym);
#endif
}
}