diff options
author | Alan Modra <amodra@gmail.com> | 2007-02-17 23:13:49 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2007-02-17 23:13:49 +0000 |
commit | d31f0f6d41caaba6ef79e5ebf7f135f9fa3647ac (patch) | |
tree | 582b8cb50b3d7114cd9c985e28e537a384b78cf6 /gas/config | |
parent | 4b5d35eef6a021182a555b9e76b3d9e65e3839ef (diff) | |
download | gdb-d31f0f6d41caaba6ef79e5ebf7f135f9fa3647ac.zip gdb-d31f0f6d41caaba6ef79e5ebf7f135f9fa3647ac.tar.gz gdb-d31f0f6d41caaba6ef79e5ebf7f135f9fa3647ac.tar.bz2 |
* write.c (TC_FX_SIZE_SLACK): Define.
(write_relocs): Reinstate check for fixup within frag.
* config/tc-bfin.h (TC_FX_SIZE_SLACK): Define.
* config/tc-h8300.h (TC_FX_SIZE_SLACK): Define.
* config/tc-mmix.h (TC_FX_SIZE_SLACK): Define.
* config/tc-sh.h (TC_FX_SIZE_SLACK): Define.
* config/tc-xstormy16.h (TC_FX_SIZE_SLACK): Define.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-bfin.h | 3 | ||||
-rw-r--r-- | gas/config/tc-h8300.h | 3 | ||||
-rw-r--r-- | gas/config/tc-mmix.h | 3 | ||||
-rw-r--r-- | gas/config/tc-sh.h | 5 | ||||
-rw-r--r-- | gas/config/tc-xstormy16.h | 3 |
5 files changed, 17 insertions, 0 deletions
diff --git a/gas/config/tc-bfin.h b/gas/config/tc-bfin.h index fb0c63c..e1f95a9 100644 --- a/gas/config/tc-bfin.h +++ b/gas/config/tc-bfin.h @@ -75,4 +75,7 @@ extern long md_pcrel_from_section PARAMS ((struct fix *, segT)); /* Values passed to md_apply_fix3 don't include symbol values. */ #define MD_APPLY_SYM_VALUE(FIX) 0 +/* This target is buggy, and sets fix size too large. */ +#define TC_FX_SIZE_SLACK(FIX) 2 + /* end of tc-bfin.h */ diff --git a/gas/config/tc-h8300.h b/gas/config/tc-h8300.h index bfc8f72..7191181 100644 --- a/gas/config/tc-h8300.h +++ b/gas/config/tc-h8300.h @@ -86,3 +86,6 @@ extern int Nmode; extern int SXmode; #define md_operand(x) + +/* This target is buggy, and sets fix size too large. */ +#define TC_FX_SIZE_SLACK(FIX) 1 diff --git a/gas/config/tc-mmix.h b/gas/config/tc-mmix.h index 61bc881..b4ab0c7 100644 --- a/gas/config/tc-mmix.h +++ b/gas/config/tc-mmix.h @@ -221,3 +221,6 @@ extern void mmix_md_do_align (int, char *, int, int); sequences sprinkled in, we can get unaligned DWARF2 offsets, so let's explicitly say one byte. */ #define DWARF2_LINE_MIN_INSN_LENGTH 1 + +/* This target is buggy, and sets fix size too large. */ +#define TC_FX_SIZE_SLACK(FIX) 6 diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h index 93fdd90..0ad914e 100644 --- a/gas/config/tc-sh.h +++ b/gas/config/tc-sh.h @@ -81,6 +81,11 @@ extern int sh_force_relocation (struct fix *); #define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section (FIX, SEC) extern long md_pcrel_from_section (struct fix *, segT); +/* SH_COUNT relocs are allowed outside of frag. + The target is also buggy and sets fix size too large for other relocs. */ +#define TC_FX_SIZE_SLACK(FIX) \ + ((FIX)->fx_r_type == BFD_RELOC_SH_COUNT ? -1 : 2) + #define IGNORE_NONSTANDARD_ESCAPES #define LISTING_HEADER \ diff --git a/gas/config/tc-xstormy16.h b/gas/config/tc-xstormy16.h index 5425874..727a496 100644 --- a/gas/config/tc-xstormy16.h +++ b/gas/config/tc-xstormy16.h @@ -63,3 +63,6 @@ extern void xstormy16_cons_fix_new (fragS *f, int, int, expressionS *); /* Minimum instruction is two bytes. */ #define DWARF2_LINE_MIN_INSN_LENGTH 2 + +/* This target is buggy, and sets fix size too large. */ +#define TC_FX_SIZE_SLACK(FIX) 2 |