diff options
author | Nick Clifton <nickc@redhat.com> | 2007-10-30 15:18:29 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2007-10-30 15:18:29 +0000 |
commit | 569006e5824adcb39d114e815712b7aa3f5e136c (patch) | |
tree | 327248411133c3dd62a95c7ff69c33935c168e0f /gas/config/tc-mn10300.h | |
parent | 4e188d170a4a1c89ab9969c638a0bf5490d27984 (diff) | |
download | gdb-569006e5824adcb39d114e815712b7aa3f5e136c.zip gdb-569006e5824adcb39d114e815712b7aa3f5e136c.tar.gz gdb-569006e5824adcb39d114e815712b7aa3f5e136c.tar.bz2 |
* mn10300.h (R_MN10300_ALIGN): Define.
* reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf-m10300.h: Handle R_MN10300_ALIGN relocs.
* mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
Re-fix off by one error in comparisons.
* config/tc-mn10300.c (tc_gen_reloc): Fix test that decides when
sym_diff relocs should be generated.
(md_apply_fix): Skip R_MN10300_ALIGN relocs.
(mn10300_fix_adjustable): Do not adjust R_MN10300_ALIGN relocs.
(mn10300_handle_align): New function. Generate R_MN10300_ALIGN
relocs to record alignment requests.
* config/tc-mn10300.h (TC_FORCE_RELOCATION_SUB_SAME): Also force
R_MN10300_ALIGN relocs.
(HANDLE_ALIGN): Define. Call mn10300_handle_align.
* gas/all/gas.exp: Do not run diff1.s test for mn10300.
* ld-mn10300/mn10300.exp: Run new tests. Skip i126256 test if
a compiler is not available.
* ld-mn10300/i112045-3.s: New test.
* ld-mn10300/i112045-3.d: Expected disassembly.
* ld-mn10300/i135409.s: Rename to i135409-1.s.
* ld-mn10300/i135409.d: Rename to i135409-1.d
* ld-mn10300/i135409-2.s: New test.
* ld-mn10300/i135409-2.d: Expected symbol table.
* ld-mn10300/i36434.d: Adjust expected disassembly.
Diffstat (limited to 'gas/config/tc-mn10300.h')
-rw-r--r-- | gas/config/tc-mn10300.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gas/config/tc-mn10300.h b/gas/config/tc-mn10300.h index af7a6e6..8a2e457 100644 --- a/gas/config/tc-mn10300.h +++ b/gas/config/tc-mn10300.h @@ -66,6 +66,7 @@ void mn10300_cons_fix_new PARAMS ((fragS *, int, int, expressionS *)); #define TC_FORCE_RELOCATION_SUB_SAME(FIX, SEC) \ (((SEC)->flags & SEC_CODE) != 0 \ || ! SEG_NORMAL (SEC) \ + || (FIX)->fx_r_type == BFD_RELOC_MN10300_ALIGN \ || TC_FORCE_RELOCATION (FIX)) /* We validate subtract arguments within tc_gen_reloc(), so don't @@ -116,3 +117,6 @@ extern bfd_boolean mn10300_allow_local_subtract (expressionS *, expressionS *, s #define MAX_RELOC_EXPANSION 2 #define TC_FRAG_TYPE bfd_boolean + +#define HANDLE_ALIGN(frag) mn10300_handle_align (frag) +extern void mn10300_handle_align (fragS *); |