[ Contact Info | Site Index ]

Dyninst 9.1.0 Features

Improvements | Known Bugs


Software

Release 9.1.0 Software

Highlights

DyninstAPI 9.1.0

  • Shared objects and executables now both correspond to BPatch_objects, and their constituent .o files correspond to BPatch_modules.
  • Boost should now auto-detect up to version 1.59
  • LD_PRELOAD again works
  • Relocation and instrumentation no longer trigger unnecessary parsing on Windows
  • Windows no longer misidentifies calling conventions due to use-after-free string corruption
  • Slicing no longer attempts to follow edges to or from catch blocks

DyninstAPI 9.0.3

  • Fixes for DynC .soname and out of source builds.

DyninstAPI 9.0.2

  • Fixes for old #defines for component versions.

DyninstAPI 9.0.1

  • Fixes for ARM and PowerPC builds.
  • Fix for "package" target so that it only builds from within a git repository.

DyninstAPI 9.0.0

  • Dyninst now allows modification of the stack frames of functions. See the manual for details.
  • SD-Dyninst is now integrated into the Dyninst main line. See the manual for details.
  • 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.
  • SymtabAPI now provides information about inlined functions. See the manual for details.
  • SymtabAPI (in read-only mode), ProcControl, and Stackwalker (in 3rd-party mode) now work on ARM64 Linux.
  • 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; see the manual for details.
  • Indirect control flow is now analyzed by a principled, slicing-based approach and its accuracy is substantially improved.
  • 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.
  • ProcControl, in conjunction with Symtab, now supports accessing variables located in thread-local storage on Linux. See the manual for details.
  • TrampGuards have been optimized.
  • Compile-time thread limit on mutatees has been removed.
  • Fixes in ProcControl's exit handling code.


Known bugs

  • Windows: inserting call snippets to call __thiscall or __fastcall functions is unsafe. __cdecl and __stdcall work.
  • Windows: binary rewriting is still not supported, but is coming soon.

 

Dyninst

Release 9.1.0 Features/Bugs
Release 9.1.0 Software
Release History

MRNet

Release 5.0 Features
Release 5.0 Software
Release History

SymtabAPI

Release 9.1.0 Features/Bugs
Release 9.1.0 Software
Release History

InstructionAPI

Release 9.1.0 Features
Release 9.1.0 Software
Release History

ParseAPI

Release 9.1.0 Features
Release 9.1.0 Software
Release History

PatchAPI

Release 9.1.0 Features
Release 9.1.0 Software
Release History

StackwalkerAPI

Release 9.1.0 Features
Release 9.1.0 Software
Release History

ProcControlAPI

Release 9.1.0 Features
Release 9.1.0 Software
Release History

Frequently Asked Questions
Documentation

[ Contact Info | Site Index ]