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
_______________________________________________
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

Reply via email to