Built and tested on x86_64 Fedora 20, with --enable-targets=all.
gdb/
2014-10-24 Pedro Alves <palves@redhat.com>
* Makefile.in (ALLDEPFILES): Remove vax-nat.c.
* NEWS (Removed targets): Add VAX BSD and VAX Ultrix.
* config/vax/vax.mh: Delete.
* configure.host: Move vax-*-bsd* and vax-*-ultrix* to the
obsolete configurations section.
* configure.tgt (vax-*-*): Don't mention 4.2BSD nor Ultrix.
* vax-nat.c: Delete file.
gdb/testsuite/
2014-10-24 Pedro Alves <palves@redhat.com>
* gdb.base/corefile.exp: Remove references to ultrix.
* gdb.base/interrupt.exp: Likewise.
* gdb.base/whatis.exp: Likewise.
* gdb.gdb/selftest.exp: Likewise.
* gdb.threads/manythreads.exp: Likewise.
* gdb.threads/print-threads.exp: Likewise.
* gdb.threads/pthreads.exp:: Likewise.
* gdb.threads/schedlock.exp: Likewise.
+2014-10-24 Pedro Alves <palves@redhat.com>
+
+ * Makefile.in (ALLDEPFILES): Remove vax-nat.c.
+ * NEWS (Removed targets): Add VAX BSD and VAX Ultrix.
+ * config/vax/vax.mh: Delete.
+ * configure.host: Move vax-*-bsd* and vax-*-ultrix* to the
+ obsolete configurations section.
+ * configure.tgt (vax-*-*): Don't mention 4.2BSD nor Ultrix.
+ * vax-nat.c: Delete file.
+
2014-10-24 Pedro Alves <palves@redhat.com>
* NEWS (Removed targets): Add OS/arch column.
spu-linux-nat.c spu-tdep.c spu-multiarch.c solib-spu.c \
tilegx-linux-nat.c tilegx-tdep.c tilegx-linux-tdep.c \
v850-tdep.c \
- vax-nat.c vax-tdep.c vaxbsd-nat.c vaxnbsd-tdep.c \
+ vax-tdep.c vaxbsd-nat.c vaxnbsd-tdep.c \
windows-nat.c windows-tdep.c \
xcoffread.c \
xstormy16-tdep.c \
Alpha running OSF/1 (or Tru64) alpha*-*-osf*
SGI Irix-5.x mips-*-irix5*
SGI Irix-6.x mips-*-irix6*
+VAX running (4.2 - 4.3 Reno) BSD vax-*-bsd*
+VAX running Ultrix vax-*-ultrix*
*** Changes in GDB 7.8
+++ /dev/null
-# Host: VAX running 4.2BSD or Ultrix
-NATDEPFILES= vax-nat.o fork-child.o inf-ptrace.o
m68*-*-netbsd* | \
sparc-*-netbsd* | \
rs6000-*-lynxos* | \
+ vax-*-bsd* | \
vax-*-netbsd* | \
+ vax-*-ultrix* | \
null)
echo "*** Configuration $host is obsolete." >&2
echo "*** Support has been REMOVED." >&2
tilegx-*-linux*) gdb_host=linux ;;
-vax-*-bsd*) gdb_host=vax ;;
vax-*-netbsdelf* | vax-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
vax-*-openbsd*) gdb_host=obsd ;;
-vax-*-ultrix*) gdb_host=vax ;;
x86_64-*-linux*) gdb_host=linux64 ;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
gdb_target_obs="vax-tdep.o vaxobsd-tdep.o"
;;
vax-*-*)
- # Target: VAX running 4.2BSD or Ultrix
+ # Target: VAX
gdb_target_obs="vax-tdep.o"
;;
+2014-10-24 Pedro Alves <palves@redhat.com>
+
+ * gdb.base/corefile.exp: Remove references to ultrix.
+ * gdb.base/interrupt.exp: Likewise.
+ * gdb.base/whatis.exp: Likewise.
+ * gdb.gdb/selftest.exp: Likewise.
+ * gdb.threads/manythreads.exp: Likewise.
+ * gdb.threads/print-threads.exp: Likewise.
+ * gdb.threads/pthreads.exp:: Likewise.
+ * gdb.threads/schedlock.exp: Likewise.
+
2014-10-24 Siva Chandra Reddy <sivachandra@google.com>
* gdb.cp/non-trivial-retval.cc: Add a test case.
# Test ability to read mmap'd data
gdb_test "x/8bd buf1" ".*:.*0.*1.*2.*3.*4.*5.*6.*7" "accessing original mmap data in core file"
-setup_xfail "*-*-sunos*" "*-*-ultrix*" "*-*-aix*"
+setup_xfail "*-*-sunos*" "*-*-aix*"
set test "accessing mmapped data in core file"
gdb_test_multiple "x/8bd buf2" "$test" {
-re ".*:.*0.*1.*2.*3.*4.*5.*6.*7.*$gdb_prompt $" {
# other machines as well.
setup_xfail "sparc*-*-solaris2*"
- setup_xfail "mips-*-ultrix*"
setup_xfail "i*86-*-solaris2*"
setup_xfail "*-*-sysv4*"
setup_xfail "vax-*-*"
# Define a procedure to set up an xfail for all targets that put out a
# `long' type as an `int' type.
-# Sun/Ultrix cc have this problem.
+# Sun cc has this problem.
# It was said that COFF targets can not distinguish int from long either.
proc setup_xfail_on_long_vs_int {} {
global gcc_compiled
if {!$gcc_compiled} {
- setup_xfail "*-sun-sunos4*" "*-*-ultrix*" "i*86-sequent-bsd*"
+ setup_xfail "*-sun-sunos4*" "i*86-sequent-bsd*"
}
}
# We'll need this when we send a ^C to GDB. Need to do it before we
# run the program and gdb starts saving and restoring tty states.
- # On Ultrix, we don't need it and it is really slow (because shell_escape
- # doesn't use vfork).
- if ![istarget "*-*-ultrix*"] then {
- gdb_test "shell stty intr '^C'" ".*" \
- "set interrupt character in test_with_self"
- }
+ gdb_test "shell stty intr '^C'" ".*" \
+ "set interrupt character in test_with_self"
# FIXME: If we put this after the run to main, the first list
# command doesn't print the same line as the current line where
# We'll need this when we send_gdb a ^C to GDB. Need to do it before we
# run the program and gdb starts saving and restoring tty states.
-# On Ultrix, we don't need it and it is really slow (because shell_escape
-# doesn't use vfork).
-if ![istarget "*-*-ultrix*"] then {
- gdb_test "shell stty intr '^C'" ".*"
-}
+gdb_test "shell stty intr '^C'" ".*"
set message "first continue"
gdb_test_multiple "continue" "first continue" {
# We'll need this when we send_gdb a ^C to GDB. Need to do it before we
# run the program and gdb starts saving and restoring tty states.
-# On Ultrix, we don't need it and it is really slow (because shell_escape
-# doesn't use vfork).
-if ![istarget "*-*-ultrix*"] then {
- gdb_test "shell stty intr '^C'" ".*"
-}
+gdb_test "shell stty intr '^C'" ".*"
proc test_all_threads { name kill } {
global gdb_prompt inferior_exited_re
# We'll need this when we send_gdb a ^C to GDB. Need to do it before we
# run the program and gdb starts saving and restoring tty states.
-# On Ultrix, we don't need it and it is really slow (because shell_escape
-# doesn't use vfork).
-if ![istarget "*-*-ultrix*"] then {
- gdb_test "shell stty intr '^C'" ".*"
-}
+gdb_test "shell stty intr '^C'" ".*"
proc all_threads_running {} {
global gdb_prompt
# We'll need this when we send_gdb a ^C to GDB. Need to do it before we
# run the program and gdb starts saving and restoring tty states.
-# On Ultrix, we don't need it and it is really slow (because shell_escape
-# doesn't use vfork).
-if ![istarget "*-*-ultrix*"] then {
- gdb_test "shell stty intr '^C'" ".*"
-}
+gdb_test "shell stty intr '^C'" ".*"
gdb_load ${binfile}
+++ /dev/null
-/* Native-dependent code for VAX UNIXen (including older BSD's).
-
- Copyright (C) 2004-2014 Free Software Foundation, Inc.
-
- This file is part of GDB.
-
- 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 3 of the License, 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, see <http://www.gnu.org/licenses/>. */
-
-#include "defs.h"
-#include "inferior.h"
-
-#include <sys/types.h>
-#include <sys/dir.h>
-#include <sys/user.h>
-
-#ifdef HAVE_SYS_PTRACE_H
-#include <sys/ptrace.h>
-#endif
-
-#ifndef PT_READ_U
-#define PT_READ_U 3
-#endif
-
-#ifdef SYS_REG_H
-/* UNIX 32V and derivatives (including 3BSD). */
-#include <sys/reg.h>
-#else
-/* 4.2BSD and derivatives. */
-#include <machine/reg.h>
-#endif
-
-#include "vax-tdep.h"
-#include "inf-ptrace.h"
-
-/* Address of the user structure. This is the value for 32V; 3BSD
- uses a different value, but hey, who's still using those systems? */
-static CORE_ADDR vax_kernel_u_addr = 0x80020000;
-
-/* Location of the user's stored registers; usage is `u.u_ar0[XX]'.
- For 4.2BSD and ULTRIX these are negative! See <machine/reg.h>. */
-static int vax_register_index[] =
-{
- R0, R1, R2, R3, R4, R5,
- R6, R7, R8, R9, R10, R11,
- AP, FP, SP, PC, PS
-};
-
-static CORE_ADDR
-vax_register_u_addr (CORE_ADDR u_ar0, int regnum)
-{
- gdb_assert (regnum >= 0 && regnum < ARRAY_SIZE (vax_register_index));
-
- /* Type is `int *u_ar0'. See <sys/user.h>. */
- return u_ar0 + vax_register_index[regnum - VAX_R0_REGNUM] * 4;
-}
-
-static CORE_ADDR
-vax_register_u_offset (struct gdbarch *gdbarch, int regnum, int store_p)
-{
- size_t u_ar0_offset = offsetof (struct user, u_ar0);
- CORE_ADDR u_ar0;
- int pid;
-
- errno = 0;
- pid = ptid_get_pid (inferior_ptid);
- u_ar0 = ptrace (PT_READ_U, pid, u_ar0_offset, 0);
- if (errno)
- perror_with_name (_("Unable to determine location of registers"));
-
- return vax_register_u_addr (u_ar0, regnum) - vax_kernel_u_addr;
-}
-\f
-
-#include <nlist.h>
-
-#ifndef _PATH_UNIX
-#define _PATH_UNIX "/vmunix"
-#endif
-
-/* Provide a prototype to silence -Wmissing-prototypes. */
-void _initialize_vax_nat (void);
-
-void
-_initialize_vax_nat (void)
-{
- struct nlist names[2];
-
- names[0].n_name = "_u";
- names[1].n_name = NULL;
- if (nlist (_PATH_UNIX, names) == 0)
- vax_kernel_u_addr = names[0].n_value;
-
- add_target (inf_ptrace_trad_target (vax_register_u_offset));
-}