gdb/
authorJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 8 Mar 2012 19:08:11 +0000 (19:08 +0000)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 8 Mar 2012 19:08:11 +0000 (19:08 +0000)
* libunwind-frame.c: Rename to ...
* ia64-libunwind-tdep.c: ... here.
* libunwind-frame.h: Rename to ...
* ia64-libunwind-tdep.h: ... here.
* Makefile.in (HFILES_NO_SRCDIR): Rename libunwind-frame.h to
ia64-libunwind-tdep.h.
(ALLDEPFILES): Rename libunwind-frame.c to ia64-libunwind-tdep.c.
* README (--with-libunwind): Rename to ...
(--with-libunwind-ia64): ... here, note it is ia64 specific now.
* config.in: Regenerate.
* configure: Regenerate.
* configure.ac: New option --with-libunwind-ia64, make the
AS_HELP_STRING ia64 specific.  Deprecate option --with-libunwind.
Remove AC_DEFINE for HAVE_LIBUNWIND.
* ia64-libunwind-tdep.c: Make the file top comment ia64 specific.
Rename libunwind-frame.h #include to ia64-libunwind-tdep.h.
Rename libunwind-frame in the general comment.
* ia64-libunwind-tdep.h: Make the file top comment ia64 specific.
Rename symbol LIBUNWIND_FRAME_H to IA64_TDEP_LIBUNWIND_FRAME_H.
Move forward declarations inside #ifndef.  Rename libunwind-frame in
the general comment.
* ia64-tdep.c: Rename libunwind-frame.h #include to
ia64-libunwind-tdep.h.
(ia64_gdb2uw_regnum, ia64_uw2gdb_regnum, ia64_is_fpreg)
(ia64_libunwind_descr): Rename libunwind-frame to
ia64-libunwind-tdep in these function comments.
* ia64-tdep.h: Rename libunwind-frame.h #include to
ia64-libunwind-tdep.h.
* ia64-vms-tdep.c (ia64_vms_libunwind_descr): Rename libunwind-frame to
ia64-libunwind-tdep in that data comment.

gdb/ChangeLog
gdb/Makefile.in
gdb/README
gdb/config.in
gdb/configure
gdb/configure.ac
gdb/ia64-libunwind-tdep.c [moved from gdb/libunwind-frame.c with 98% similarity]
gdb/ia64-libunwind-tdep.h [moved from gdb/libunwind-frame.h with 86% similarity]
gdb/ia64-tdep.c
gdb/ia64-tdep.h
gdb/ia64-vms-tdep.c

index 89d8109..2851d51 100644 (file)
@@ -1,5 +1,38 @@
 2012-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
+       * libunwind-frame.c: Rename to ...
+       * ia64-libunwind-tdep.c: ... here.
+       * libunwind-frame.h: Rename to ...
+       * ia64-libunwind-tdep.h: ... here.
+       * Makefile.in (HFILES_NO_SRCDIR): Rename libunwind-frame.h to
+       ia64-libunwind-tdep.h.
+       (ALLDEPFILES): Rename libunwind-frame.c to ia64-libunwind-tdep.c.
+       * README (--with-libunwind): Rename to ...
+       (--with-libunwind-ia64): ... here, note it is ia64 specific now.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: New option --with-libunwind-ia64, make the
+       AS_HELP_STRING ia64 specific.  Deprecate option --with-libunwind.
+       Remove AC_DEFINE for HAVE_LIBUNWIND.
+       * ia64-libunwind-tdep.c: Make the file top comment ia64 specific.
+       Rename libunwind-frame.h #include to ia64-libunwind-tdep.h.
+       Rename libunwind-frame in the general comment.
+       * ia64-libunwind-tdep.h: Make the file top comment ia64 specific.
+       Rename symbol LIBUNWIND_FRAME_H to IA64_TDEP_LIBUNWIND_FRAME_H.
+       Move forward declarations inside #ifndef.  Rename libunwind-frame in
+       the general comment.
+       * ia64-tdep.c: Rename libunwind-frame.h #include to
+       ia64-libunwind-tdep.h.
+       (ia64_gdb2uw_regnum, ia64_uw2gdb_regnum, ia64_is_fpreg)
+       (ia64_libunwind_descr): Rename libunwind-frame to
+       ia64-libunwind-tdep in these function comments.
+       * ia64-tdep.h: Rename libunwind-frame.h #include to
+       ia64-libunwind-tdep.h.
+       * ia64-vms-tdep.c (ia64_vms_libunwind_descr): Rename libunwind-frame to
+       ia64-libunwind-tdep in that data comment.
+
+2012-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
        * libunwind-frame.h (struct frame_unwind): New declaration.
 
 2012-03-08  Joel Brobecker  <brobecker@adacore.com>
index 1846c74..84eda7d 100644 (file)
@@ -780,7 +780,7 @@ ser-unix.h inf-ptrace.h terminal.h ui-out.h frame-base.h \
 f-lang.h dwarf2loc.h value.h sparc-tdep.h defs.h target-descriptions.h \
 objfiles.h vec.h disasm.h mips-tdep.h ser-base.h \
 gdb_curses.h bfd-target.h memattr.h inferior.h ax.h dummy-frame.h \
-inflow.h fbsd-nat.h libunwind-frame.h completer.h inf-ttrace.h \
+inflow.h fbsd-nat.h ia64-libunwind-tdep.h completer.h inf-ttrace.h \
 solib-target.h gdb_vfork.h alpha-tdep.h dwarf2expr.h \
 m2-lang.h stack.h charset.h addrmap.h command.h solist.h source.h \
 target.h prologue-value.h cp-abi.h tui/tui-hooks.h tui/tui.h \
@@ -1463,7 +1463,7 @@ ALLDEPFILES = \
        ia64-linux-nat.c ia64-linux-tdep.c ia64-tdep.c ia64-vms-tdep.c \
        inf-ptrace.c inf-ttrace.c \
        irix5-nat.c \
-       libunwind-frame.c \
+       ia64-libunwind-tdep.c \
        linux-fork.c \
        linux-tdep.c \
        linux-record.c \
index 999f992..33516ac 100644 (file)
@@ -446,10 +446,10 @@ prefer; but you may abbreviate option names if you use `--'.
      Build GDB with the gdbtk GUI interface.  Requires TCL/Tk to be
      installed.
 
-`--with-libunwind'
-     Use the libunwind library for unwinding function call stack.  See
-     http://www.nongnu.org/libunwind/index.html fro details.
-     Supported only on some platforms.
+`--with-libunwind-ia64'
+     Use the libunwind library for unwinding function call stack on ia64
+     target platforms.
+     See http://www.nongnu.org/libunwind/index.html for details.
 
 `--with-curses'
      Use the curses library instead of the termcap library, for
index 2df15bb..4325f66 100644 (file)
 /* Define if Python 2.7 is being used. */
 #undef HAVE_LIBPYTHON2_7
 
-/* Define if libunwind library is being used. */
-#undef HAVE_LIBUNWIND
-
 /* Define to 1 if you have the <libunwind-ia64.h> header file. */
 #undef HAVE_LIBUNWIND_IA64_H
 
index eeb2696..207defd 100755 (executable)
@@ -957,7 +957,7 @@ enable_gdbcli
 enable_gdbmi
 enable_tui
 enable_gdbtk
-with_libunwind
+with_libunwind_ia64
 with_curses
 enable_profiling
 with_pkgversion
@@ -1659,7 +1659,7 @@ Optional Packages:
                           [DATADIR/gdb]
   --with-relocated-sources=PATH
                           automatically relocate this path for source files
-  --with-libunwind        use libunwind frame unwinding support
+  --with-libunwind-ia64   use libunwind frame unwinding for ia64 targets
   --with-curses           use the curses library instead of the termcap
                           library
   --with-pkgversion=PKG   Use PKG in the version string in place of "GDB"
@@ -8196,18 +8196,32 @@ $as_echo "$as_me: WARNING: gdbtk isn't supported on $host; disabling" >&2;}
     enable_gdbtk=no ;;
 esac
 
-# Libunwind support.
+# Libunwind support for ia64.
 
-# Check whether --with-libunwind was given.
-if test "${with_libunwind+set}" = set; then :
-  withval=$with_libunwind; case "${withval}" in
-  yes)  enable_libunwind=yes ;;
-  no)   enable_libunwind=no ;;
-  *)    as_fn_error "bad value ${withval} for GDB with-libunwind option" "$LINENO" 5 ;;
-esac
+
+# Check whether --with-libunwind-ia64 was given.
+if test "${with_libunwind_ia64+set}" = set; then :
+  withval=$with_libunwind_ia64;
 else
+  with_libunwind_ia64=auto
+fi
 
-  for ac_header in libunwind-ia64.h
+
+# Backward compatibility option.
+if test "${with_libunwind+set}" = set; then
+  if test x"$with_libunwind_ia64" != xauto; then
+    as_fn_error "option --with-libunwind is deprecated, use --with-libunwind-ia64" "$LINENO" 5
+  fi
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&5
+$as_echo "$as_me: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&2;}
+  with_libunwind_ia64="$with_libunwind"
+fi
+
+case "$with_libunwind_ia64" in
+  yes | no)
+    ;;
+  auto)
+    for ac_header in libunwind-ia64.h
 do :
   ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default"
 if test "x$ac_cv_header_libunwind_ia64_h" = x""yes; then :
@@ -8219,14 +8233,14 @@ fi
 
 done
 
-  if test x"$ac_cv_header_libunwind_ia64_h" = xyes; then
-    enable_libunwind=yes;
-  fi
-
-fi
-
+    with_libunwind_ia64=$ac_cv_header_libunwind_ia64_h
+    ;;
+  *)
+    as_fn_error "bad value $with_libunwind_ia64 for GDB --with-libunwind-ia64 option" "$LINENO" 5
+    ;;
+esac
 
-if test x"$enable_libunwind" = xyes; then
+if test x"$with_libunwind_ia64" = xyes; then
   for ac_header in libunwind-ia64.h
 do :
   ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default"
@@ -8239,12 +8253,12 @@ fi
 
 done
 
-
-$as_echo "#define HAVE_LIBUNWIND 1" >>confdefs.h
-
-  CONFIG_OBS="$CONFIG_OBS libunwind-frame.o"
-  CONFIG_DEPS="$CONFIG_DEPS libunwind-frame.o"
-  CONFIG_SRCS="$CONFIG_SRCS libunwind-frame.c"
+  if test x"$ac_cv_header_libunwind_ia64_h" != xyes; then
+    as_fn_error "GDB option --with-libunwind-ia64 requires libunwind-ia64.h" "$LINENO" 5
+  fi
+  CONFIG_OBS="$CONFIG_OBS ia64-libunwind-tdep.o"
+  CONFIG_DEPS="$CONFIG_DEPS ia64-libunwind-tdep.o"
+  CONFIG_SRCS="$CONFIG_SRCS ia64-libunwind-tdep.c"
 fi
 
 opt_curses=no
index 6bb7cf4..5867782 100644 (file)
@@ -328,26 +328,44 @@ case $host_os in
     enable_gdbtk=no ;;
 esac
 
-# Libunwind support.
-AC_ARG_WITH(libunwind,
-AS_HELP_STRING([--with-libunwind], [use libunwind frame unwinding support]),
-[case "${withval}" in
-  yes)  enable_libunwind=yes ;;
-  no)   enable_libunwind=no ;;
-  *)    AC_MSG_ERROR(bad value ${withval} for GDB with-libunwind option) ;;
-esac],[
-  AC_CHECK_HEADERS(libunwind-ia64.h)
-  if test x"$ac_cv_header_libunwind_ia64_h" = xyes; then
-    enable_libunwind=yes;
+# Libunwind support for ia64.
+
+AC_ARG_WITH(libunwind-ia64,
+AS_HELP_STRING([--with-libunwind-ia64],
+              [use libunwind frame unwinding for ia64 targets]),,
+           [with_libunwind_ia64=auto])
+
+# Backward compatibility option.
+if test "${with_libunwind+set}" = set; then
+  if test x"$with_libunwind_ia64" != xauto; then
+    AC_MSG_ERROR(
+      [option --with-libunwind is deprecated, use --with-libunwind-ia64])
   fi
-])
-   
-if test x"$enable_libunwind" = xyes; then
+  AC_MSG_WARN([option --with-libunwind is deprecated, use --with-libunwind-ia64])
+  with_libunwind_ia64="$with_libunwind"
+fi
+
+case "$with_libunwind_ia64" in
+  yes | no)
+    ;;
+  auto)
+    AC_CHECK_HEADERS(libunwind-ia64.h)
+    with_libunwind_ia64=$ac_cv_header_libunwind_ia64_h
+    ;;
+  *)
+    AC_MSG_ERROR(
+      [bad value $with_libunwind_ia64 for GDB --with-libunwind-ia64 option])
+    ;;
+esac
+
+if test x"$with_libunwind_ia64" = xyes; then
   AC_CHECK_HEADERS(libunwind-ia64.h)
-  AC_DEFINE(HAVE_LIBUNWIND, 1, [Define if libunwind library is being used.])
-  CONFIG_OBS="$CONFIG_OBS libunwind-frame.o"
-  CONFIG_DEPS="$CONFIG_DEPS libunwind-frame.o"
-  CONFIG_SRCS="$CONFIG_SRCS libunwind-frame.c"
+  if test x"$ac_cv_header_libunwind_ia64_h" != xyes; then
+    AC_MSG_ERROR([GDB option --with-libunwind-ia64 requires libunwind-ia64.h])
+  fi
+  CONFIG_OBS="$CONFIG_OBS ia64-libunwind-tdep.o"
+  CONFIG_DEPS="$CONFIG_DEPS ia64-libunwind-tdep.o"
+  CONFIG_SRCS="$CONFIG_SRCS ia64-libunwind-tdep.c"
 fi
 
 opt_curses=no
similarity index 98%
rename from gdb/libunwind-frame.c
rename to gdb/ia64-libunwind-tdep.c
index 1421d92..e1c89c4 100644 (file)
@@ -1,4 +1,4 @@
-/* Frame unwinder for frames using the libunwind library.
+/* Frame unwinder for ia64 frames using the libunwind library.
 
    Copyright (C) 2003-2004, 2006-2012 Free Software Foundation, Inc.
 
 #include "gdb_assert.h"
 #include "gdb_string.h"
 
-#include "libunwind-frame.h"
+#include "ia64-libunwind-tdep.h"
 
 #include "complaints.h"
 
-/* IA-64 is the only target that currently uses libunwind-frame.  Note
-   how UNW_TARGET, UNW_OBJ, etc. are compile time constants below.
+/* IA-64 is the only target that currently uses ia64-libunwind-tdep.
+   Note how UNW_TARGET, UNW_OBJ, etc. are compile time constants below.
    Those come from libunwind's headers, and are target dependent.
    Also, some of libunwind's typedefs are target dependent, as e.g.,
    unw_word_t.  If some other target wants to use this, we will need
similarity index 86%
rename from gdb/libunwind-frame.h
rename to gdb/ia64-libunwind-tdep.h
index ea8a2a2..88f3857 100644 (file)
@@ -1,4 +1,4 @@
-/* Frame unwinder for frames with libunwind frame information.
+/* Frame unwinder for ia64 frames with libunwind frame information.
 
    Copyright (C) 2003, 2006-2012 Free Software Foundation, Inc.
 
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
+#ifndef IA64_LIBUNWIND_TDEP_H
+#define IA64_LIBUNWIND_TDEP_H 1
+
 struct frame_info;
 struct frame_id;
 struct regcache;
 struct gdbarch;
 struct frame_unwind;
 
-#ifndef LIBUNWIND_FRAME_H
-#define LIBUNWIND_FRAME_H 1
-
 /* IA-64 is the only target that currently uses libunwind.  If some
    other target wants to use it, we will need to do some abstracting
-   in order to make it possible to have more than one libunwind-frame
-   instance.  Including "libunwind.h" is wrong as that ends up
-   including the libunwind-$(arch).h for the host gdb is running
-   on.  */
+   in order to make it possible to have more than one
+   ia64-libunwind-tdep instance.  Including "libunwind.h" is wrong as
+   that ends up including the libunwind-$(arch).h for the host gdb is
+   running on.  */
 #include "libunwind-ia64.h"
 
 struct libunwind_descr
@@ -74,4 +74,4 @@ int libunwind_get_reg_special (struct gdbarch *gdbarch,
                               struct regcache *regcache,
                               int regnum, void *buf);
 
-#endif /* libunwind-frame.h */
+#endif /* IA64_LIBUNWIND_TDEP_H */
index 1c4fa8f..460345b 100644 (file)
@@ -42,7 +42,7 @@
 
 #ifdef HAVE_LIBUNWIND_IA64_H
 #include "elf/ia64.h"           /* for PT_IA_64_UNWIND value */
-#include "libunwind-frame.h"
+#include "ia64-libunwind-tdep.h"
 
 /* Note: KERNEL_START is supposed to be an address which is not going
          to ever contain any valid unwind info.  For ia64 linux, the choice
@@ -2417,8 +2417,8 @@ ia64_rse_skip_regs (uint64_t addr, long num_regs)
   return addr + ((num_regs + delta/0x3f) << 3);
 }
   
-/* Gdb libunwind-frame callback function to convert from an ia64 gdb register 
-   number to a libunwind register number.  */
+/* Gdb ia64-libunwind-tdep callback function to convert from an ia64 gdb
+   register number to a libunwind register number.  */
 static int
 ia64_gdb2uw_regnum (int regnum)
 {
@@ -2450,8 +2450,8 @@ ia64_gdb2uw_regnum (int regnum)
     return -1;
 }
   
-/* Gdb libunwind-frame callback function to convert from a libunwind register 
-   number to a ia64 gdb register number.  */
+/* Gdb ia64-libunwind-tdep callback function to convert from a libunwind
+   register number to a ia64 gdb register number.  */
 static int
 ia64_uw2gdb_regnum (int uw_regnum)
 {
@@ -2481,8 +2481,8 @@ ia64_uw2gdb_regnum (int uw_regnum)
     return -1;
 }
 
-/* Gdb libunwind-frame callback function to reveal if register is a float 
-   register or not.  */
+/* Gdb ia64-libunwind-tdep callback function to reveal if register is
+   a float register or not.  */
 static int
 ia64_is_fpreg (int uw_regnum)
 {
@@ -3176,8 +3176,8 @@ unw_accessors_t ia64_unw_rse_accessors =
   /* get_proc_name */
 };
 
-/* Set of ia64 gdb libunwind-frame callbacks and data for generic
-   libunwind-frame code to use.  */
+/* Set of ia64-libunwind-tdep gdb callbacks and data for generic
+   ia64-libunwind-tdep code to use.  */
 struct libunwind_descr ia64_libunwind_descr =
 {
   ia64_gdb2uw_regnum, 
index 7501eb4..66040e4 100644 (file)
@@ -22,7 +22,7 @@
 
 #ifdef HAVE_LIBUNWIND_IA64_H
 #include "libunwind-ia64.h"
-#include "libunwind-frame.h"
+#include "ia64-libunwind-tdep.h"
 #endif
 
 /* Register numbers of various important registers.  */
index 66920b1..09238fc 100644 (file)
@@ -123,8 +123,8 @@ ia64_vms_get_dyn_info_list (unw_addr_space_t as,
 static unw_accessors_t ia64_vms_unw_accessors;
 static unw_accessors_t ia64_vms_unw_rse_accessors;
 
-/* Set of ia64 gdb libunwind-frame callbacks and data for generic
-   libunwind-frame code to use.  */
+/* Set of ia64-libunwind-tdep gdb callbacks and data for generic
+   ia64-libunwind-tdep code to use.  */
 static struct libunwind_descr ia64_vms_libunwind_descr;
 
 #endif /* HAVE_LIBUNWIND_IA64_H */