aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog3
-rw-r--r--gas/config/tc-ppc.c6
2 files changed, 8 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 7fa8618..bb37aaf 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,8 @@
2001-10-02 Alan Modra <amodra@bigpond.net.au>
+ * config/tc-ppc.c (md_apply_fix3 <BFD_RELOC_CTOR>): Make it 64
+ bits if target is 64 bit.
+
* doc/as.texinfo (listing): Fix typo.
* as.c (print_version_id): Use BFD_VERSION_STRING in place of
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index 945e6dc..a9a7e22 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -5207,8 +5207,9 @@ md_apply_fix3 (fixp, valuep, seg)
#endif
switch (fixp->fx_r_type)
{
+#if BFD_DEFAULT_TARGET_SIZE != 64
case BFD_RELOC_CTOR:
- /* FIXME: 32 bits even for 64-bit targets? */
+#endif
case BFD_RELOC_32:
if (fixp->fx_pcrel)
fixp->fx_r_type = BFD_RELOC_32_PCREL;
@@ -5222,6 +5223,9 @@ md_apply_fix3 (fixp, valuep, seg)
value, 4);
break;
+#if BFD_DEFAULT_TARGET_SIZE == 64
+ case BFD_RELOC_CTOR:
+#endif
case BFD_RELOC_64:
if (fixp->fx_pcrel)
fixp->fx_r_type = BFD_RELOC_64_PCREL;