From: Nick Clifton Date: Thu, 18 Nov 1999 18:38:18 +0000 (+0000) Subject: Fix generation of RVA relocs X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f11900d058f9253366aab8f61741eae338e4dc03;p=binutils-gdb.git Fix generation of RVA relocs --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 6b998380af0..807af87ebc1 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,13 @@ +1999-11-18 Nick Clifton + + * config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe + target. + + * config/tc-mcore.c (tc_gen_reloc): Support generation of RVA + relocs. + (mcore_force_relocation): Force relocations to be generated for + RVA relocs. + 1999-11-16 Alan Modra * config/tc-i386.c (i386_immediate): Disallow O_big immediates. diff --git a/gas/config/tc-mcore.c b/gas/config/tc-mcore.c index 5f16f8e3436..32f3a73f5e1 100644 --- a/gas/config/tc-mcore.c +++ b/gas/config/tc-mcore.c @@ -2193,6 +2193,7 @@ tc_gen_reloc (section, fixp) case BFD_RELOC_MCORE_PCREL_IMM8BY4: case BFD_RELOC_MCORE_PCREL_IMM11BY2: case BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2: + case BFD_RELOC_RVA: code = fixp->fx_r_type; break; @@ -2246,7 +2247,8 @@ mcore_force_relocation (fix) fixS * fix; { if ( fix->fx_r_type == BFD_RELOC_VTABLE_INHERIT - || fix->fx_r_type == BFD_RELOC_VTABLE_ENTRY) + || fix->fx_r_type == BFD_RELOC_VTABLE_ENTRY + || fixP->fx_r_type == BFD_RELOC_RVA) return 1; return 0; diff --git a/gas/config/tc-mcore.h b/gas/config/tc-mcore.h index 2bc2efee7a6..eff1322ae09 100644 --- a/gas/config/tc-mcore.h +++ b/gas/config/tc-mcore.h @@ -74,6 +74,10 @@ struct mcore_tc_sy #define TC_SYMFIELD_TYPE struct mcore_tc_sy +# if defined TE_PE +# define TC_FORCE_RELOCATION(x) ((x)->fx_r_type == BFD_RELOC_RVA) +# endif + #endif /* OBJ_COFF */