Opened 8 years ago

Closed 8 years ago

Last modified 7 years ago

#8412 closed enhancement (fixed)

gdb-7.12

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: normal Milestone: 8.0
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

New minor version

*** Changes in GDB 7.12

* GDB and GDBserver now build with a C++ compiler by default.

  The --enable-build-with-cxx configure option is now enabled by
  default.  One must now explicitly configure with
  --disable-build-with-cxx in order to build with a C compiler.  This
  option will be removed in a future release.

* GDBserver now supports recording btrace without maintaining an active
  GDB connection.

* GDB now supports a negative repeat count in the 'x' command to examine
  memory backward from the given address.  For example:

    (gdb) bt
    #0  Func1 (n=42, p=0x40061c "hogehoge") at main.cpp:4
    #1  0x400580 in main (argc=1, argv=0x7fffffffe5c8) at main.cpp:8
    (gdb) x/-5i 0x0000000000400580
       0x40056a <main(int, char**)+8>:      mov    %edi,-0x4(%rbp)
       0x40056d <main(int, char**)+11>:     mov    %rsi,-0x10(%rbp)
       0x400571 <main(int, char**)+15>:     mov    $0x40061c,%esi
       0x400576 <main(int, char**)+20>:     mov    $0x2a,%edi
       0x40057b <main(int, char**)+25>:
        callq  0x400536 <Func1(int, char const*)>

* Fortran: Support structures with fields of dynamic types and 
  arrays of dynamic types.

* GDB now supports multibit bitfields and enums in target register
  descriptions.

* New Python-based convenience function $_as_string(val), which returns
  the textual representation of a value.  This function is especially
  useful to obtain the text label of an enum value.

* Intel MPX bound violation handling.

   Segmentation faults caused by a Intel MPX boundary violation
   now display the kind of violation (upper or lower), the memory
   address accessed and the memory bounds, along with the usual
   signal received and code location.

   For example:

   Program received signal SIGSEGV, Segmentation fault
   Upper bound violation while accessing address 0x7fffffffc3b3
   Bounds: [lower = 0x7fffffffc390, upper = 0x7fffffffc3a3]
   0x0000000000400d7c in upper () at i386-mpx-sigsegv.c:68

* Rust language support.
  GDB now supports debugging programs written in the Rust programming
  language.  See https://www.rust-lang.org/ for more information about
  Rust.

* Support for running interpreters on specified input/output devices

  GDB now supports a new mechanism that allows frontends to provide
  fully featured GDB console views, as a better alternative to
  building such views on top of the "-interpreter-exec console"
  command.  See the new "new-ui" command below.  With that command,
  frontends can now start GDB in the traditional command-line mode
  running in an embedded terminal emulator widget, and create a
  separate MI interpreter running on a specified i/o device.  In this
  way, GDB handles line editing, history, tab completion, etc. in the
  console all by itself, and the GUI uses the separate MI interpreter
  for its own control and synchronization, invisible to the command
  line.

* The "catch syscall" command catches groups of related syscalls.

  The "catch syscall" command now supports catching a group of related
  syscalls using the 'group:' or 'g:' prefix.

* New commands

skip -file file
skip -gfile file-glob-pattern
skip -function function
skip -rfunction regular-expression
  A generalized form of the skip command, with new support for
  glob-style file names and regular expressions for function names.
  Additionally, a file spec and a function spec may now be combined.

maint info line-table REGEXP
  Display the contents of GDB's internal line table data struture.

maint selftest
  Run any GDB unit tests that were compiled in.

new-ui INTERP TTY
  Start a new user interface instance running INTERP as interpreter,
  using the TTY file for input/output.

* Python Scripting

  ** gdb.Breakpoint objects have a new attribute "pending", which
     indicates whether the breakpoint is pending.
  ** Three new breakpoint-related events have been added:
     gdb.breakpoint_created, gdb.breakpoint_modified, and
     gdb.breakpoint_deleted.

signal-event EVENTID
  Signal ("set") the given MS-Windows event object.  This is used in
  conjunction with the Windows JIT debugging (AeDebug) support, where
  the OS suspends a crashing process until a debugger can attach to
  it.  Resuming the crashing process, in order to debug it, is done by
  signalling an event.

* Support for tracepoints and fast tracepoints on s390-linux and s390x-linux
  was added in GDBserver, including JIT compiling fast tracepoint's
  conditional expression bytecode into native code.

* Support for various remote target protocols and ROM monitors has
  been removed:

  target m32rsdi	Remote M32R debugging over SDI
  target mips		MIPS remote debugging protocol
  target pmon		PMON ROM monitor
  target ddb		NEC's DDB variant of PMON for Vr4300
  target rockhopper	NEC RockHopper variant of PMON
  target lsi		LSI variant of PMO

* Support for tracepoints and fast tracepoints on powerpc-linux,
  powerpc64-linux, and powerpc64le-linux was added in GDBserver,
  including JIT compiling fast tracepoint's conditional expression
  bytecode into native code.

* MI async record =record-started now includes the method and format used for
  recording.  For example:

    =record-started,thread-group="i1",method="btrace",format="bts"

* MI async record =thread-selected now includes the frame field.  For example:

     =thread-selected,id="3",frame={level="0",addr="0x00000000004007c0"}

* New targets

Andes NDS32			nds32*-*-elf

Change History (3)

comment:1 by Douglas R. Reno, 8 years ago

Owner: changed from blfs-book@… to Douglas R. Reno
Status: newassigned

comment:2 by Douglas R. Reno, 8 years ago

Resolution: fixed
Status: assignedclosed

Fixed at r17858

comment:3 by bdubbs@…, 7 years ago

Milestone: 7.118.0

Milestone renamed

Note: See TracTickets for help on using tickets.