[DynInst_API:] commit: further 9.1 fixes


Date: Tue, 08 Dec 2015 11:14:47 -0600
From: Bill Williams <bill@xxxxxxxxxxx>
Subject: [DynInst_API:] commit: further 9.1 fixes
Fixes for the following:

* Instruction decoding bugs revealed by the test suite
* dwarf_attr memory leak
* improper handling of malformed DWARF: high_pc can return an error even when it's supposedly present, and the associated Dwarf_Error needs to be freed * Windows-specific misuse of temporary strings, resulting in memory corruption in our calling convention analysis
* Slicing no longer attempts to follow catch edges
* Exception block parsing properly handles the aligned tag
* Exception block parsing properly recognizes that zero offsets correspond to "no catch block" regardless of the presence/absence of a base * Exception block parsing correctly handles bases other than function entry, if present * Exception block parsing now ignores indirect catch blocks; these contain pointers to catch blocks and should be assumed not to be statically resolvable.
* Exception table size decoding now matches glibc internals.

All of these are on the 9.1.x branch; in the absence of any further showstoppers, this will become 9.1.0. If there is demand for a 9.0.4 incorporating the various bug fixes and leaving out the ABI breakers, let me know and I can package it; if not, folks can just use 9.1.

--bw
[← Prev in Thread] Current Thread [Next in Thread→]