diff options
author | Ian Lance Taylor <ian@airs.com> | 1993-07-21 19:26:20 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1993-07-21 19:26:20 +0000 |
commit | 2c5c299f93769794343d9dc535a3d73a2c3cdb58 (patch) | |
tree | 7a5eb942017fd7de6f3756d0d37119f7aa0eb374 /gas/config/obj-aout.c | |
parent | 6702e216f0f2efe2936cb5b0fbe4b18d9cae80d0 (diff) | |
download | gdb-2c5c299f93769794343d9dc535a3d73a2c3cdb58.zip gdb-2c5c299f93769794343d9dc535a3d73a2c3cdb58.tar.gz gdb-2c5c299f93769794343d9dc535a3d73a2c3cdb58.tar.bz2 |
* config/obj-aout.c: Include aout/aout64.h.
(obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
symbol, so that BFD doesn't tamper with the type.
Diffstat (limited to 'gas/config/obj-aout.c')
-rw-r--r-- | gas/config/obj-aout.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/gas/config/obj-aout.c b/gas/config/obj-aout.c index 9b293fc..b43826f 100644 --- a/gas/config/obj-aout.c +++ b/gas/config/obj-aout.c @@ -19,6 +19,7 @@ to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "as.h" #include "aout/stab_gnu.h" +#include "aout/aout64.h" #include "obstack.h" #ifndef BFD_ASSEMBLER @@ -114,13 +115,25 @@ obj_aout_frob_symbol (sym, punt) sec = sym->bsym->section; /* Only frob simple symbols this way right now. */ - if (! (type & ~0x1f)) + if (! (type & ~ (N_TYPE | N_EXT))) { if (sec == &bfd_abs_section || sec == &bfd_und_section) return; if (flags & BSF_EXPORT) - type |= 1; + type |= N_EXT; + + /* Set the debugging flag for constructor symbols so that BFD + leaves them alone. */ + switch (type & N_TYPE) + { + case N_SETA: + case N_SETT: + case N_SETD: + case N_SETB: + sym->bsym->flags |= BSF_DEBUGGING; + break; + } } else { |