From 28910c57cea3407fee1ea42ae3964bdaae2686ba Mon Sep 17 00:00:00 2001 From: Michael Meissner Date: Thu, 15 Feb 1996 19:54:38 +0000 Subject: [PATCH] Force all PPC symbols that otherwise do not have a symbol type to be BSF_OBJECT --- gas/ChangeLog | 6 ++++++ gas/config/obj-elf.c | 15 +++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/gas/ChangeLog b/gas/ChangeLog index 5e61d18afea..3dd417e85a0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +Thu Feb 15 14:48:38 1996 Michael Meissner + + * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all + symbols that are not function, file, or section symbols to be + object types. + Thu Feb 15 11:20:18 1996 Ian Lance Taylor * configure: Set and substitute RPATH_ENVVAR. diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index aaf00950c91..29b442e728e 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -1159,6 +1159,21 @@ elf_frob_symbol (symp, puntp) as_bad ("Symbol `%s' can not be both weak and common", S_GET_NAME (symp)); } + +#ifdef TC_MIPS + /* The Irix 5 assembler appears to set the type of any common symbol + to STT_OBJECT. We try to be compatible, since the Irix 5 linker + apparently sometimes cares. FIXME: What about Irix 6? */ + if (S_IS_COMMON (symp)) + symp->bsym->flags |= BSF_OBJECT; +#endif + +#ifdef TC_PPC + /* Frob the PowerPC, so that the symbol always has object type + if it is not some other type. VxWorks needs this. */ + if ((symp->bsym->flags & (BSF_FUNCTION | BSF_FILE | BSF_SECTION_SYM)) == 0) + symp->bsym->flags |= BSF_OBJECT; +#endif } void -- 2.30.2