aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-07-01 09:15:34 +0930
committerAlan Modra <amodra@gmail.com>2020-07-01 10:06:43 +0930
commit3443489c65e10d54c001f36602c1031134c2548c (patch)
treeecaaf4f0fa6e8b212d01360751b52a5dcbfc0e38
parent054b336d9a1238da95e40ba292836c9113253653 (diff)
downloadgdb-3443489c65e10d54c001f36602c1031134c2548c.zip
gdb-3443489c65e10d54c001f36602c1031134c2548c.tar.gz
gdb-3443489c65e10d54c001f36602c1031134c2548c.tar.bz2
obsolete xc16x
The xc16x md_apply_fix code is just so broken that in my opinion the target should never have been accepted, and from a quick look at commit logs for the target it appears that no one has ever contributed fixes for anything. This target has just been a 14 year burden on global binutils and cgen maintainers. That's not how free software is supposed to work. bfd/ * config.bfd: Obsolete xc16x. gas/ * config/tc-xc16x.c (md_apply_fix): Add FIXME.
-rw-r--r--bfd/ChangeLog4
-rw-r--r--bfd/config.bfd1
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/config/tc-xc16x.c2
4 files changed, 11 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index fa4799a..318a8ad 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2020-07-01 Alan Modra <amodra@gmail.com>
+
+ * config.bfd: Obsolete xc16x.
+
2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
* archures.c (bfd_mach_i386_nacl): Removed.
diff --git a/bfd/config.bfd b/bfd/config.bfd
index 2fa2acb..14523ca 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -54,6 +54,7 @@ case $targ in
exit 1
;;
powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin* | \
+ xc16x-*-* | \
null)
if test "x$enable_obsolete" != xyes; then
echo "*** Configuration $targ is obsolete." >&2
diff --git a/gas/ChangeLog b/gas/ChangeLog
index b9840ab..88c5451 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,9 @@
2020-07-01 Alan Modra <amodra@gmail.com>
+ * config/tc-xc16x.c (md_apply_fix): Add FIXME.
+
+2020-07-01 Alan Modra <amodra@gmail.com>
+
* testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
in data sections, and mep.
diff --git a/gas/config/tc-xc16x.c b/gas/config/tc-xc16x.c
index de2befc..3d78dc5 100644
--- a/gas/config/tc-xc16x.c
+++ b/gas/config/tc-xc16x.c
@@ -323,6 +323,8 @@ tc_gen_reloc (asection *section ATTRIBUTE_UNUSED, fixS *fixp)
void
md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED)
{
+ /* FIXME: This absolute nonsense apparently is to make relative
+ jumps "work". Of course, it breaks any other type of fixup. */
if (!strstr (seg->name,".debug"))
{
if (*valP < 128)