* gregset.h (GDB_FPXREGSET_T): Remove.
[deliverable/binutils-gdb.git] / gdb / NEWS
index 657d0a2db2a3db132e69195e388395bb851b3881..61208b12641923450586f68522780ac64d6581ac 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -1,7 +1,150 @@
                What has changed in GDB?
             (Organized release by release)
 
-*** Changes since GDB 7.0
+*** Changes since GDB 7.1
+
+* Windows Thread Information Block access.
+
+  On Windows targets, GDB now supports displaying the Windows Thread
+  Information Block (TIB) structure.  This structure is visible either
+  by using the new command `info w32 thread-information-block' or, by
+  dereferencing the new convenience variable named `$_tlb', a
+  thread-specific pointer to the TIB.  This feature is also supported
+  when remote debugging using GDBserver.
+
+* New remote packets
+
+qGetTIBAddr
+
+  Return the address of the Windows Thread Information Block of a given thread.
+
+qRelocInsn
+
+  In response to several of the tracepoint packets, the target may now
+  also respond with a number of intermediate `qRelocInsn' request
+  packets before the final result packet, to have GDB handle
+  relocating an instruction to execute at a different address.  This
+  is particularly useful for stubs that support fast tracepoints.  GDB
+  reports support for this feature in the qSupported packet.
+
+* The source command now accepts a -s option to force searching for the
+  script in the source search path even if the script name specifies
+  a directory.
+
+* New features in the GDB remote stub, GDBserver
+
+  - GDBserver now support tracepoints (including fast tracepoints).
+    The feature is currently supported by the i386-linux and
+    amd64-linux builds.  See the "Tracepoints support in gdbserver"
+    section in the manual for more information.
+
+  - GDBserver now supports x86_64 Windows 64-bit debugging.
+
+* GDB now sends xmlRegisters= in qSupported packet to indicate that
+  it understands register description.
+
+* The --batch flag now disables pagination and queries.
+
+* X86 general purpose registers
+
+  GDB now supports reading/writing byte, word and double-word x86
+  general purpose registers directly.  This means you can use, say,
+  $ah or $ax to refer, respectively, to the byte register AH and
+  16-bit word register AX that are actually portions of the 32-bit
+  register EAX or 64-bit register RAX.
+
+* The `commands' command now accepts a range of breakpoints to modify.
+  A plain `commands' following a command that creates multiple
+  breakpoints affects all the breakpoints set by that command.  This
+  applies to breakpoints set by `rbreak', and also applies when a
+  single `break' command creates multiple breakpoints (e.g.,
+  breakpoints on overloaded c++ functions).
+
+* The `rbreak' command now accepts a filename specification as part of
+  its argument, limiting the functions selected by the regex to those
+  in the specified file.
+
+* Support for remote debugging Windows and SymbianOS shared libraries
+  from Unix hosts has been improved.  Non Windows GDB builds now can
+  understand target reported file names that follow MS-DOS based file
+  system semantics, such as file names that include drive letters and
+  use the backslash character as directory separator.  This makes it
+  possible to transparently use the "set sysroot" and "set
+  solib-search-path" on Unix hosts to point as host copies of the
+  target's shared libraries.  See the new command "set
+  target-file-system-kind" described below, and the "Commands to
+  specify files" section in the user manual for more information.
+
+* New commands
+
+set target-file-system-kind unix|dos-based|auto
+show target-file-system-kind
+  Set or show the assumed file system kind for target reported file
+  names.
+
+save breakpoints <filename>
+  Save all current breakpoint definitions to a file suitable for use
+  in a later debugging session.  To read the saved breakpoint
+  definitions, use the `source' command.
+
+`save tracepoints' is a new alias for `save-tracepoints'.  The latter
+is now deprecated.
+
+* Python scripting
+
+** The GDB Python API now has access to breakpoints, symbols, symbol
+   tables, program spaces, and frame's code blocks.  Additionally, GDB
+   Parameters can now be created from the API, and manipulated via
+   set/show in the CLI.
+
+** New functions gdb.target_charset, gdb.target_wide_charset,
+   gdb.progspaces, gdb.current_progspace, and gdb.string_to_argv.
+
+** New exception gdb.GdbError.
+
+** Pretty-printers are now also looked up in the current program space.
+
+** Pretty-printers can now be individually enabled and disabled.
+
+** GDB now looks for names of Python scripts to auto-load in a
+   special section named `.debug_gdb_scripts', in addition to looking
+   for a OBJFILE-gdb.py script when OBJFILE is read by the debugger.
+
+* Tracepoint actions were unified with breakpoint commands. In particular,
+there are no longer differences in "info break" output for breakpoints and
+tracepoints and the "commands" command can be used for both tracepoints and
+regular breakpoints.
+
+* New targets
+
+ARM Symbian                    arm*-*-symbianelf*
+
+* D language support.
+  GDB now supports debugging programs written in the D programming
+  language.
+
+*** Changes in GDB 7.1
+
+* C++ Improvements
+
+  ** Namespace Support
+
+  GDB now supports importing of namespaces in C++.  This enables the
+  user to inspect variables from imported namespaces.  Support for
+  namepace aliasing has also been added.  So, if a namespace is 
+  aliased in the current scope (e.g. namepace C=A; ) the user can 
+  print variables using the alias (e.g. (gdb) print C::x).
+
+  ** Bug Fixes
+
+  All known bugs relating to the printing of virtual base class were
+  fixed.  It is now possible to call overloaded static methods using a
+  qualified name.
+
+  ** Cast Operators
+
+  The C++ cast operators static_cast<>, dynamic_cast<>, const_cast<>,
+  and reinterpret_cast<> are now handled by the C++ expression parser.
 
 * New targets
 
@@ -61,6 +204,23 @@ Renesas RX                  rx
   tell the target agent whether to continue running a trace if the
   connection is lost unexpectedly.
 
+  ** Trace files
+
+  GDB now has the ability to save the trace buffer into a file, and
+  then use that file as a target, similarly to you can do with
+  corefiles.  You can select trace frames, print data that was
+  collected in them, and use tstatus to display the state of the
+  tracing run at the moment that it was saved.  To create a trace
+  file, use "tsave <filename>", and to use it, do "target tfile
+  <name>".
+
+  ** Circular trace buffer
+
+  You can ask the target agent to handle the trace buffer as a
+  circular buffer, discarding the oldest trace frames to make room for
+  newer ones, by setting circular-trace-buffer to on.  This feature may
+  not be available for all target agents.
+
 * Changed commands
 
 disassemble
@@ -71,6 +231,14 @@ info variables
   The info variables command now displays variable definitions.  Files
   which only declare a variable are not shown.
 
+source
+  The source command is now capable of sourcing Python scripts.
+  This feature is dependent on the debugger being build with Python
+  support.
+
+  Related to this enhancement is also the introduction of a new command
+  "set script-extension" (see below).
+
 * New commands (for set/show, see "New options" below)
 
 record save [<FILENAME>]
@@ -153,6 +321,45 @@ show disconnected-tracing
    loses its connection to GDB.  If 0, the target is to stop tracing
    upon disconnection.
 
+set circular-trace-buffer
+show circular-trace-buffer
+   If set to on, the target is instructed to use a circular trace buffer
+   and discard the oldest trace frames instead of stopping the trace due
+   to a full trace buffer.  If set to off, the trace stops when the buffer
+   fills up.  Some targets may not support this.
+
+set script-extension off|soft|strict
+show script-extension
+   If set to "off", the debugger does not perform any script language
+   recognition, and all sourced files are assumed to be GDB scripts.
+   If set to "soft" (the default), files are sourced according to
+   filename extension, falling back to GDB scripts if the first
+   evaluation failed.
+   If set to "strict", files are sourced according to filename extension.
+
+set ada trust-PAD-over-XVS on|off
+show ada trust-PAD-over-XVS
+   If off, activate a workaround against a bug in the debugging information
+   generated by the compiler for PAD types (see gcc/exp_dbug.ads in
+   the GCC sources for more information about the GNAT encoding and
+   PAD types in particular).  It is always safe to set this option to
+   off, but this introduces a slight performance penalty.  The default
+   is on.
+
+* Python API Improvements
+
+  ** GDB provides the new class gdb.LazyString.  This is useful in
+     some pretty-printing cases.  The new method gdb.Value.lazy_string
+     provides a simple way to create objects of this type.
+
+  ** The fields returned by gdb.Type.fields now have an
+     `is_base_class' attribute.
+
+  ** The new method gdb.Type.range returns the range of an array type.
+
+  ** The new method gdb.parse_and_eval can be used to parse and
+     evaluate an expression.
+
 * New remote packets
 
 QTDV
@@ -164,6 +371,9 @@ qTV
 QTDisconnected
    Set desired tracing behavior upon disconnection.
 
+QTBuffer:circular
+   Set the trace buffer to be linear or circular.
+
 qTfP, qTsP
    Get data about the tracepoints currently in use.
 
@@ -189,6 +399,11 @@ much more reliable. In particular:
   - GDB is now able to backtrace through the signal handler for
     non-threaded programs.
 
+PIE (Position Independent Executable) programs debugging is now supported.
+This includes debugging execution of PIC (Position Independent Code) shared
+libraries although for that, it should be possible to run such libraries as an
+executable program.
+
 *** Changes in GDB 7.0
 
 * GDB now has an interface for JIT compilation.  Applications that
@@ -204,7 +419,7 @@ the target for evaluation using the same bytecode format as is used
 for tracepoint actions.
 
 * "disassemble" command with a /r modifier, print the raw instructions
-in hex as well as in symbolic form."
+in hex as well as in symbolic form.
 
 * Process record and replay
 
This page took 0.025462 seconds and 4 git commands to generate.