Releases
v0.5.0
jplehr
released this
12 Jan 09:23
Changelog
Functionality / Implementation
Significant speed improvement in MetaCG building and querying the call-graph
Adds MetaCG logger utility (to fix potential segmentation faults)
Improves the handling of Ctors/Dtors significantly (differences in mangling of symbols with internal linkage between GCC and Clang may occur)
Implements new and much better dot I/O functionality in separate (service) class and namespace.
Adds new command line option semantics for dot export
Removes some outdated command line options
Adds experimental Alias Analysis for better handling of function pointers and for enabling the handling of cross TU Calls (off by default)
Remove reachability fields from CgNode and related refactoring
Changed ownership logic from shared to unique pointer
Callgraph-object is uniquely owned by MCGManager
Nodes and Edges are uniquely owned by Callgraph
object
Access to these now works via raw pointer
Fully switch from the old JSON annotation mechanism to the MCGWriter
Deprecation of the setGraph
method: PGIS_PIRA phases are now supposed to explicitly pass a call-graph if needed
Changed program logic to be more conservative when dealing with questionable inputs
Querying existence of Metadata does not implicitly add Metadata
[deprecated] Explicit modelling of edges, and transfer of graph-structure knowledge from node to call-graph
Fixes
Fixes the reading of call counts and runtime from the cube file
Fixes potential nullptr dereference and segmentation fault
Fixes bug causing the format two tests to check the result of the format one tests
Fixes potential CMake issue with modern linkers
Fixes a bug that causes uninstantiated virtual template function to be added to the callgraph, causing clang to crash in getAllManglings()
Fixes build with/without optional components
Infrastructure
Matrix builds for GCC in version 10 and 11, and LLVM versions (10, 14) and (13, 14).
Removes outdated jobs / tags
Adds a template with our CI defaults
Re-enables the podman based build in Ubuntu container
Versions
Support for Clang/LLVM 10, 13 and 14
You can’t perform that action at this time.