2012-03-05 Tristan Gingold <gingold@adacore.com>
authorTristan Gingold <gingold@adacore.com>
Mon, 5 Mar 2012 11:37:33 +0000 (11:37 +0000)
committerTristan Gingold <gingold@adacore.com>
Mon, 5 Mar 2012 11:37:33 +0000 (11:37 +0000)
* target.h (target_object): Add TARGET_OBJECT_OPENVMS_UIB.
* remote.c (PACKET_qXfer_uib): New enum value.
(remote_protocol_features): Add entry for PACKET_qXfer_uib.
(remote_xfer_partial): Handle TARGET_OBJECT_OPENVMS_UIB.
(_initialize_remote): Call add_packet_config_cmd for
xfer:uib packet.

doc/
2012-03-05  Tristan Gingold  <gingold@adacore.com>

* gdb.texinfo (General Query Packets): Document xfer:uib:read.

gdb/ChangeLog
gdb/doc/ChangeLog
gdb/doc/gdb.texinfo
gdb/remote.c
gdb/target.h

index 33f822b..f3e9013 100644 (file)
@@ -1,8 +1,17 @@
 2012-03-05  Tristan Gingold  <gingold@adacore.com>
 
-        * osabi.c (gdb_osabi_names): Add OpenVMS.
-        (generic_elf_osabi_sniffer): Likewise.
-        * defs.h (gdb_osabi): Add GDB_OSABI_OPENVMS.
+       * target.h (target_object): Add TARGET_OBJECT_OPENVMS_UIB.
+       * remote.c (PACKET_qXfer_uib): New enum value.
+       (remote_protocol_features): Add entry for PACKET_qXfer_uib.
+       (remote_xfer_partial): Handle TARGET_OBJECT_OPENVMS_UIB.
+       (_initialize_remote): Call add_packet_config_cmd for
+       xfer:uib packet.
+
+2012-03-05  Tristan Gingold  <gingold@adacore.com>
+
+       * osabi.c (gdb_osabi_names): Add OpenVMS.
+       (generic_elf_osabi_sniffer): Likewise.
+       * defs.h (gdb_osabi): Add GDB_OSABI_OPENVMS.
 
 2012-03-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
index f3e483f..3c7357a 100644 (file)
@@ -1,3 +1,7 @@
+2012-03-05  Tristan Gingold  <gingold@adacore.com>
+
+       * gdb.texinfo (General Query Packets): Document xfer:uib:read.
+
 2012-03-03  Yao Qi  <yao@codesourcery.com>
 
        * gdb.texinfo (In-Process Agent): New node.
index 62c92e9..945b68d 100644 (file)
@@ -35220,6 +35220,11 @@ These are the currently defined stub features and their properties:
 @tab @samp{-}
 @tab Yes
 
+@item @samp{qXfer:uib:read}
+@tab No
+@tab @samp{-}
+@tab Yes
+
 @item @samp{qXfer:fdpic:read}
 @tab No
 @tab @samp{-}
@@ -35359,6 +35364,10 @@ The remote stub understands the @samp{qXfer:threads:read} packet
 The remote stub understands the @samp{qXfer:traceframe-info:read}
 packet (@pxref{qXfer traceframe info read}).
 
+@item qXfer:uib:read
+The remote stub understands the @samp{qXfer:uib:read}
+packet (@pxref{qXfer unwind info block}).
+
 @item qXfer:fdpic:read
 The remote stub understands the @samp{qXfer:fdpic:read}
 packet (@pxref{qXfer fdpic loadmap read}).
@@ -35654,6 +35663,14 @@ Return a description of the current traceframe's contents.
 This packet is not probed by default; the remote stub must request it,
 by supplying an appropriate @samp{qSupported} response (@pxref{qSupported}).
 
+@item qXfer:uib:read:@var{pc}:@var{offset},@var{length}
+@anchor{qXfer unwind info block}
+
+Return the unwind information block for @var{pc}.  This packet is used
+on OpenVMS/ia64 to ask the kernel unwind information.
+
+This packet is not probed by default.
+
 @item qXfer:fdpic:read:@var{annex}:@var{offset},@var{length}
 @anchor{qXfer fdpic loadmap read}
 Read contents of @code{loadmap}s on the target system.  The
index 61bb2bb..45fec17 100644 (file)
@@ -1254,6 +1254,7 @@ enum {
   PACKET_qXfer_threads,
   PACKET_qXfer_statictrace_read,
   PACKET_qXfer_traceframe_info,
+  PACKET_qXfer_uib,
   PACKET_qGetTIBAddr,
   PACKET_qGetTLSAddr,
   PACKET_qSupported,
@@ -3834,6 +3835,8 @@ static struct protocol_feature remote_protocol_features[] = {
     remote_enable_disable_tracepoint_feature, -1 },
   { "qXfer:fdpic:read", PACKET_DISABLE, remote_supported_packet,
     PACKET_qXfer_fdpic },
+  { "qXfer:uib:read", PACKET_DISABLE, remote_supported_packet,
+    PACKET_qXfer_uib },
   { "QDisableRandomization", PACKET_DISABLE, remote_supported_packet,
     PACKET_QDisableRandomization },
   { "QAgent", PACKET_DISABLE, remote_supported_packet, PACKET_QAgent},
@@ -8484,6 +8487,11 @@ remote_xfer_partial (struct target_ops *ops, enum target_object object,
     case TARGET_OBJECT_FDPIC:
       return remote_read_qxfer (ops, "fdpic", annex, readbuf, offset, len,
                                &remote_protocol_packets[PACKET_qXfer_fdpic]);
+
+    case TARGET_OBJECT_OPENVMS_UIB:
+      return remote_read_qxfer (ops, "uib", annex, readbuf, offset, len,
+                               &remote_protocol_packets[PACKET_qXfer_uib]);
+
     default:
       return -1;
     }
@@ -11316,6 +11324,9 @@ Show the maximum size of the address (in bits) in a memory packet."), NULL,
     (&remote_protocol_packets[PACKET_qXfer_traceframe_info],
      "qXfer:trace-frame-info:read", "traceframe-info", 0);
 
+  add_packet_config_cmd (&remote_protocol_packets[PACKET_qXfer_uib],
+                        "qXfer:uib:read", "unwind-info-block", 0);
+
   add_packet_config_cmd (&remote_protocol_packets[PACKET_qGetTLSAddr],
                         "qGetTLSAddr", "get-thread-local-storage-address",
                         0);
index 850cb38..ed2bcdd 100644 (file)
@@ -280,7 +280,9 @@ enum target_object
   /* Load maps for FDPIC systems.  */
   TARGET_OBJECT_FDPIC,
   /* Darwin dynamic linker info data.  */
-  TARGET_OBJECT_DARWIN_DYLD_INFO
+  TARGET_OBJECT_DARWIN_DYLD_INFO,
+  /* OpenVMS Unwind Information Block.  */
+  TARGET_OBJECT_OPENVMS_UIB
   /* Possible future objects: TARGET_OBJECT_FILE, ...  */
 };