Massive changes to generalize coff-bfd support enough to get 29k

working as well as it did before.

This means that 29k now supports multiple sections
This commit is contained in:
Steve Chamberlain 1991-11-29 01:05:58 +00:00
parent ada269da87
commit 63c92fcd96
5 changed files with 523 additions and 430 deletions

View File

@ -1,6 +1,7 @@
TARG_CPU_DEPENDENTS=
LOCAL_LOADLIBES=$(srcdir)/../bfd$(subdir)/libbfd.a
TDEFINES=-DBFD_HEADERS
TDEFINES=-DBFD_HEADERS -DMANY_SEGMENTS -DBFD

File diff suppressed because it is too large Load Diff

View File

@ -146,7 +146,7 @@ typedef struct
#define C_DEBUG_SECTION N_DEBUG
#define C_NTV_SECTION N_TV
#define C_PTV_SECTION P_TV
#define C_REGISTER_SECTION 4
#define C_REGISTER_SECTION 20
/*
* Macros to extract information from a symbol table entry.

View File

@ -770,27 +770,6 @@ void md_apply_fix(fixP, val)
fixP->fx_addnumber = val; /* Remember value for emit_reloc */
if (fixP->fx_r_type == NO_RELOC) {
as_fatal("failed sanity check."); /* FIXME-SOON, if this is never used, remove */
switch (fixP->fx_size) {
case 1:
*buf = val;
break;
case 2:
*buf++ = (val>>8);
*buf = val;
break;
case 4:
*buf++ = (val>>24);
*buf++ = (val>>16);
*buf++ = (val>>8);
*buf = val;
break;
default:
as_fatal("failed sanity check.");
}
return;
}
know(fixP->fx_size == 4);
know(fixP->fx_r_type < NO_RELOC);

View File

@ -27,5 +27,13 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define tc_coff_symbol_emit_hook(a) ; /* not used */
#define AOUT_MACHTYPE 101
#define TC_COFF_FIX2RTYPE(fix_ptr) tc_coff_fix2rtype(fix_ptr)
#define BFD_ARCH bfd_arch_a29k
#define COFF_MAGIC SIPFBOMAGIC
/* Should the reloc be output ?
on the 29k, this is true only if there is a symbol attatched.
on the h8, this is allways true, since no fixup is done
*/
#define TC_COUNT_RELOC(x) (x->fx_addsy)
/* end of tc-a29k.h */