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 | |
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')
-rw-r--r-- | gas/ChangeLog | 4 | ||||
-rw-r--r-- | gas/config/obj-aout.c | 17 |
2 files changed, 19 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 5d911f7..e90abb1 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,9 @@ Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + * 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. + * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look up opcodes as pseudo-ops even if they don't start with '.'. * config/tc-m88k.h (NO_PSEUDO_DOT): Define. 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 { |