[DynInst_API:] Dyninst 9.0 release!


Date: Mon, 24 Aug 2015 14:10:24 -0500
From: Barton Miller <bart@xxxxxxxxxxx>
Subject: [DynInst_API:] Dyninst 9.0 release!
   ================================
     ANNOUNCEMENT: Release 9.0 of
              Dyninst
              ParseAPI
              SymtabAPI
              InstructionAPI
              StackwalkerAPI
              ProcControl
              PatchAPI
              DynC_API
   ================================

We are pleased to announce a major new release of Dyninst 9.0 and its
component tool kits. This release includes ParseAPI 9.0, SymtabAPI
9.0, InstructionAPI 9.0, StackwalkerAPI 9.0, ProcControl 9.0, PatchAPI
9.0, and DynC_API 9.0.

This release includes new usability features and efficiency
improvements, and the beginning of our effort to port to ARM64
(ARMv8)/Linux.  As with previous releases, we support Linux, Windows,
IBM BG/Q, and Cray systems. All released components are fully
integrated with Dyninst.

NEW FEATURES AND BUG FIXES:

* Code diversity and defensive feature: Dyninst now allows modification
  of the stack frames of functions.

* Dealing with defensive/packed binaries: SD-Dyninst is now integrated
  into the Dyninst main line.

* Much better parsing of unknown code: Machine learning based gap
  parsing rules are now integrated into Dyninst, and no longer need
  to be compiler-specific. Gap parsing should find significantly more
  function entry points, particularly when run on code generated by
  non-GNU compilers.

* Inlined functions: SymtabAPI now provides information

* ARM64/V8 LInux: SymtabAPI (in read-only mode), ProcControl, and
  Stackwalker (in 3rd-party mode) now work

* Loops are now represented in ParseAPI and PatchAPI, as well as at
  the BPatch level. The loop interface has been extended to represent
  irreducible loops correctly.

* Better handling of control flow pointers: Indirect control flow is
  now analyzed by a principled, slicing-based approach. This approach
  significantly improves the accuracy of our parsing.

* Memory improvements: SymtabAPI and ParseAPI should consume much less
  memory for representing symbols, symbol indexes, line information,
  block extents, and function extents. There will be a small CPU penalty
  when opening files under SymtabAPI in exchange for this.

* Thread local storage: ProcControl, in conjunction with Symtab, now
  supports accessing variables located in thread-local storage on Linux.
  See the manual for details.

* More efficient safe instrumentation: TrampGuards have been optimized.

* Compile-time thread limit on mutatees has been removed.

* Fixes in ProcControl's exit handling code.

Note that all Dyninst code is open source, released under the GNU
LGPL. And thank you to Red Hat for hosting the Linux RPMs.

Dyninst official distributions are available from:
  http://www.paradyn.org/html/dyninst9.0.1-software.html

The mirrors here will be updated soon:
  http://www.dyninst.org/downloads/dyninst-9.x

or you can git checkout the v9.0.1 tag from:
  http://git.dyninst.org/dyninst.git

Dyninst 9.0 is also available as a standard part of RedHat
distributions and is making its way through their RPM publication
process now. 
[← Prev in Thread] Current Thread [Next in Thread→]