diff options
author | Nick Clifton <nickc@redhat.com> | 2007-10-19 17:31:31 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2007-10-19 17:31:31 +0000 |
commit | bfff1642494227904c6c9a6c285cbaa6cf615bbb (patch) | |
tree | 7bf1ece58861b5e9c520e056102994251c0a7504 /gas/config/tc-mn10300.h | |
parent | 97030eea009ba78139fe20eae4585984435ac178 (diff) | |
download | fsf-binutils-gdb-bfff1642494227904c6c9a6c285cbaa6cf615bbb.zip fsf-binutils-gdb-bfff1642494227904c6c9a6c285cbaa6cf615bbb.tar.gz fsf-binutils-gdb-bfff1642494227904c6c9a6c285cbaa6cf615bbb.tar.bz2 |
Add MN10300 linker relaxation support for symbol differences
Diffstat (limited to 'gas/config/tc-mn10300.h')
-rw-r--r-- | gas/config/tc-mn10300.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/gas/config/tc-mn10300.h b/gas/config/tc-mn10300.h index 20de21c..af7a6e6 100644 --- a/gas/config/tc-mn10300.h +++ b/gas/config/tc-mn10300.h @@ -98,13 +98,21 @@ void mn10300_cons_fix_new PARAMS ((fragS *, int, int, expressionS *)); #define md_number_to_chars number_to_chars_littleendian -/* Don't bother to adjust relocs. */ -/* #define tc_fix_adjustable(FIX) 0 */ #define tc_fix_adjustable(FIX) mn10300_fix_adjustable (FIX) -extern bfd_boolean mn10300_fix_adjustable PARAMS ((struct fix *)); +extern bfd_boolean mn10300_fix_adjustable (struct fix *); /* We do relaxing in the assembler as well as the linker. */ extern const struct relax_type md_relax_table[]; #define TC_GENERIC_RELAX_TABLE md_relax_table #define DWARF2_LINE_MIN_INSN_LENGTH 1 + +/* The difference between same-section symbols may be affected by linker + relaxation, so do not resolve such expressions in the assembler. */ +#define md_allow_local_subtract(l,r,s) mn10300_allow_local_subtract (l, r, s) +extern bfd_boolean mn10300_allow_local_subtract (expressionS *, expressionS *, segT); + +#define RELOC_EXPANSION_POSSIBLE +#define MAX_RELOC_EXPANSION 2 + +#define TC_FRAG_TYPE bfd_boolean |