gdb: Remove arm-symbianelf support
authorAlan Modra <amodra@gmail.com>
Wed, 10 Feb 2021 02:08:47 +0000 (12:38 +1030)
committerAlan Modra <amodra@gmail.com>
Wed, 10 Feb 2021 20:53:42 +0000 (07:23 +1030)
Since it has gone from bfd/.

* arm-symbian-tdep.c: Delete.
* NEWS: Mention arm-symbian removal.
* Makefile.in: Remove arm-symbian-tdep entries.
* configure.tgt: Remove arm*-*-symbianelf*.
* doc/gdb.texinfo: Remove mention of SymbianOS.
* osabi.c (gdb_osabi_names): Remove "Symbian".
* osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
* testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
* testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
handling.
* testsuite/gdb.base/dup-sect.exp: Likewise.
* testsuite/gdb.base/long_long.exp: Likewise.
* testsuite/gdb.base/solib-weak.exp: Likewise.
* testsuite/gdb.guile/scm-section-script.exp: Likewise.
* testsuite/gdb.python/py-section-script.exp: Likewise.
* testsuite/lib/dwarf.exp: Likewise.
* testsuite/lib/gdb.exp: Likewise.

17 files changed:
gdb/ChangeLog
gdb/Makefile.in
gdb/NEWS
gdb/arm-symbian-tdep.c [deleted file]
gdb/configure.tgt
gdb/doc/gdb.texinfo
gdb/osabi.c
gdb/osabi.h
gdb/testsuite/gdb.ada/catch_ex_std.exp
gdb/testsuite/gdb.base/dup-sect.exp
gdb/testsuite/gdb.base/ending-run.exp
gdb/testsuite/gdb.base/long_long.exp
gdb/testsuite/gdb.base/solib-weak.exp
gdb/testsuite/gdb.guile/scm-section-script.exp
gdb/testsuite/gdb.python/py-section-script.exp
gdb/testsuite/lib/dwarf.exp
gdb/testsuite/lib/gdb.exp

index 0f600fedc725bd5e595dc6fb0ca2d762d0a9585d..408d38865b0950b513cb991d175537b6e5852c73 100644 (file)
@@ -1,3 +1,23 @@
+2021-02-11  Alan Modra  <amodra@gmail.com>
+
+       * arm-symbian-tdep.c: Delete.
+       * NEWS: Mention arm-symbian removal.
+       * Makefile.in: Remove arm-symbian-tdep entries.
+       * configure.tgt: Remove arm*-*-symbianelf*.
+       * doc/gdb.texinfo: Remove mention of SymbianOS.
+       * osabi.c (gdb_osabi_names): Remove "Symbian".
+       * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
+       * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
+       * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
+       handling.
+       * testsuite/gdb.base/dup-sect.exp: Likewise.
+       * testsuite/gdb.base/long_long.exp: Likewise.
+       * testsuite/gdb.base/solib-weak.exp: Likewise.
+       * testsuite/gdb.guile/scm-section-script.exp: Likewise.
+       * testsuite/gdb.python/py-section-script.exp: Likewise.
+       * testsuite/lib/dwarf.exp: Likewise.
+       * testsuite/lib/gdb.exp: Likewise.
+
 2021-02-10  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
index 36ef45d455966a0a8c553026b348e7ef859c520b..ae89b85eb568c36fbd8a9829e322959c3926c191 100644 (file)
@@ -730,7 +730,6 @@ ALL_TARGET_OBS = \
        arm-netbsd-tdep.o \
        arm-obsd-tdep.o \
        arm-pikeos-tdep.o \
-       arm-symbian-tdep.o \
        arm-tdep.o \
        arm-wince-tdep.o \
        avr-tdep.o \
@@ -2168,7 +2167,6 @@ ALLDEPFILES = \
        arm-netbsd-nat.c \
        arm-netbsd-tdep.c \
        arm-obsd-tdep.c \
-       arm-symbian-tdep.c \
        arm-tdep.c \
        avr-tdep.c \
        bfin-linux-tdep.c \
index d4c76570331fe0181cb8cac291abb3f126c9d562..272f8315b6509338d290c27ed699e74eea0248d6 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -86,6 +86,10 @@ inferior [ID]
   behavior of the command is unchanged and have the inferior ID become
   the current inferior.
 
+* Removed targets and native configurations
+
+ARM Symbian                    arm*-*-symbianelf*
+
 *** Changes in GDB 10
 
 * There are new feature names for ARC targets: "org.gnu.gdb.arc.core"
diff --git a/gdb/arm-symbian-tdep.c b/gdb/arm-symbian-tdep.c
deleted file mode 100644 (file)
index 2bd0db9..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/* ARM Symbian OS target support.
-
-   Copyright (C) 2008-2021 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 "frame.h"
-#include "objfiles.h"
-#include "osabi.h"
-#include "solib.h"
-#include "solib-target.h"
-#include "target.h"
-#include "elf-bfd.h"
-
-/* If PC is in a DLL import stub, return the address of the `real'
-   function belonging to the stub.  */
-
-static CORE_ADDR
-arm_symbian_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
-{
-  struct gdbarch *gdbarch;
-  enum bfd_endian byte_order;
-  ULONGEST insn;
-  CORE_ADDR dest;
-  gdb_byte buf[4];
-
-  if (!in_plt_section (pc))
-    return 0;
-
-  if (target_read_memory (pc, buf, 4) != 0)
-    return 0;
-
-  gdbarch = get_frame_arch (frame);
-  byte_order = gdbarch_byte_order (gdbarch);
-
-  /* ldr pc, [pc, #-4].  */
-  insn = extract_unsigned_integer (buf, 4, byte_order);
-  if (insn != 0xe51ff004)
-    return 0;
-
-  if (target_read_memory (pc + 4, buf, 4) != 0)
-    return 0;
-
-  dest = extract_unsigned_integer (buf, 4, byte_order);
-  return gdbarch_addr_bits_remove (gdbarch, dest);
-}
-
-static void
-arm_symbian_init_abi (struct gdbarch_info info,
-                     struct gdbarch *gdbarch)
-{
-  /* Shared library handling.  */
-  set_gdbarch_skip_trampoline_code (gdbarch, arm_symbian_skip_trampoline_code);
-
-  /* On this target, the toolchain outputs ELF files, with `sym' for
-     filename extension (e.g., `FOO.sym'); these are post-linker
-     processed into PE-ish DLLs (e.g., `FOO.dll'), and it's these that
-     are actually copied to and run on the target.  Naturally, when
-     listing shared libraries, Symbian stubs report the DLL filenames.
-     Setting this makes it so that GDB automatically looks for the
-     corresponding ELF files on the host's filesystem.  */
-  set_gdbarch_solib_symbols_extension (gdbarch, "sym");
-
-  /* Canonical paths on this target look like `c:\sys\bin\bar.dll',
-     for example.  */
-  set_gdbarch_has_dos_based_file_system (gdbarch, 1);
-
-  set_solib_ops (gdbarch, &solib_target_so_ops);
-}
-
-/* Recognize Symbian object files.  */
-
-static enum gdb_osabi
-arm_symbian_osabi_sniffer (bfd *abfd)
-{
-  Elf_Internal_Phdr *phdrs;
-  long phdrs_size;
-  int num_phdrs, i;
-
-  /* Symbian executables are always shared objects (ET_DYN).  */
-  if (elf_elfheader (abfd)->e_type == ET_EXEC)
-    return GDB_OSABI_UNKNOWN;
-
-  if (elf_elfheader (abfd)->e_ident[EI_OSABI] != ELFOSABI_NONE)
-    return GDB_OSABI_UNKNOWN;
-
-  /* Check for the ELF headers not being part of any PT_LOAD segment.
-     Symbian is the only GDB supported (or GNU binutils supported) ARM
-     target which uses a postlinker to flatten ELF files, dropping the
-     ELF dynamic info in the process.  */
-  phdrs_size = bfd_get_elf_phdr_upper_bound (abfd);
-  if (phdrs_size == -1)
-    return GDB_OSABI_UNKNOWN;
-
-  phdrs = (Elf_Internal_Phdr *) alloca (phdrs_size);
-  num_phdrs = bfd_get_elf_phdrs (abfd, phdrs);
-  if (num_phdrs == -1)
-    return GDB_OSABI_UNKNOWN;
-
-  for (i = 0; i < num_phdrs; i++)
-    if (phdrs[i].p_type == PT_LOAD && phdrs[i].p_offset == 0)
-      return GDB_OSABI_UNKNOWN;
-
-  /* Looks like a Symbian binary.  */
-  return GDB_OSABI_SYMBIAN;
-}
-
-void _initialize_arm_symbian_tdep ();
-void
-_initialize_arm_symbian_tdep ()
-{
-  gdbarch_register_osabi_sniffer (bfd_arch_arm,
-                                 bfd_target_elf_flavour,
-                                 arm_symbian_osabi_sniffer);
-
-  gdbarch_register_osabi (bfd_arch_arm, 0, GDB_OSABI_SYMBIAN,
-                         arm_symbian_init_abi);
-}
index 5440780065f0284a777e401aeb93cb6b1250cc1b..842e683f5f5cac1ee3176cc9400b07ad9234bfa9 100644 (file)
@@ -184,10 +184,6 @@ arm*-*-openbsd*)
        # Target: OpenBSD/arm
        gdb_target_obs="arm-bsd-tdep.o arm-obsd-tdep.o"
        ;;
-arm*-*-symbianelf*)
-       # Target: SymbianOS/arm
-       gdb_target_obs="arm-symbian-tdep.o"
-       ;;
 arm*-*-*)
        # Target: ARM embedded system
        gdb_target_obs="arm-pikeos-tdep.o"
@@ -787,8 +783,6 @@ m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
 *-*-mingw*)    gdb_osabi=GDB_OSABI_WINDOWS ;;
 *-*-cygwin*)   gdb_osabi=GDB_OSABI_CYGWIN ;;
 *-*-dicos*)    gdb_osabi=GDB_OSABI_DICOS ;;
-*-*-symbianelf*)
-               gdb_osabi=GDB_OSABI_SYMBIAN ;;
 powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
                 gdb_osabi=GDB_OSABI_AIX ;;
 esac
index 174fd6d0ffc0f707e9e38aee5e65cb4c2732d240..3bc9e264792ae7f6c4d0e5bf88ef1481ec371f26 100644 (file)
@@ -20850,8 +20850,8 @@ to specify a local system root using a directory that happens to be
 named @file{target:} or @file{remote:}, you need to use some
 equivalent variant of the name like @file{./target:}.
 
-For targets with an MS-DOS based filesystem, such as MS-Windows and
-SymbianOS, @value{GDBN} tries prefixing a few variants of the target
+For targets with an MS-DOS based filesystem, such as MS-Windows,
+@value{GDBN} tries prefixing a few variants of the target
 absolute file name with @var{path}.  But first, on Unix hosts,
 @value{GDBN} converts all backslash directory separators into forward
 slashes, because the backslash is not a directory separator on Unix:
index 9d546a95954ca59a35aecbf73767e087ed1b3d5f..b1603c09c8553bf49530683ed0f57909f10690eb 100644 (file)
@@ -77,7 +77,6 @@ static const struct osabi_names gdb_osabi_names[] =
   { "AIX", NULL },
   { "DICOS", NULL },
   { "Darwin", NULL },
-  { "Symbian", NULL },
   { "OpenVMS", NULL },
   { "LynxOS178", NULL },
   { "Newlib", NULL },
index 9057429c4da15d470c74345cb22309797199d01e..1ecbed4611de8aa4c86eeed115d6f034fdf483eb 100644 (file)
@@ -41,7 +41,6 @@ enum gdb_osabi
   GDB_OSABI_AIX,
   GDB_OSABI_DICOS,
   GDB_OSABI_DARWIN,
-  GDB_OSABI_SYMBIAN,
   GDB_OSABI_OPENVMS,
   GDB_OSABI_LYNXOS178,
   GDB_OSABI_NEWLIB,
index 37d7434035cddeeb3cc788e5376c05e6e211cfe1..cd2dd5a06e015bcf2c5d86dc7c5288b3b8cee70f 100644 (file)
@@ -36,8 +36,7 @@ if {[gdb_compile_shlib $srcfile2 $sofile {ada debug}] != ""} {
 # Set linkarg such that the executable can find the shared library.
 if {[istarget "*-*-mingw*"]
     || [istarget *-*-cygwin*]
-    || [istarget *-*-pe*]
-    || [istarget arm*-*-symbianelf*]} {
+    || [istarget *-*-pe*]} {
     # Do not need anything.
     set linkarg ""
 } elseif {[istarget *-*-freebsd*] || [istarget *-*-openbsd*]} {
index a2362462cf21d585019bc6a7b45a8fe51699d923..5a682dfdc233a0869d9bc575dbd818be927ec382 100644 (file)
@@ -28,7 +28,6 @@ if {![istarget *-*-linux*]
     && ![istarget *-*-gnu*]
     && ![istarget *-*-elf*]
     && ![istarget arm*-*-eabi*]
-    && ![istarget arm*-*-symbianelf*]
     && ![istarget powerpc-*-eabi*]} {
     return 0
 }
index 23b13200f70dd396f7eb82e30577ea40ccc8235c..31befa6b35e4d5cd4a3d84ace43bcfc0444d8041 100644 (file)
@@ -189,10 +189,6 @@ gdb_test_multiple "next" "step out of main" {
        # another `next' is necessary.
        gdb_test "next" ".*in start_l ().*" "step out of main"
     }
-    -re "E32Main (.*).*$gdb_prompt $" {
-       # On SymbianOS there's a different function which calls main.
-       pass "step out of main"
-    }
     -re ".*in.*currently asm.*$gdb_prompt $" { 
         pass "step out of main"
     }
index aff8e20446b9bf8c09bf14d73e91f4cd8bdde743..f7fdceb05e0b20a7b79f3c4f073bc771eb5cfbc1 100644 (file)
@@ -156,8 +156,7 @@ if { $sizeof_double == 8 || $sizeof_long_double == 8 } {
     if { ([istarget "arm*-*-*"]) \
         && !([istarget "*-*-*eabi*"] || \
              [istarget "*-*-mingw32ce*"] || \
-             [istarget "*-*-openbsd*"] || \
-             [istarget "*-*-symbianelf"]) } then {
+             [istarget "*-*-openbsd*"]) } then {
        # assume the long long represents a floating point double in ARM format
        gdb_test "p/f val.oct" "2.1386676354387559e\\+265"
     } else {
index 0457acaa1d3913de9f73b153dd38993137e14070..bc4d2e57efdde2fbd84adc2f502940d6bdcf8d1d 100644 (file)
@@ -22,8 +22,7 @@ if {[skip_shlib_tests]} {
 }
 
 # These targets have shared libraries, but weak symbols are not meaningful.
-if {([istarget arm*-*-symbianelf*]
-     || [istarget *-*-mingw*]
+if {([istarget *-*-mingw*]
      || [istarget *-*-cygwin*]
      || [istarget *-*-pe*])} {
     return 0
index 5e314996d46651b17f2997c1682488df511e993d..30a6c1cf40abebd57d1b5b430d75858df883f6cb 100644 (file)
@@ -23,7 +23,6 @@ if {![istarget *-*-linux*]
     && ![istarget *-*-elf*]
     && ![istarget *-*-openbsd*]
     && ![istarget arm*-*-eabi*]
-    && ![istarget arm*-*-symbianelf*]
     && ![istarget powerpc-*-eabi*]} {
     verbose "Skipping scm-section-script.exp because of lack of support."
     return
index c57b3fbed4f6746c30ceabffebcd1ecf8563cd36..4144a085d584941e3eed1eda508dc0c2a51160fb 100644 (file)
@@ -23,7 +23,6 @@ if {![istarget *-*-linux*]
     && ![istarget *-*-elf*]
     && ![istarget *-*-openbsd*]
     && ![istarget arm*-*-eabi*]
-    && ![istarget arm*-*-symbianelf*]
     && ![istarget powerpc-*-eabi*]} {
     verbose "Skipping py-section-script.exp because of lack of support."
     return
index 10fd88f6e0fac919c31d0d9d23050320a41e6903..c1c07be0b98435b4a869214174916df7e42ed377 100644 (file)
@@ -21,7 +21,6 @@ proc dwarf2_support {} {
        || [istarget *-*-elf*]
        || [istarget *-*-openbsd*]
        || [istarget arm*-*-eabi*]
-       || [istarget arm*-*-symbianelf*]
        || [istarget powerpc-*-eabi*]} {
        return 1
     }
index 016c678237cbbfd483cae20a110835fd4eff4707..60f84d22aadea2756d5d8f5eff662cc828d4b760 100644 (file)
@@ -2133,12 +2133,6 @@ proc skip_cplus_tests {} {
 # Return a 1 for configurations for which don't have both C++ and the STL.
 
 proc skip_stl_tests {} {
-    # Symbian supports the C++ language, but the STL is missing
-    # (both headers and libraries).
-    if { [istarget "arm*-*-symbianelf*"] } {
-       return 1
-    }
-
     return [skip_cplus_tests]
 }
 
@@ -2236,7 +2230,6 @@ proc skip_shlib_tests {} {
     if {([istarget *-*-linux*]
         || [istarget *-*-*bsd*]
         || [istarget *-*-solaris2*]
-        || [istarget arm*-*-symbianelf*]
         || [istarget *-*-mingw*]
         || [istarget *-*-cygwin*]
         || [istarget *-*-pe*])} {
@@ -4153,10 +4146,6 @@ proc gdb_compile {source dest type options} {
            # Do not need anything.
        } elseif { [istarget *-*-freebsd*] || [istarget *-*-openbsd*] } {
            lappend new_options "ldflags=-Wl,-rpath,${outdir}"
-       } elseif { [istarget arm*-*-symbianelf*] } {
-           if { $shlib_load } {
-               lappend new_options "libs=-ldl"
-           }
        } else {
            if { $shlib_load } {
                lappend new_options "libs=-ldl"
@@ -6199,7 +6188,6 @@ gdb_caching_proc gdb_has_argv0 {
          || [istarget *-*-cygwin*] || [istarget *-*-mingw32*]
          || [istarget *-*-*djgpp*] || [istarget *-*-go32*]
          || [istarget *-wince-pe] || [istarget *-*-mingw32ce*]
-         || [istarget *-*-symbianelf*]
          || [istarget *-*-osf*]
          || [istarget *-*-dicos*]
          || [istarget *-*-nto*]