aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRon Unrau <runrau@cygnus>1998-03-04 08:45:55 +0000
committerRon Unrau <runrau@cygnus>1998-03-04 08:45:55 +0000
commit4f0f84e7fbc1bfd555c6a9eb8da4ee445bd25fa3 (patch)
tree03462eea58fae7d0cd971bfe613322fc8a0aef4e
parent239f4e323c81eb8b8498a6678ce8d9eb15ec32ef (diff)
downloadgdb-4f0f84e7fbc1bfd555c6a9eb8da4ee445bd25fa3.zip
gdb-4f0f84e7fbc1bfd555c6a9eb8da4ee445bd25fa3.tar.gz
gdb-4f0f84e7fbc1bfd555c6a9eb8da4ee445bd25fa3.tar.bz2
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
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/config/mips/tm-mips.h19
-rw-r--r--gdb/elfread.c5
3 files changed, 17 insertions, 13 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b9cc487..1d39e12 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -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
diff --git a/gdb/config/mips/tm-mips.h b/gdb/config/mips/tm-mips.h
index e1d7fc8..36edcbb 100644
--- a/gdb/config/mips/tm-mips.h
+++ b/gdb/config/mips/tm-mips.h
@@ -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) \
diff --git a/gdb/elfread.c b/gdb/elfread.c
index 179a0ef..d5f810e 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -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
}
}