Skip to content

PhASAR's Releases

Bhuvan Sharma edited this page Jun 24, 2020 · 1 revision

PhASAR released versions

PhASAR framework first version v-pldi18 was released on 14th June 2018 and presented at the PLDI 2018 conference held in Philadelphia, Pennsylvania, United States.

Second version "v1018" which contains a minor update including bug fixes, improved code quality released on Oct 9th 2018 .

"v1118" contains fixed vtable access and support for C-style variadic functions in the pre-defined LLVM-based flow functions MapFactsToCallee and MapFactsToCaller. Added additional LLVM-based flow functions PropagateLoad and PropagateStore. The measurement mechanism PAMM has been overhauled. The C++17 standard may be used from now on: The OSX Travis build is stalled until we update to a newer LLVM version. This is because LLVM-5.0.1 uses STL features that have been removed in C++17. GCC's implementation libstdc++, however, still has them, whereas Clang's libc++ removed them. On OSX try to install gcc-7 in order to get libstdc++ or try to change the standard to C++14 in CMakeLists.txt, however, we will move towards using C++17 features in the near future. Released on Nov 3rd 2018 .

"v1218" contains some minor bugfixed and improvements. isFieldLoad() and isFieldStore() functionalities have been added to the control-flow infrastructure. These functions will be of use in the near future in order to implement more precise points-to analyses. Additionally, backward-control-flow capabilities have been added allowing for backward analysis (additional unit tests have to be written, still). In order to distinguish C++'s special member functions, isSpecialMemberFunction() has been introduced. This function allows to check if a function is a constructor, destructor, etc.

"v0319" contains a first implementation of a solver that uses weighted push-down systems to solve inter-procedural data-flow problems. The constructors of the LLVM-based problem descriptions have been adjusted such that a user's analysis code has easier access (in addition to the inter-procedural control-flow graph) to the type hierarchy and function-wise points-to graphs that can be retrieved through the ProjectIRDB reference.