diff --git a/compile b/compile
deleted file mode 100755
index 1b1d232..0000000
--- a/compile
+++ /dev/null
@@ -1,142 +0,0 @@
-#! /bin/sh
-# Wrapper for compilers which do not understand `-c -o'.
-
-scriptversion=2005-05-14.22
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
-# Written by Tom Tromey <tromey@cygnus.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-case $1 in
-  '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: compile [--help] [--version] PROGRAM [ARGS]
-
-Wrapper for compilers which do not understand `-c -o'.
-Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
-arguments, and rename the output as expected.
-
-If you are trying to build a whole package this is not the
-right script to run: please start by reading the file `INSTALL'.
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "compile $scriptversion"
-    exit $?
-    ;;
-esac
-
-ofile=
-cfile=
-eat=
-
-for arg
-do
-  if test -n "$eat"; then
-    eat=
-  else
-    case $1 in
-      -o)
-	# configure might choose to run compile as `compile cc -o foo foo.c'.
-	# So we strip `-o arg' only if arg is an object.
-	eat=1
-	case $2 in
-	  *.o | *.obj)
-	    ofile=$2
-	    ;;
-	  *)
-	    set x "$@" -o "$2"
-	    shift
-	    ;;
-	esac
-	;;
-      *.c)
-	cfile=$1
-	set x "$@" "$1"
-	shift
-	;;
-      *)
-	set x "$@" "$1"
-	shift
-	;;
-    esac
-  fi
-  shift
-done
-
-if test -z "$ofile" || test -z "$cfile"; then
-  # If no `-o' option was seen then we might have been invoked from a
-  # pattern rule where we don't need one.  That is ok -- this is a
-  # normal compilation that the losing compiler can handle.  If no
-  # `.c' file was seen then we are probably linking.  That is also
-  # ok.
-  exec "$@"
-fi
-
-# Name of file we expect compiler to create.
-cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
-
-# Create the lock directory.
-# Note: use `[/.-]' here to ensure that we don't use the same name
-# that we are using for the .o file.  Also, base the name on the expected
-# object file name, since that is what matters with a parallel build.
-lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
-while true; do
-  if mkdir "$lockdir" >/dev/null 2>&1; then
-    break
-  fi
-  sleep 1
-done
-# FIXME: race condition here if user kills between mkdir and trap.
-trap "rmdir '$lockdir'; exit 1" 1 2 15
-
-# Run the compile.
-"$@"
-ret=$?
-
-if test -f "$cofile"; then
-  mv "$cofile" "$ofile"
-elif test -f "${cofile}bj"; then
-  mv "${cofile}bj" "$ofile"
-fi
-
-rmdir "$lockdir"
-exit $ret
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
diff --git a/djunpack.bat b/djunpack.bat
deleted file mode 100755
index f09f5ed..0000000
--- a/djunpack.bat
+++ /dev/null
@@ -1,52 +0,0 @@
-@echo off
-Rem
-Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line
-Rem format, or else stock DOS/Windows shells will refuse to run it.
-Rem
-Rem This batch file unpacks the GDB distribution while simultaneously
-Rem renaming some of the files whose names are invalid on DOS or conflict
-Rem with other file names after truncation to DOS 8+3 namespace.
-Rem
-Rem Invoke like this:
-Rem
-Rem     djunpack gdb-XYZ.tar
-Rem
-Rem where XYZ is the version number.  If the argument includes leading
-Rem directories, it MUST use backslashes, not forward slashes.
-Rem
-Rem The following 2 lines need to be changed with each new GDB release, to
-Rem be identical to the name of the top-level directory where the GDB
-Rem distribution unpacks itself.
-set GDBVER=gdb-5.0
-if "%GDBVER%"=="gdb-5.0" GoTo EnvOk
-Rem If their environment space is too small, re-exec with a larger one
-command.com /e:4096 /c %0 %1
-GoTo End
-:EnvOk
-if not exist %1 GoTo NoArchive
-djtar -x -p -o %GDBVER%/gdb/config/djgpp/fnchange.lst %1 > fnchange.tmp
-Rem The following uses a feature of COPY whereby it does not copy
-Rem empty files.  We need that because the previous line will create
-Rem an empty fnchange.tmp even if the command failed for some reason.
-copy fnchange.tmp junk.tmp > nul
-if not exist junk.tmp GoTo NoDjTar
-del junk.tmp
-sed -e 's,@V@,%GDBVER%,g' < fnchange.tmp > fnchange.lst
-Rem See the comment above about the reason for using COPY.
-copy fnchange.lst junk.tmp > nul
-if not exist junk.tmp GoTo NoSed
-del junk.tmp
-djtar -x -n fnchange.lst %1
-GoTo End
-:NoSed
-echo FAIL: Sed is not available.
-GoTo End
-:NoDjTar
-echo FAIL: DJTAR is not available or no fnchange.lst file in %1.
-GoTo End
-:NoArchive
-echo FAIL: the file %1 does not seem to exist.
-echo Remember that %1 cannot use forward slashes, only backslashes.
-GoTo End
-:End
-set GDBVER=
diff --git a/gas/testsuite/gas/mips/vxworks1-el.d b/gas/testsuite/gas/mips/vxworks1-el.d
deleted file mode 100644
index 3db07e4..0000000
--- a/gas/testsuite/gas/mips/vxworks1-el.d
+++ /dev/null
@@ -1,72 +0,0 @@
-#as: -mips2 -mvxworks-pic -mabi=32 -EL
-#source: vxworks1.s
-#objdump: -dr
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-00000000 <\.text>:
-#
-# la $4,local
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-#
-# la $4,global
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	global
-#
-# lw $4,local
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# lw $4,global
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# sw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# sw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# ulw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	88240003 	lwl	a0,3\(at\)
-.*:	98240000 	lwr	a0,0\(at\)
-#
-# ulw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	88240003 	lwl	a0,3\(at\)
-.*:	98240000 	lwr	a0,0\(at\)
-#
-# usw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	a8240003 	swl	a0,3\(at\)
-.*:	b8240000 	swr	a0,0\(at\)
-#
-# usw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	a8240003 	swl	a0,3\(at\)
-.*:	b8240000 	swr	a0,0\(at\)
-	\.\.\.
diff --git a/gas/testsuite/gas/mips/vxworks1-xgot-el.d b/gas/testsuite/gas/mips/vxworks1-xgot-el.d
deleted file mode 100644
index c48d804..0000000
--- a/gas/testsuite/gas/mips/vxworks1-xgot-el.d
+++ /dev/null
@@ -1,102 +0,0 @@
-#as: -mips2 -mvxworks-pic -xgot -mabi=32 -EL
-#source: vxworks1.s
-#objdump: -dr
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-00000000 <\.text>:
-#
-# la $4,local
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	\.data
-#
-# la $4,global
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	global
-#
-# lw $4,local
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# lw $4,global
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# sw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# sw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# ulw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	88240003 	lwl	a0,3\(at\)
-.*:	98240000 	lwr	a0,0\(at\)
-#
-# ulw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	88240003 	lwl	a0,3\(at\)
-.*:	98240000 	lwr	a0,0\(at\)
-#
-# usw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	a8240003 	swl	a0,3\(at\)
-.*:	b8240000 	swr	a0,0\(at\)
-#
-# usw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	a8240003 	swl	a0,3\(at\)
-.*:	b8240000 	swr	a0,0\(at\)
-	\.\.\.
diff --git a/gas/testsuite/gas/mips/vxworks1-xgot.d b/gas/testsuite/gas/mips/vxworks1-xgot.d
deleted file mode 100644
index 660b34e..0000000
--- a/gas/testsuite/gas/mips/vxworks1-xgot.d
+++ /dev/null
@@ -1,102 +0,0 @@
-#as: -mips2 -mvxworks-pic -xgot -mabi=32 -EB
-#source: vxworks1.s
-#objdump: -dr
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-00000000 <\.text>:
-#
-# la $4,local
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	\.data
-#
-# la $4,global
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	global
-#
-# lw $4,local
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# lw $4,global
-#
-.*:	3c040000 	lui	a0,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	009c2021 	addu	a0,a0,gp
-.*:	8c840000 	lw	a0,0\(a0\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# sw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# sw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# ulw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	88240000 	lwl	a0,0\(at\)
-.*:	98240003 	lwr	a0,3\(at\)
-#
-# ulw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	88240000 	lwl	a0,0\(at\)
-.*:	98240003 	lwr	a0,3\(at\)
-#
-# usw $4,local
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	\.data
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	\.data
-.*:	a8240000 	swl	a0,0\(at\)
-.*:	b8240003 	swr	a0,3\(at\)
-#
-# usw $4,global
-#
-.*:	3c010000 	lui	at,0x0
-			.*: R_MIPS_GOT_HI16	global
-.*:	003c0821 	addu	at,at,gp
-.*:	8c210000 	lw	at,0\(at\)
-			.*: R_MIPS_GOT_LO16	global
-.*:	a8240000 	swl	a0,0\(at\)
-.*:	b8240003 	swr	a0,3\(at\)
-	\.\.\.
diff --git a/gas/testsuite/gas/mips/vxworks1.d b/gas/testsuite/gas/mips/vxworks1.d
deleted file mode 100644
index 86d64b4..0000000
--- a/gas/testsuite/gas/mips/vxworks1.d
+++ /dev/null
@@ -1,71 +0,0 @@
-#as: -mips2 -mvxworks-pic -mabi=32 -EB
-#objdump: -dr
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-00000000 <\.text>:
-#
-# la $4,local
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-#
-# la $4,global
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	global
-#
-# lw $4,local
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# lw $4,global
-#
-.*:	8f840000 	lw	a0,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	8c840000 	lw	a0,0\(a0\)
-#
-# sw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# sw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	ac240000 	sw	a0,0\(at\)
-#
-# ulw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	88240000 	lwl	a0,0\(at\)
-.*:	98240003 	lwr	a0,3\(at\)
-#
-# ulw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	88240000 	lwl	a0,0\(at\)
-.*:	98240003 	lwr	a0,3\(at\)
-#
-# usw $4,local
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	\.data
-.*:	a8240000 	swl	a0,0\(at\)
-.*:	b8240003 	swr	a0,3\(at\)
-#
-# usw $4,global
-#
-.*:	8f810000 	lw	at,0\(gp\)
-			.*: R_MIPS_GOT16	global
-.*:	a8240000 	swl	a0,0\(at\)
-.*:	b8240003 	swr	a0,3\(at\)
-	\.\.\.
diff --git a/gas/testsuite/gas/mips/vxworks1.s b/gas/testsuite/gas/mips/vxworks1.s
deleted file mode 100644
index 4d670a3..0000000
--- a/gas/testsuite/gas/mips/vxworks1.s
+++ /dev/null
@@ -1,16 +0,0 @@
-	la	$4,local
-	la	$4,global
-	lw	$4,local
-	lw	$4,global
-	sw	$4,local
-	sw	$4,global
-	ulw	$4,local
-	ulw	$4,global
-	usw	$4,local
-	usw	$4,global
-	.space	16
-
-	.data
-	.global global
-local:	.word	4
-global:	.word	8
diff --git a/gas/testsuite/gas/sparc/vxworks-pic.d b/gas/testsuite/gas/sparc/vxworks-pic.d
deleted file mode 100644
index 7e238fb..0000000
--- a/gas/testsuite/gas/sparc/vxworks-pic.d
+++ /dev/null
@@ -1,27 +0,0 @@
-#as: -KPIC
-#objdump: -dr
-#name: VxWorks PIC
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-00000000 <\.text>:
-   0:	2f 00 00 00 	sethi  %hi\(0\), %l7
-			0: R_SPARC_HI22	__GOTT_BASE__
-   4:	ee 05 e0 00 	ld  \[ %l7 \], %l7
-			4: R_SPARC_LO10	__GOTT_BASE__
-   8:	ee 05 e0 00 	ld  \[ %l7 \], %l7
-			8: R_SPARC_LO10	__GOTT_INDEX__
-   c:	03 00 00 00 	sethi  %hi\(0\), %g1
-			c: R_SPARC_HI22	__GOTT_BASE__
-  10:	82 10 60 00 	mov  %g1, %g1	! 0x0
-			10: R_SPARC_LO10	__GOTT_BASE__
-  14:	03 00 00 00 	sethi  %hi\(0\), %g1
-			14: R_SPARC_HI22	__GOTT_INDEX__
-  18:	82 10 60 00 	mov  %g1, %g1	! 0x0
-			18: R_SPARC_LO10	__GOTT_INDEX__
-  1c:	03 00 00 00 	sethi  %hi\(0\), %g1
-			1c: R_SPARC_GOT22	__GOT_BASE__
-  20:	82 10 60 00 	mov  %g1, %g1	! 0x0
-			20: R_SPARC_GOT10	__GOT_BASE__
diff --git a/gas/testsuite/gas/sparc/vxworks-pic.s b/gas/testsuite/gas/sparc/vxworks-pic.s
deleted file mode 100644
index 9d49e00..0000000
--- a/gas/testsuite/gas/sparc/vxworks-pic.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	sethi	%hi(__GOTT_BASE__), %l7
-	ld	[%l7+%lo(__GOTT_BASE__)],%l7
-	ld	[%l7+%lo(__GOTT_INDEX__)],%l7
-
-	sethi	%hi(__GOTT_BASE__), %g1
-	or	%g1, %lo(__GOTT_BASE__), %g1
-	sethi	%hi(__GOTT_INDEX__), %g1
-	or	%g1, %lo(__GOTT_INDEX__), %g1
-
-	sethi	%hi(__GOT_BASE__), %g1
-	or	%g1, %lo(__GOT_BASE__), %g1
diff --git a/ld/elf-hints-local.h b/ld/elf-hints-local.h
deleted file mode 100644
index 6940818..0000000
--- a/ld/elf-hints-local.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright (c) 1997 John D. Polstra.
-   All rights reserved.
- 
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
- 
-   THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-   ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-   FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-   OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-   HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-   OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-   SUCH DAMAGE.  */
-
-#ifndef	_ELF_HINTS_H_
-#define	_ELF_HINTS_H_
-
-/* Hints file produced by ldconfig.  */
-struct elfhints_hdr
-{
-  u_int32_t magic;		/* Magic number.  */
-  u_int32_t version;		/* File version (1).  */
-  u_int32_t strtab;		/* Offset of string table in file.  */
-  u_int32_t strsize;		/* Size of string table.  */
-  u_int32_t dirlist;		/* Offset of directory list in string table.  */
-  u_int32_t dirlistlen;		/* strlen(dirlist).  */
-  u_int32_t spare[26];		/* Room for expansion.  */
-};
-
-#define ELFHINTS_MAGIC	0x746e6845
-
-#define _PATH_ELF_HINTS	"/var/run/ld-elf.so.hints"
-
-#endif /* !_ELF_HINTS_H_ */
diff --git a/ld/emulparams/elf32_sparc_vxworks.sh b/ld/emulparams/elf32_sparc_vxworks.sh
deleted file mode 100644
index 12a9b38..0000000
--- a/ld/emulparams/elf32_sparc_vxworks.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-. ${srcdir}/emulparams/elf32_sparc.sh
-OUTPUT_FORMAT="elf32-sparc-vxworks"
-unset DATA_PLT
-. ${srcdir}/emulparams/vxworks.sh
diff --git a/ld/emulparams/elf32bfinfd.sh b/ld/emulparams/elf32bfinfd.sh
deleted file mode 100644
index 19ec748..0000000
--- a/ld/emulparams/elf32bfinfd.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-. ${srcdir}/emulparams/bfin.sh
-unset STACK_ADDR
-OUTPUT_FORMAT="elf32-bfinfdpic"
-MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
-TEMPLATE_NAME=elf32
-GENERATE_SHLIB_SCRIPT=yes
-GENERATE_PIE_SCRIPT=yes
-EMBEDDED= # This gets us program headers mapped as part of the text segment.
-OTHER_GOT_SYMBOLS=
-OTHER_READONLY_SECTIONS="
-  .rofixup        : {
-    ${RELOCATING+__ROFIXUP_LIST__ = .;}
-    *(.rofixup)
-    ${RELOCATING+__ROFIXUP_END__ = .;}
-  }
-"
diff --git a/ld/emulparams/elf32ebmipvxworks.sh b/ld/emulparams/elf32ebmipvxworks.sh
deleted file mode 100644
index 4145488..0000000
--- a/ld/emulparams/elf32ebmipvxworks.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-. ${srcdir}/emulparams/elf32bmip.sh
-
-OUTPUT_FORMAT="elf32-bigmips-vxworks"
-BIG_OUTPUT_FORMAT="elf32-bigmips-vxworks"
-LITTLE_OUTPUT_FORMAT="elf32-littlemips-vxworks"
-unset OTHER_GOT_SYMBOLS
-SHLIB_TEXT_START_ADDR=0
-unset TEXT_DYNAMIC
-unset DATA_ADDR
-
-. ${srcdir}/emulparams/vxworks.sh
diff --git a/ld/emulparams/elf32elmipvxworks.sh b/ld/emulparams/elf32elmipvxworks.sh
deleted file mode 100644
index c123944..0000000
--- a/ld/emulparams/elf32elmipvxworks.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-. ${srcdir}/emulparams/elf32bmip.sh
-
-OUTPUT_FORMAT="elf32-littlemips-vxworks"
-BIG_OUTPUT_FORMAT="elf32-bigmips-vxworks"
-LITTLE_OUTPUT_FORMAT="elf32-littlemips-vxworks"
-unset OTHER_GOT_SYMBOLS
-SHLIB_TEXT_START_ADDR=0
-unset TEXT_DYNAMIC
-unset DATA_ADDR
-
-. ${srcdir}/emulparams/vxworks.sh
diff --git a/ld/testsuite/ld-elf/eh1.s b/ld/testsuite/ld-elf/eh1.s
deleted file mode 100644
index a605209..0000000
--- a/ld/testsuite/ld-elf/eh1.s
+++ /dev/null
@@ -1,47 +0,0 @@
-	.text
-.globl _start
-	.type	_start, %function
-_start:
-.LFB2:
-.LCFI0:
-.LCFI1:
-.LFE2:
-	.size	_start, .-_start
-	.section	.eh_frame,"a",%progbits
-.Lframe1:
-	.long	.LECIE1-.LSCIE1
-.LSCIE1:
-	.long	0x0
-	.byte	0x1
-	.string	""
-	.uleb128 0x1
-	.sleb128 -8
-	.byte	0x10
-	.byte	0xc
-	.uleb128 0x7
-	.uleb128 0x8
-	.byte	0x90
-	.uleb128 0x1
-	.align 8
-.LECIE1:
-.LSFDE1:
-	.long	.LEFDE1-.LASFDE1
-.LASFDE1:
-	.long	.LASFDE1-.Lframe1
-	.quad	.LFB2
-	.quad	.LFE2-.LFB2
-	.byte	0x4
-	.long	.LCFI0-.LFB2
-	.byte	0xe
-	.uleb128 0x10
-	.byte	0x86
-	.uleb128 0x2
-	.byte	0x4
-	.long	.LCFI1-.LCFI0
-	.byte	0xd
-	.uleb128 0x6
-	.byte 0x0
-	.byte 0x0
-	.byte 0x0
-	.byte 0x0
-.LEFDE1:
diff --git a/ld/testsuite/ld-elf/eh1a.s b/ld/testsuite/ld-elf/eh1a.s
deleted file mode 100644
index c644014..0000000
--- a/ld/testsuite/ld-elf/eh1a.s
+++ /dev/null
@@ -1,3 +0,0 @@
-	.section	.eh_frame,"a",%progbits
-	.align	8
-	.zero	4
diff --git a/ld/testsuite/ld-elf/eh2a.s b/ld/testsuite/ld-elf/eh2a.s
deleted file mode 100644
index 2c024f8..0000000
--- a/ld/testsuite/ld-elf/eh2a.s
+++ /dev/null
@@ -1,3 +0,0 @@
-	.section	.eh_frame,"a",%progbits
-	.align	4
-	.zero	4
diff --git a/ld/testsuite/ld-elf/eh3.s b/ld/testsuite/ld-elf/eh3.s
deleted file mode 100644
index 24bd90d..0000000
--- a/ld/testsuite/ld-elf/eh3.s
+++ /dev/null
@@ -1,48 +0,0 @@
-	.text
-.globl _start
-	.type	_start, %function
-_start:
-.LFB2:
-.LCFI0:
-.LCFI1:
-.LFE2:
-	.size	_start, .-_start
-	.section	.eh_frame,"a",%progbits
-	.align 16
-.Lframe1:
-	.long	.LECIE1-.LSCIE1
-.LSCIE1:
-	.long	0x0
-	.byte	0x1
-	.string	""
-	.uleb128 0x1
-	.sleb128 -8
-	.byte	0x10
-	.byte	0xc
-	.uleb128 0x7
-	.uleb128 0x8
-	.byte	0x90
-	.uleb128 0x1
-	.align 8
-.LECIE1:
-.LSFDE1:
-	.long	.LEFDE1-.LASFDE1
-.LASFDE1:
-	.long	.LASFDE1-.Lframe1
-	.quad	.LFB2
-	.quad	.LFE2-.LFB2
-	.byte	0x4
-	.long	.LCFI0-.LFB2
-	.byte	0xe
-	.uleb128 0x10
-	.byte	0x86
-	.uleb128 0x2
-	.byte	0x4
-	.long	.LCFI1-.LCFI0
-	.byte	0xd
-	.uleb128 0x6
-	.byte 0x0
-	.byte 0x0
-	.byte 0x0
-	.byte 0x0
-.LEFDE1:
diff --git a/ld/testsuite/ld-elf/eh3a.s b/ld/testsuite/ld-elf/eh3a.s
deleted file mode 100644
index c245871..0000000
--- a/ld/testsuite/ld-elf/eh3a.s
+++ /dev/null
@@ -1,3 +0,0 @@
-	.section	.eh_frame,"a",%progbits
-	.align	8
-	.zero	8
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1-10000.d b/ld/testsuite/ld-mips-elf/stub-dynsym-1-10000.d
deleted file mode 100644
index b59bb5f..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1-10000.d
+++ /dev/null
@@ -1,18 +0,0 @@
-
-.*:     file format elf32-tradbigmips
-
-Disassembly of section \.MIPS\.stubs:
-
-.* <\.MIPS.stubs>:
-.*:	8f998010 	lw	t9,-32752\(gp\)
-.*:	03e07821 	move	t7,ra
-.*:	3c180001 	lui	t8,0x1
-.*:	0320f809 	jalr	t9
-.*:	37180000 	ori	t8,t8,0x0
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-Disassembly of section .text:
-#pass
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1-2fe80.d b/ld/testsuite/ld-mips-elf/stub-dynsym-1-2fe80.d
deleted file mode 100644
index 07ca1a2..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1-2fe80.d
+++ /dev/null
@@ -1,18 +0,0 @@
-
-.*:     file format elf32-tradbigmips
-
-Disassembly of section \.MIPS\.stubs:
-
-.* <\.MIPS.stubs>:
-.*:	8f998010 	lw	t9,-32752\(gp\)
-.*:	03e07821 	move	t7,ra
-.*:	3c180002 	lui	t8,0x2
-.*:	0320f809 	jalr	t9
-.*:	3718fe80 	ori	t8,t8,0xfe80
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-Disassembly of section .text:
-#pass
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1-7fff.d b/ld/testsuite/ld-mips-elf/stub-dynsym-1-7fff.d
deleted file mode 100644
index bfc94c5..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1-7fff.d
+++ /dev/null
@@ -1,16 +0,0 @@
-
-.*:     file format elf32-tradbigmips
-
-Disassembly of section \.MIPS\.stubs:
-
-.* <\.MIPS.stubs>:
-.*:	8f998010 	lw	t9,-32752\(gp\)
-.*:	03e07821 	move	t7,ra
-.*:	0320f809 	jalr	t9
-.*:	24187fff 	li	t8,32767
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-Disassembly of section .text:
-#pass
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1-8000.d b/ld/testsuite/ld-mips-elf/stub-dynsym-1-8000.d
deleted file mode 100644
index 2861ac2..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1-8000.d
+++ /dev/null
@@ -1,16 +0,0 @@
-
-.*:     file format elf32-tradbigmips
-
-Disassembly of section \.MIPS\.stubs:
-
-.* <\.MIPS.stubs>:
-.*:	8f998010 	lw	t9,-32752\(gp\)
-.*:	03e07821 	move	t7,ra
-.*:	0320f809 	jalr	t9
-.*:	34188000 	li	t8,0x8000
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-Disassembly of section .text:
-#pass
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1-fff0.d b/ld/testsuite/ld-mips-elf/stub-dynsym-1-fff0.d
deleted file mode 100644
index 440d32a..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1-fff0.d
+++ /dev/null
@@ -1,16 +0,0 @@
-
-.*:     file format elf32-tradbigmips
-
-Disassembly of section \.MIPS\.stubs:
-
-.* <\.MIPS.stubs>:
-.*:	8f998010 	lw	t9,-32752\(gp\)
-.*:	03e07821 	move	t7,ra
-.*:	0320f809 	jalr	t9
-.*:	3418fff0 	li	t8,0xfff0
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-.*:	00000000 	nop
-Disassembly of section .text:
-#pass
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1.ld b/ld/testsuite/ld-mips-elf/stub-dynsym-1.ld
deleted file mode 100644
index 17c998d..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1.ld
+++ /dev/null
@@ -1,17 +0,0 @@
-SECTIONS
-{
-  . = 0x80000;
-  .interp : { *(.interp) }
-  .hash : { *(.hash) }
-  .dynsym : { *(.dynsym) }
-  .dynstr : { *(.dynstr) }
-  .rel.dyn : { *(.rel.dyn) }
-  .MIPS.stubs : { *(.MIPS.stubs) }
-  .text : { *(.text) }
-
-  . = ALIGN (0x10000);
-  _gp = . + 0x7ff0;
-  .got : { *(.got) }
-
-  /DISCARD/ : { *(.reginfo) }
-}
diff --git a/ld/testsuite/ld-mips-elf/stub-dynsym-1.s b/ld/testsuite/ld-mips-elf/stub-dynsym-1.s
deleted file mode 100644
index 15d2e1b..0000000
--- a/ld/testsuite/ld-mips-elf/stub-dynsym-1.s
+++ /dev/null
@@ -1,10 +0,0 @@
-	.macro	decl
-	.global	exported\@
-	.equ	exported\@,\@
-	.endm
-
-	.rept	dynsym - base_syms
-	decl
-	.endr
-
-	lw	$25,%call16(foo)($gp)
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3.d b/ld/testsuite/ld-mips-elf/tls-hidden3.d
deleted file mode 100644
index 6d58686..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3.d
+++ /dev/null
@@ -1,24 +0,0 @@
-
-.*:     file format .*
-
-Disassembly of section \.text:
-
-#
-# The TLS entries are ordered as follows:
-#
-#	foo0	(-0x7ff0 + 0x20)
-#	foo2	(-0x7ff0 + 0x24)
-#	foo3	(-0x7ff0 + 0x28)
-#	foo1	(-0x7ff0 + 0x2c)
-#
-# Any order would be acceptable, but it must match the .got dump.
-#
-00080c00 <\.text>:
-   80c00:	8f848030 	lw	a0,-32720\(gp\)
-   80c04:	8f84803c 	lw	a0,-32708\(gp\)
-   80c08:	8f848034 	lw	a0,-32716\(gp\)
-   80c0c:	8f848038 	lw	a0,-32712\(gp\)
-   80c10:	8f848030 	lw	a0,-32720\(gp\)
-   80c14:	8f84803c 	lw	a0,-32708\(gp\)
-   80c18:	8f848034 	lw	a0,-32716\(gp\)
-   80c1c:	8f848038 	lw	a0,-32712\(gp\)
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3.got b/ld/testsuite/ld-mips-elf/tls-hidden3.got
deleted file mode 100644
index 8b9c87f..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3.got
+++ /dev/null
@@ -1,24 +0,0 @@
-
-.*:     file format .*
-
-#
-# The GOT layout is:
-#
-#	- 2 reserved entries
-#	- 5 local page entries
-#	- 1 global entry for "undef"
-#	- 4 TLS entries
-#
-# The order of the TLS entries is:
-#
-#	foo0	(offset 0x20)
-#	foo2	(offset 0x24)
-#	foo3	(offset 0x28)
-#	foo1	(offset 0x2c)
-#
-# Any order would be acceptable, but it must match the .d dump.
-#
-Contents of section \.got:
- 90000 00000000 80000000 00000000 00000000  .*
- 90010 00000000 00000000 00000000 00000000  .*
- 90020 0000abc0 0000abc8 0000abcc 0000abc4  .*
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3.ld b/ld/testsuite/ld-mips-elf/tls-hidden3.ld
deleted file mode 100644
index b3d0584..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3.ld
+++ /dev/null
@@ -1,31 +0,0 @@
-SECTIONS
-{
-  . = 0x80000;
-  .interp : { *(.interp) }
-  .hash : { *(.hash) }
-  .dynsym : { *(.dynsym) }
-  .dynstr : { *(.dynstr) }
-
-  . = ALIGN (0x400);
-  .rel.dyn : { *(.rel.dyn) }
-
-  . = ALIGN (0x400);
-  .MIPS.stubs : { *(.MIPS.stubs) }
-
-  . = ALIGN (0x400);
-  .text : { *(.text) }
-
-  . = ALIGN (0x10000);
-  _gp = . + 0x7ff0;
-  .got : { *(.got) }
-
-  . = ALIGN (0x400);
-  .tdata : { *(.tdata) }
-
-  /DISCARD/ : { *(.reginfo) }
-}
-
-VERSION
-{
-  { local: *; };
-}
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3.r b/ld/testsuite/ld-mips-elf/tls-hidden3.r
deleted file mode 100644
index 500e7b1..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3.r
+++ /dev/null
@@ -1,13 +0,0 @@
-
-Relocation section '\.rel\.dyn' at offset .* contains 6 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name
-00000000  00000000 R_MIPS_NONE      
-#
-# The order of the next four entries doesn't matter.  The important thing
-# is that there is exactly one entry per GOT TLS slot.
-#
-00090020  0000002f R_MIPS_TLS_TPREL3
-0009002c  0000002f R_MIPS_TLS_TPREL3
-00090024  0000002f R_MIPS_TLS_TPREL3
-00090028  0000002f R_MIPS_TLS_TPREL3
-00090030  .*03 R_MIPS_REL32      00000000   undef
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3a.s b/ld/testsuite/ld-mips-elf/tls-hidden3a.s
deleted file mode 100644
index d1e6d64..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3a.s
+++ /dev/null
@@ -1,10 +0,0 @@
-	.macro	load
-	lw	$4,%gottprel(foo\@)($gp)
-	.endm
-
-	.rept	4
-	load
-	.endr
-
-	.section .tdata,"awT",@progbits
-	.fill	0xabc0
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden3b.s b/ld/testsuite/ld-mips-elf/tls-hidden3b.s
deleted file mode 100644
index 0744b07..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden3b.s
+++ /dev/null
@@ -1,18 +0,0 @@
-	.macro	load
-	.text
-	lw	$4,%gottprel(foo\@)($gp)
-
-	.global foo\@
-	.type   foo\@,@object
-	.size   foo\@,4
-	.section .tdata,"awT",@progbits
-foo\@:
-	.word   \@
-	.endm
-
-	.rept	4
-	load
-	.endr
-
-	.data
-	.word	undef
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden4.got b/ld/testsuite/ld-mips-elf/tls-hidden4.got
deleted file mode 100644
index 84120c0..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden4.got
+++ /dev/null
@@ -1,28 +0,0 @@
-
-.*:     file format .*
-
-Contents of section \.got:
-#
-# The order of the TLS entries in this GOT is:
-#
-#     foo2
-#     foo3
-#     foo0
-#     foo1
-#
-# The order and address don't matter; the important thing is that the
-# addresses match the relocs in the .r dump and that there is a separate
-# entry for each symbol.
-#
-#...
- 1c4080 0000abc8 0000abcc 0000abc0 0000abc4  .*
-#
-# Likewise, but the order of the entries in this GOT is:
-#
-#     foo3
-#     foo2
-#     foo0
-#     foo1
-#...
- 1d00c0 00000000 00000000 00000000 0000abcc  .*
- 1d00d0 0000abc8 0000abc0 0000abc4           .*
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden4.r b/ld/testsuite/ld-mips-elf/tls-hidden4.r
deleted file mode 100644
index f6809b5..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden4.r
+++ /dev/null
@@ -1,19 +0,0 @@
-
-Relocation section '\.rel\.dyn' at offset .* contains .* entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name
-00000000  00000000 R_MIPS_NONE      
-#
-# The order and addresses of the next eight entries don't matter.  The
-# important thing is that there is exactly one entry per GOT TLS slot
-# and that the addresses match those in the .got dump.
-#
-001d00d4  0000002f R_MIPS_TLS_TPREL3
-001d00d8  0000002f R_MIPS_TLS_TPREL3
-001d00d0  0000002f R_MIPS_TLS_TPREL3
-001d00cc  0000002f R_MIPS_TLS_TPREL3
-001c4088  0000002f R_MIPS_TLS_TPREL3
-001c408c  0000002f R_MIPS_TLS_TPREL3
-001c4080  0000002f R_MIPS_TLS_TPREL3
-001c4084  0000002f R_MIPS_TLS_TPREL3
-.* R_MIPS_REL32 .*
-#pass
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden4a.s b/ld/testsuite/ld-mips-elf/tls-hidden4a.s
deleted file mode 100644
index 02a0d35..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden4a.s
+++ /dev/null
@@ -1,18 +0,0 @@
-	.macro	load
-	lw	$4,%gottprel(foo\@)($gp)
-	.endm
-
-	.rept	4
-	load
-	.endr
-
-	.macro	load2
-	lw	$4,%got(undefa\@)($gp)
-	.endm
-
-	.rept	0x3000
-	load2
-	.endr
-
-	.section .tdata,"awT",@progbits
-	.fill	0xabc0
diff --git a/ld/testsuite/ld-mips-elf/tls-hidden4b.s b/ld/testsuite/ld-mips-elf/tls-hidden4b.s
deleted file mode 100644
index d6deb00..0000000
--- a/ld/testsuite/ld-mips-elf/tls-hidden4b.s
+++ /dev/null
@@ -1,27 +0,0 @@
-	.macro	load
-	.text
-	lw	$4,%gottprel(foo\@)($gp)
-
-	.global foo\@
-	.type   foo\@,@object
-	.size   foo\@,4
-	.section .tdata,"awT",@progbits
-foo\@:
-	.word   \@
-	.endm
-
-	.rept	4
-	load
-	.endr
-
-	.text
-	.macro	load2
-	lw	$4,%got(undefb\@)($gp)
-	.endm
-
-	.rept	0x3000
-	load2
-	.endr
-
-	.data
-	.word	undef
diff --git a/ld/testsuite/ld-mips-elf/vxworks1-lib.dd b/ld/testsuite/ld-mips-elf/vxworks1-lib.dd
deleted file mode 100644
index ab060d9..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1-lib.dd
+++ /dev/null
@@ -1,50 +0,0 @@
-
-.*:     file format .*
-
-Disassembly of section \.plt:
-
-00080800 <_PROCEDURE_LINKAGE_TABLE_>:
-   80800:	8f990008 	lw	t9,8\(gp\)
-   80804:	00000000 	nop
-   80808:	03200008 	jr	t9
-   8080c:	00000000 	nop
-	\.\.\.
-   80818:	1000fff9 	b	80800 <_PROCEDURE_LINKAGE_TABLE_>
-   8081c:	24180000 	li	t8,0
-   80820:	1000fff7 	b	80800 <_PROCEDURE_LINKAGE_TABLE_>
-   80824:	24180001 	li	t8,1
-Disassembly of section \.text:
-
-00080c00 <foo>:
-   80c00:	27bdffe0 	addiu	sp,sp,-32
-   80c04:	afbf0000 	sw	ra,0\(sp\)
-   80c08:	afbc0004 	sw	gp,4\(sp\)
-   80c0c:	3c1c0000 	lui	gp,0x0
-   80c10:	8f9c0000 	lw	gp,0\(gp\)
-   80c14:	8f9c0000 	lw	gp,0\(gp\)
-   80c18:	8f820014 	lw	v0,20\(gp\)
-   80c1c:	8c430000 	lw	v1,0\(v0\)
-   80c20:	24630001 	addiu	v1,v1,1
-   80c24:	ac430000 	sw	v1,0\(v0\)
-   80c28:	8f99000c 	lw	t9,12\(gp\)
-   80c2c:	0320f809 	jalr	t9
-   80c30:	00000000 	nop
-   80c34:	8f99fff4 	lw	t9,-12\(gp\)
-   80c38:	0320f809 	jalr	t9
-   80c3c:	00000000 	nop
-   80c40:	8f99fff0 	lw	t9,-16\(gp\)
-   80c44:	0320f809 	jalr	t9
-   80c48:	00000000 	nop
-   80c4c:	8fbf0000 	lw	ra,0\(sp\)
-   80c50:	8fbc0004 	lw	gp,4\(sp\)
-   80c54:	03e00008 	jr	ra
-   80c58:	27bd0020 	addiu	sp,sp,32
-
-00080c5c <slocal>:
-   80c5c:	03e00008 	jr	ra
-   80c60:	00000000 	nop
-
-00080c64 <sglobal>:
-   80c64:	03e00008 	jr	ra
-   80c68:	00000000 	nop
-#pass
diff --git a/ld/testsuite/ld-mips-elf/vxworks1-lib.nd b/ld/testsuite/ld-mips-elf/vxworks1-lib.nd
deleted file mode 100644
index adbf7d7..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1-lib.nd
+++ /dev/null
@@ -1,9 +0,0 @@
-#...
-Symbol table '\.dynsym' .*:
-#...
-.*: 00081410 * 0 * OBJECT * GLOBAL * DEFAULT * [0-9]+ _GLOBAL_OFFSET_TABLE_
-#...
-Symbol table '\.symtab' .*:
-#...
-.*: 00081410 * 0 * OBJECT * GLOBAL * DEFAULT * [0-9]+ _GLOBAL_OFFSET_TABLE_
-#pass
diff --git a/ld/testsuite/ld-mips-elf/vxworks1-lib.rd b/ld/testsuite/ld-mips-elf/vxworks1-lib.rd
deleted file mode 100644
index 9a8b35e..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1-lib.rd
+++ /dev/null
@@ -1,18 +0,0 @@
-
-Relocation section '\.rela\.dyn' at offset .* contains .* entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00080c0c  .*05 R_MIPS_HI16       00000000   __GOTT_BASE__ \+ 0
-00080c10  .*06 R_MIPS_LO16       00000000   __GOTT_BASE__ \+ 0
-00080c14  .*01 R_MIPS_16         00000000   __GOTT_INDEX__ \+ 0
-0008141c  .*02 R_MIPS_32         00080c00   \.text \+ 5c
-00081c00  00000002 R_MIPS_32                                    00080c5c
-00081c04  00000002 R_MIPS_32                                    00081c00
-00081c08  .*02 R_MIPS_32         00081c08   dglobal \+ 0
-00081c0c  .*02 R_MIPS_32         00000000   dexternal \+ 0
-00081424  .*02 R_MIPS_32         00081800   x \+ 0
-00000000  00000000 R_MIPS_NONE                                  00000000
-#...
-Relocation section '\.rela\.plt' at offset .* contains 2 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00081400  .*7f R_MIPS_JUMP_SLOT  00000000   sexternal \+ 0
-00081404  .*7f R_MIPS_JUMP_SLOT  00080c64   sglobal \+ 0
diff --git a/ld/testsuite/ld-mips-elf/vxworks1-lib.s b/ld/testsuite/ld-mips-elf/vxworks1-lib.s
deleted file mode 100644
index 827332c..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1-lib.s
+++ /dev/null
@@ -1,52 +0,0 @@
-	.text
-	.globl	foo
-	.type	foo, @function
-foo:
-	addiu	$sp,$sp,-32
-	sw	$31,($sp)
-	sw	$28,4($sp)
-	lui	$28,%hi(__GOTT_BASE__)
-	lw	$28,%lo(__GOTT_BASE__)($28)
-	lw	$28,%half(__GOTT_INDEX__)($28)
-	lw	$2,%got(x)($28)
-	lw	$3,($2)
-	addiu	$3,$3,1
-	sw	$3,($2)
-	lw	$25,%got(slocal)($gp)
-	jalr	$25
-	lw	$25,%call16(sglobal)($gp)
-	jalr	$25
-	lw	$25,%call16(sexternal)($gp)
-	jalr	$25
-	lw	$31,($sp)
-	lw	$28,4($sp)
-	addiu	$sp,$sp,32
-	jr	$31
-	.size	foo, .-foo
-
-	.type	slocal, @function
-slocal:
-	jr	$31
-	.size	slocal, .-slocal
-
-	.globl	sglobal
-	.type	sglobal, @function
-sglobal:
-	jr	$31
-	.size	sglobal, .-sglobal
-
-	.comm	x,4,4
-
-	.data
-	.type	dlocal, @object
-dlocal:
-	.word	slocal
-	.word	dlocal
-	.size	dlocal, .-dlocal
-
-	.globl	dglobal
-	.type	dglobal, @object
-dglobal:
-	.word	dglobal
-	.word	dexternal
-	.size	dglobal, .-dglobal
diff --git a/ld/testsuite/ld-mips-elf/vxworks1-static.d b/ld/testsuite/ld-mips-elf/vxworks1-static.d
deleted file mode 100644
index 88c0baf..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1-static.d
+++ /dev/null
@@ -1,4 +0,0 @@
-#name: VxWorks executable test 1 (static)
-#source: vxworks1.s
-#ld: tmpdir/libvxworks1.so -Tvxworks1.ld
-#error: Dynamic sections created in non-dynamic link
diff --git a/ld/testsuite/ld-mips-elf/vxworks1.dd b/ld/testsuite/ld-mips-elf/vxworks1.dd
deleted file mode 100644
index af9e354..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1.dd
+++ /dev/null
@@ -1,51 +0,0 @@
-
-.*:     file format .*
-
-Disassembly of section \.plt:
-
-00080800 <_PROCEDURE_LINKAGE_TABLE_>:
-   80800:	3c190008 	lui	t9,0x8
-			80800: R_MIPS_HI16	_GLOBAL_OFFSET_TABLE_
-   80804:	27391410 	addiu	t9,t9,5136
-			80804: R_MIPS_LO16	_GLOBAL_OFFSET_TABLE_
-   80808:	8f390008 	lw	t9,8\(t9\)
-   8080c:	00000000 	nop
-   80810:	03200008 	jr	t9
-   80814:	00000000 	nop
-   80818:	1000fff9 	b	80800 <_PROCEDURE_LINKAGE_TABLE_>
-   8081c:	24180000 	li	t8,0
-   80820:	3c190008 	lui	t9,0x8
-			80820: R_MIPS_HI16	_GLOBAL_OFFSET_TABLE_\+0xfffffff0
-   80824:	27391400 	addiu	t9,t9,5120
-			80824: R_MIPS_LO16	_GLOBAL_OFFSET_TABLE_\+0xfffffff0
-   80828:	8f390000 	lw	t9,0\(t9\)
-   8082c:	00000000 	nop
-   80830:	03200008 	jr	t9
-   80834:	00000000 	nop
-   80838:	1000fff1 	b	80800 <_PROCEDURE_LINKAGE_TABLE_>
-   8083c:	24180001 	li	t8,1
-   80840:	3c190008 	lui	t9,0x8
-			80840: R_MIPS_HI16	_GLOBAL_OFFSET_TABLE_\+0xfffffff4
-   80844:	27391404 	addiu	t9,t9,5124
-			80844: R_MIPS_LO16	_GLOBAL_OFFSET_TABLE_\+0xfffffff4
-   80848:	8f390000 	lw	t9,0\(t9\)
-   8084c:	00000000 	nop
-   80850:	03200008 	jr	t9
-   80854:	00000000 	nop
-Disassembly of section \.text:
-
-00080c00 <_start>:
-   80c00:	0c020210 	jal	80840 <_PROCEDURE_LINKAGE_TABLE_\+0x40>
-			80c00: R_MIPS_26	\.plt\+0x40
-   80c04:	00000000 	nop
-   80c08:	0c020306 	jal	80c18 <sexternal>
-			80c08: R_MIPS_26	sexternal
-   80c0c:	00000000 	nop
-   80c10:	08020208 	j	80820 <_PROCEDURE_LINKAGE_TABLE_\+0x20>
-			80c10: R_MIPS_26	\.plt\+0x20
-   80c14:	00000000 	nop
-
-00080c18 <sexternal>:
-   80c18:	03e00008 	jr	ra
-   80c1c:	00000000 	nop
-#pass
diff --git a/ld/testsuite/ld-mips-elf/vxworks1.ld b/ld/testsuite/ld-mips-elf/vxworks1.ld
deleted file mode 100644
index 74e2c26..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1.ld
+++ /dev/null
@@ -1,32 +0,0 @@
-SECTIONS
-{
-  . = 0x80000;
-  .interp : { *(.interp) }
-  .hash : { *(.hash) }
-  .dynsym : { *(.dynsym) }
-  .dynstr : { *(.dynstr) }
-
-  . = ALIGN (0x400);
-  .rela.dyn : { *(.rela.dyn) }
-  .rela.plt : { *(.rela.plt) }
-
-  . = ALIGN (0x400);
-  .plt : { *(.plt) }
-
-  . = ALIGN (0x400);
-  .text : { *(.text) }
-
-  . = ALIGN (0x1000);
-  .dynamic : { *(.dynamic) }
-
-  . = ALIGN (0x400);
-  .got : { *(.got.plt) *(.got) }
-
-  . = ALIGN (0x400);
-  .bss : { *(.bss) *(.dynbss) }
-
-  . = ALIGN (0x400);
-  .data : { *(.data) }
-
-  /DISCARD/ : { *(.reginfo) }
-}
diff --git a/ld/testsuite/ld-mips-elf/vxworks1.rd b/ld/testsuite/ld-mips-elf/vxworks1.rd
deleted file mode 100644
index f4793a2..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1.rd
+++ /dev/null
@@ -1,32 +0,0 @@
-
-Relocation section '\.rela\.dyn' at offset .* contains 1 entries:
- Offset     Info    Type            Sym.Value  Sym. Name \+ Addend
-00081800  .*7e R_MIPS_COPY       00081800   dglobal \+ 0
-
-Relocation section '\.rela\.plt' at offset .* contains 2 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00081400  .*7f R_MIPS_JUMP_SLOT  00080820   sglobal \+ 0
-00081404  .*7f R_MIPS_JUMP_SLOT  00080840   foo \+ 0
-
-Relocation section '\.rela\.text' at offset .* contains 3 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00080c00  .*04 R_MIPS_26         00080800   \.plt \+ 40
-00080c08  .*04 R_MIPS_26         00080c18   sexternal \+ 0
-00080c10  .*04 R_MIPS_26         00080800   \.plt \+ 20
-
-Relocation section '\.rela\.data' at offset .* contains 3 entries:
- Offset     Info    Type            Sym.Value  Sym. Name \+ Addend
-00081c00  .*02 R_MIPS_32         00081c00   .data \+ 0
-00081c04  .*02 R_MIPS_32         00081800   .bss \+ 0
-00081c08  .*02 R_MIPS_32         00081c04   dexternal \+ 0
-
-Relocation section '\.rela\.plt\.unloaded' at offset .* contains 8 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00080800  .*05 R_MIPS_HI16       00081410   _GLOBAL_OFFSET_TABLE_ \+ 0
-00080804  .*06 R_MIPS_LO16       00081410   _GLOBAL_OFFSET_TABLE_ \+ 0
-00081400  .*02 R_MIPS_32         00080800   _PROCEDURE_LINKAGE_TAB.* \+ 18
-00080820  .*05 R_MIPS_HI16       00081410   _GLOBAL_OFFSET_TABLE_ \+ fffffff0
-00080824  .*06 R_MIPS_LO16       00081410   _GLOBAL_OFFSET_TABLE_ \+ fffffff0
-00081404  .*02 R_MIPS_32         00080800   _PROCEDURE_LINKAGE_TAB.* \+ 38
-00080840  .*05 R_MIPS_HI16       00081410   _GLOBAL_OFFSET_TABLE_ \+ fffffff4
-00080844  .*06 R_MIPS_LO16       00081410   _GLOBAL_OFFSET_TABLE_ \+ fffffff4
diff --git a/ld/testsuite/ld-mips-elf/vxworks1.s b/ld/testsuite/ld-mips-elf/vxworks1.s
deleted file mode 100644
index 33a247f..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks1.s
+++ /dev/null
@@ -1,27 +0,0 @@
-	.text
-	.globl	_start
-	.type	_start, @function
-_start:
-	jal	foo
-	jal	sexternal
-	j	sglobal
-	.size	_start, .-_start
-
-	.globl	sexternal
-	.type	sexternal, @function
-sexternal:
-	jr	$31
-	.size	sexternal, .-sexternal
-
-	.data
-	.type	dlocal, @object
-dlocal:
-	.word	dlocal
-	.size	dlocal, .-dlocal
-
-	.globl	dexternal
-	.type	dexternal, @object
-dexternal:
-	.word	dglobal
-	.word	dexternal
-	.size	dexternal, .-dexternal
diff --git a/ld/testsuite/ld-mips-elf/vxworks2-static.sd b/ld/testsuite/ld-mips-elf/vxworks2-static.sd
deleted file mode 100644
index 912755b..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks2-static.sd
+++ /dev/null
@@ -1,9 +0,0 @@
-#...
-Elf file type is EXEC \(Executable file\)
-Entry point 0x80000
-#...
-Program Headers:
-  Type .*
-  LOAD .* 0x00080000 0x00080000 .* R E 0x1000
-
-#...
diff --git a/ld/testsuite/ld-mips-elf/vxworks2.s b/ld/testsuite/ld-mips-elf/vxworks2.s
deleted file mode 100644
index 25f078e..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks2.s
+++ /dev/null
@@ -1,5 +0,0 @@
-	.globl	_start
-	.type	_start, @function
-_start:
-	jr	$31
-	.size	_start, .-_start
diff --git a/ld/testsuite/ld-mips-elf/vxworks2.sd b/ld/testsuite/ld-mips-elf/vxworks2.sd
deleted file mode 100644
index 5ff87d3..0000000
--- a/ld/testsuite/ld-mips-elf/vxworks2.sd
+++ /dev/null
@@ -1,13 +0,0 @@
-#...
-Elf file type is EXEC \(Executable file\)
-Entry point 0x80400
-#...
-Program Headers:
-  Type .*
-  PHDR .*
-#...
-  LOAD .* 0x00080000 0x00080000 .* R E 0x1000
-  LOAD .* 0x00081000 0x00081000 .* RW  0x1000
-  DYNAMIC .*
-
-#...
diff --git a/ld/testsuite/ld-sparc/vxworks1-lib.dd b/ld/testsuite/ld-sparc/vxworks1-lib.dd
deleted file mode 100644
index 49dab7b..0000000
--- a/ld/testsuite/ld-sparc/vxworks1-lib.dd
+++ /dev/null
@@ -1,45 +0,0 @@
-
-.*:     file format .*
-
-Disassembly of section \.plt:
-
-00080800 <_PROCEDURE_LINKAGE_TABLE_>:
-   80800:	c4 05 e0 08 	ld  \[ %l7 \+ 8 \], %g2
-   80804:	81 c0 80 00 	jmp  %g2
-   80808:	01 00 00 00 	nop 
-   8080c:	03 00 00 00 	sethi  %hi\(0\), %g1
-   80810:	82 10 60 0c 	or  %g1, 0xc, %g1	! c <_PROCEDURE_LINKAGE_TABLE_-0x807f4>
-   80814:	c2 05 c0 01 	ld  \[ %l7 \+ %g1 \], %g1
-   80818:	81 c0 40 00 	jmp  %g1
-   8081c:	01 00 00 00 	nop 
-   80820:	03 00 00 00 	sethi  %hi\(0\), %g1
-   80824:	10 bf ff f7 	b  80800 <_PROCEDURE_LINKAGE_TABLE_>
-   80828:	82 10 60 00 	mov  %g1, %g1	! 0 <_PROCEDURE_LINKAGE_TABLE_-0x80800>
-Disassembly of section \.text:
-
-00080c00 <foo>:
-   80c00:	9d e3 bf 98 	save  %sp, -104, %sp
-   80c04:	2f 00 00 00 	sethi  %hi\(0\), %l7
-   80c08:	ee 05 e0 00 	ld  \[ %l7 \], %l7
-   80c0c:	ee 05 e0 00 	ld  \[ %l7 \], %l7
-   80c10:	03 00 00 00 	sethi  %hi\(0\), %g1
-   80c14:	82 10 60 10 	or  %g1, 0x10, %g1	! 10 <_PROCEDURE_LINKAGE_TABLE_-0x807f0>
-   80c18:	c2 05 c0 01 	ld  \[ %l7 \+ %g1 \], %g1
-   80c1c:	c4 00 40 00 	ld  \[ %g1 \], %g2
-   80c20:	84 00 a0 01 	inc  %g2
-   80c24:	40 00 00 08 	call  80c44 <slocal>
-   80c28:	c4 20 40 00 	st  %g2, \[ %g1 \]
-   80c2c:	7f ff fe f8 	call  8080c <_PROCEDURE_LINKAGE_TABLE_\+0xc>
-   80c30:	01 00 00 00 	nop 
-   80c34:	7f ff fe f6 	call  8080c <_PROCEDURE_LINKAGE_TABLE_\+0xc>
-   80c38:	01 00 00 00 	nop 
-   80c3c:	81 c7 e0 08 	ret 
-   80c40:	81 e8 00 00 	restore 
-
-00080c44 <slocal>:
-   80c44:	81 c3 e0 08 	retl 
-   80c48:	01 00 00 00 	nop 
-
-00080c4c <sglobal>:
-   80c4c:	81 c3 e0 08 	retl 
-   80c50:	01 00 00 00 	nop 
diff --git a/ld/testsuite/ld-sparc/vxworks1-lib.nd b/ld/testsuite/ld-sparc/vxworks1-lib.nd
deleted file mode 100644
index cbc1c8c..0000000
--- a/ld/testsuite/ld-sparc/vxworks1-lib.nd
+++ /dev/null
@@ -1,9 +0,0 @@
-#...
-Symbol table '\.dynsym' .*:
-#...
-.*: 00090400 * 0 * OBJECT * GLOBAL * DEFAULT * [0-9]+ _GLOBAL_OFFSET_TABLE_
-#...
-Symbol table '\.symtab' .*:
-#...
-.*: 00090400 * 0 * OBJECT * GLOBAL * DEFAULT * [0-9]+ _GLOBAL_OFFSET_TABLE_
-#pass
diff --git a/ld/testsuite/ld-sparc/vxworks1-lib.rd b/ld/testsuite/ld-sparc/vxworks1-lib.rd
deleted file mode 100644
index 1390e78..0000000
--- a/ld/testsuite/ld-sparc/vxworks1-lib.rd
+++ /dev/null
@@ -1,12 +0,0 @@
-
-Relocation section '\.rela\.plt' at offset .* contains 1 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-0009040c  .*15 R_SPARC_JMP_SLOT  00000000   sexternal \+ 0
-
-Relocation section '\.rela\.dyn' at offset .* contains 5 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00090c00  00000016 R_SPARC_RELATIVE                             00080c44
-00080c04  .*09 R_SPARC_HI22      00000000   __GOTT_BASE__ \+ 0
-00080c08  .*0c R_SPARC_LO10      00000000   __GOTT_BASE__ \+ 0
-00080c0c  .*0c R_SPARC_LO10      00000000   __GOTT_INDEX__ \+ 0
-00090410  .*14 R_SPARC_GLOB_DAT  00090800   x \+ 0
diff --git a/ld/testsuite/ld-sparc/vxworks1-lib.s b/ld/testsuite/ld-sparc/vxworks1-lib.s
deleted file mode 100644
index e1221a2..0000000
--- a/ld/testsuite/ld-sparc/vxworks1-lib.s
+++ /dev/null
@@ -1,44 +0,0 @@
-	.text
-	.globl	foo
-	.type	foo, %function
-foo:
-	save	%sp, -104, %sp
-	sethi	%hi(__GOTT_BASE__), %l7
-	ld	[%l7+%lo(__GOTT_BASE__)],%l7
-	ld	[%l7+%lo(__GOTT_INDEX__)],%l7
-	sethi	%hi(x), %g1
-	or	%g1, %lo(x), %g1
-	ld	[%l7+%g1], %g1
-	ld	[%g1], %g2
-	add	%g2, 1, %g2
-
-	call	slocal, 0
-	st	%g2, [%g1]
-
-	call	sexternal, 0
-	nop
-
-	call	sexternal, 0
-	nop
-
-	ret
-	restore
-	.size	foo, .-foo
-
-	.type	slocal, %function
-slocal:
-	retl
-	nop
-	.size	slocal, .-slocal
-
-	.globl	sglobal
-	.type	sglobal, %function
-sglobal:
-	retl
-	nop
-	.size	sglobal, .-sglobal
-
-	.data
-	.4byte	slocal
-
-	.comm	x,4,4
diff --git a/ld/testsuite/ld-sparc/vxworks1-static.d b/ld/testsuite/ld-sparc/vxworks1-static.d
deleted file mode 100644
index 88c0baf..0000000
--- a/ld/testsuite/ld-sparc/vxworks1-static.d
+++ /dev/null
@@ -1,4 +0,0 @@
-#name: VxWorks executable test 1 (static)
-#source: vxworks1.s
-#ld: tmpdir/libvxworks1.so -Tvxworks1.ld
-#error: Dynamic sections created in non-dynamic link
diff --git a/ld/testsuite/ld-sparc/vxworks1.dd b/ld/testsuite/ld-sparc/vxworks1.dd
deleted file mode 100644
index 16e72fd..0000000
--- a/ld/testsuite/ld-sparc/vxworks1.dd
+++ /dev/null
@@ -1,52 +0,0 @@
-
-.*:     file format .*
-
-Disassembly of section \.plt:
-
-00080800 <_PROCEDURE_LINKAGE_TABLE_>:
-   80800:	05 00 02 41 	sethi  %hi\(0x90400\), %g2
-			80800: R_SPARC_HI22	_GLOBAL_OFFSET_TABLE_\+0x8
-   80804:	84 10 a0 08 	or  %g2, 8, %g2	! 90408 <_GLOBAL_OFFSET_TABLE_\+0x8>
-			80804: R_SPARC_LO10	_GLOBAL_OFFSET_TABLE_\+0x8
-   80808:	c4 00 80 00 	ld  \[ %g2 \], %g2
-   8080c:	81 c0 80 00 	jmp  %g2
-   80810:	01 00 00 00 	nop 
-   80814:	03 00 02 41 	sethi  %hi\(0x90400\), %g1
-			80814: R_SPARC_HI22	_GLOBAL_OFFSET_TABLE_\+0xc
-   80818:	82 10 60 0c 	or  %g1, 0xc, %g1	! 9040c <sglobal@plt>
-			80818: R_SPARC_LO10	_GLOBAL_OFFSET_TABLE_\+0xc
-   8081c:	c2 00 40 00 	ld  \[ %g1 \], %g1
-   80820:	81 c0 40 00 	jmp  %g1
-   80824:	01 00 00 00 	nop 
-   80828:	03 00 00 00 	sethi  %hi\(0\), %g1
-   8082c:	10 bf ff f5 	b  80800 <_PROCEDURE_LINKAGE_TABLE_>
-   80830:	82 10 60 00 	mov  %g1, %g1	! 0 <_PROCEDURE_LINKAGE_TABLE_-0x80800>
-   80834:	03 00 02 41 	sethi  %hi\(0x90400\), %g1
-			80834: R_SPARC_HI22	_GLOBAL_OFFSET_TABLE_\+0x10
-   80838:	82 10 60 10 	or  %g1, 0x10, %g1	! 90410 <foo@plt>
-			80838: R_SPARC_LO10	_GLOBAL_OFFSET_TABLE_\+0x10
-   8083c:	c2 00 40 00 	ld  \[ %g1 \], %g1
-   80840:	81 c0 40 00 	jmp  %g1
-   80844:	01 00 00 00 	nop 
-   80848:	03 00 00 00 	sethi  %hi\(0\), %g1
-   8084c:	10 bf ff ed 	b  80800 <_PROCEDURE_LINKAGE_TABLE_>
-   80850:	82 10 60 01 	or  %g1, 1, %g1	! 1 <_PROCEDURE_LINKAGE_TABLE_-0x807ff>
-Disassembly of section \.text:
-
-00080c00 <_start>:
-   80c00:	9d e3 bf 98 	save  %sp, -104, %sp
-   80c04:	7f ff ff 0c 	call  80834 <_PROCEDURE_LINKAGE_TABLE_\+0x34>
-			80c04: R_SPARC_WDISP30	\.plt\+0x34
-   80c08:	01 00 00 00 	nop 
-   80c0c:	40 00 00 06 	call  80c24 <sexternal>
-			80c0c: R_SPARC_WDISP30	sexternal
-   80c10:	01 00 00 00 	nop 
-   80c14:	7f ff ff 00 	call  80814 <_PROCEDURE_LINKAGE_TABLE_\+0x14>
-			80c14: R_SPARC_WDISP30	\.plt\+0x14
-   80c18:	01 00 00 00 	nop 
-   80c1c:	81 c7 e0 08 	ret 
-   80c20:	81 e8 00 00 	restore 
-
-00080c24 <sexternal>:
-   80c24:	81 c3 e0 08 	retl 
-   80c28:	01 00 00 00 	nop 
diff --git a/ld/testsuite/ld-sparc/vxworks1.ld b/ld/testsuite/ld-sparc/vxworks1.ld
deleted file mode 100644
index 979d773..0000000
--- a/ld/testsuite/ld-sparc/vxworks1.ld
+++ /dev/null
@@ -1,30 +0,0 @@
-SECTIONS
-{
-  . = 0x80000;
-  .interp : { *(.interp) }
-  .hash : { *(.hash) }
-  .dynsym : { *(.dynsym) }
-  .dynstr : { *(.dynstr) }
-
-  . = ALIGN (0x400);
-  .rela.dyn : { *(.rela.dyn) }
-  .rela.plt : { *(.rela.plt) }
-
-  . = ALIGN (0x400);
-  .plt : { *(.plt) }
-
-  . = ALIGN (0x400);
-  .text : { *(.text) }
-
-  . = ALIGN (0x10000);
-  .dynamic : { *(.dynamic) }
-
-  . = ALIGN (0x400);
-  .got : { *(.got.plt) *(.got) }
-
-  . = ALIGN (0x400);
-  .bss : { *(.bss) }
-
-  . = ALIGN (0x400);
-  .data : { *(.data) }
-}
diff --git a/ld/testsuite/ld-sparc/vxworks1.rd b/ld/testsuite/ld-sparc/vxworks1.rd
deleted file mode 100644
index e02146b..0000000
--- a/ld/testsuite/ld-sparc/vxworks1.rd
+++ /dev/null
@@ -1,22 +0,0 @@
-
-Relocation section '\.rela\.plt' at offset .* contains 2 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-0009040c  .*15 R_SPARC_JMP_SLOT  00080814   sglobal \+ 0
-00090410  .*15 R_SPARC_JMP_SLOT  00080834   foo \+ 0
-
-Relocation section '\.rela\.text' at offset .* contains 3 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00080c04  .*07 R_SPARC_WDISP30   00080800   \.plt \+ 34
-00080c0c  .*07 R_SPARC_WDISP30   00080c24   sexternal \+ 0
-00080c14  .*07 R_SPARC_WDISP30   00080800   \.plt \+ 14
-
-Relocation section '\.rela\.plt\.unloaded' at offset .* contains 8 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-00080800  .*09 R_SPARC_HI22      00090400   _GLOBAL_OFFSET_TABLE_ \+ 8
-00080804  .*0c R_SPARC_LO10      00090400   _GLOBAL_OFFSET_TABLE_ \+ 8
-00080814  .*09 R_SPARC_HI22      00090400   _GLOBAL_OFFSET_TABLE_ \+ c
-00080818  .*0c R_SPARC_LO10      00090400   _GLOBAL_OFFSET_TABLE_ \+ c
-0009040c  .*03 R_SPARC_32        00080800   _PROCEDURE_LINKAGE_TAB.* \+ 28
-00080834  .*09 R_SPARC_HI22      00090400   _GLOBAL_OFFSET_TABLE_ \+ 10
-00080838  .*0c R_SPARC_LO10      00090400   _GLOBAL_OFFSET_TABLE_ \+ 10
-00090410  .*03 R_SPARC_32        00080800   _PROCEDURE_LINKAGE_TAB.* \+ 48
diff --git a/ld/testsuite/ld-sparc/vxworks1.s b/ld/testsuite/ld-sparc/vxworks1.s
deleted file mode 100644
index 82106c8..0000000
--- a/ld/testsuite/ld-sparc/vxworks1.s
+++ /dev/null
@@ -1,25 +0,0 @@
-	.text
-	.globl	_start
-	.type	_start, %function
-_start:
-	save	%sp, -104, %sp
-
-	call	foo, 0
-	nop
-
-	call	sexternal, 0
-	nop
-
-	call	sglobal, 0
-	nop
-
-	ret
-	restore
-	.size	_start, .-_start
-
-	.globl	sexternal
-	.type	sexternal, %function
-sexternal:
-	retl
-	nop
-	.size	sexternal, .-sexternal
diff --git a/ld/testsuite/ld-sparc/vxworks2-static.sd b/ld/testsuite/ld-sparc/vxworks2-static.sd
deleted file mode 100644
index 55fc529..0000000
--- a/ld/testsuite/ld-sparc/vxworks2-static.sd
+++ /dev/null
@@ -1,9 +0,0 @@
-#...
-Elf file type is EXEC \(Executable file\)
-Entry point 0x80000
-#...
-Program Headers:
-  Type .*
-  LOAD .* 0x00080000 0x00080000 .* R E 0x10000
-
-#...
diff --git a/ld/testsuite/ld-sparc/vxworks2.s b/ld/testsuite/ld-sparc/vxworks2.s
deleted file mode 100644
index 0a883a9..0000000
--- a/ld/testsuite/ld-sparc/vxworks2.s
+++ /dev/null
@@ -1,6 +0,0 @@
-	.globl	_start
-	.type	_start, %function
-_start:
-	retl
-	nop
-	.end	_start
diff --git a/ld/testsuite/ld-sparc/vxworks2.sd b/ld/testsuite/ld-sparc/vxworks2.sd
deleted file mode 100644
index 0876568..0000000
--- a/ld/testsuite/ld-sparc/vxworks2.sd
+++ /dev/null
@@ -1,13 +0,0 @@
-#...
-Elf file type is EXEC \(Executable file\)
-Entry point 0x80400
-#...
-Program Headers:
-  Type .*
-  PHDR .*
-#...
-  LOAD .* 0x00080000 0x00080000 .* R E 0x10000
-  LOAD .* 0x00090000 0x00090000 .* RW  0x10000
-  DYNAMIC .*
-
-#...
