aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>1999-11-18 18:38:18 +0000
committerNick Clifton <nickc@redhat.com>1999-11-18 18:38:18 +0000
commitf11900d058f9253366aab8f61741eae338e4dc03 (patch)
tree6330e7385273d2ab303818305535b3b5a935d8e5 /gas/config
parent078c8694a9d03160f630e006a689e7d1ff559f95 (diff)
downloadgdb-f11900d058f9253366aab8f61741eae338e4dc03.zip
gdb-f11900d058f9253366aab8f61741eae338e4dc03.tar.gz
gdb-f11900d058f9253366aab8f61741eae338e4dc03.tar.bz2
Fix generation of RVA relocs
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-mcore.c4
-rw-r--r--gas/config/tc-mcore.h4
2 files changed, 7 insertions, 1 deletions
diff --git a/gas/config/tc-mcore.c b/gas/config/tc-mcore.c
index 5f16f8e..32f3a73 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 2bc2efe..eff1322 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 */