clang-tidy fixes of various IFDS/IDE analyses#473
Merged
MMory merged 1 commit intodevelopmentfrom Jan 10, 2022
Merged
Conversation
MMory
approved these changes
Jan 10, 2022
fabianbs96
added a commit
to fabianbs96/phasar
that referenced
this pull request
Jun 18, 2022
* Fixes formatting * various fixes in IDE solver - identifier renames and multiple changes of range loops to use references, those are marked with TODO/FIXME - please review whether that is right, tests pass but I would like some other eyes looking at that * Update include/phasar/Utils/LLVMShorthands.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * clang-tidy fixes for IDE TSA * clang-tidy fixes for IDE LCA * clang-tidy fixes for IDEGeneralizedLCA * various fixes in IDEExtendedTaintAnalysis * Fixes formatting and lineendings * Update lib/PhasarLLVM/DataFlowSolver/IfdsIde/Problems/ExtendedTaintAnalysis/ComposeEdgeFunction.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/PhasarLLVM/DataFlowSolver/IfdsIde/Problems/ExtendedTaintAnalysis/JoinEdgeFunction.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Remove windows lineendings * Fixes next file * clang-tidy fixes in IfdsIde helpers - identifier renames, constness, etc * fix IFDSFieldSensTaintAnalysis * identifier renames and further clang-tidy minor fixes of IfdsIde FF/EF helpers * identifier rename and other minor fixes for ControlFlow, AnalysisStrategy, PhasarClang * add comments to namespace ends * identifier renames in Hexastore * replace typedef with using expressions * fix newlines at end of files * Update include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/IFDSFieldSensTaintAnalysis/Utils/Log.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/IFDSFieldSensTaintAnalysis/FlowFunctions/MapTaintedValuesToCaller.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update unittests/PhasarLLVM/DataFlowSolver/IfdsIde/EdgeFunctionSingletonFactoryTest.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fixes formatting * Fixes function name to lower case * Rename impl * Get rid of the narrowing conversion in AbstractMemoryLocationFactory * dot-labels are now escaped properly * fixed formatting * Update CMakeLists.txt * minor * minor * minor * minor * Update include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/FlowFunctions.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/IFDSFieldSensTaintAnalysis/Stats/TraceStats.h Co-authored-by: Florian Sattler <vuld3r@gmail.com> * redeclaration fix * Update include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/Problems/TypeStateDescriptions/OpenSSLEVPKDFCTXDescription.h Co-authored-by: Florian Sattler <vuld3r@gmail.com> * minor fixes * minor * few minor adjustments * define exceptions for variable naming in IDE solver * check and remove fixmes * several updates * minor * Use LatticeDomain<int64_t> instead of int64_t in IDE-LCA * add simple test module * Made LatticeDomain an own class, such that free functions don't get confused with std::variant * fix formatting * Fix trailing whitespace * The fix * Update IDESolver.h * Update IDESolver.h * Readd the fix * avoid unnecessary table copies * clang-tidy fixes of various IFDS/IDE analyses * clang-tidy fixes of various IFDS/IDE analyses (secure-software-engineering#473) Co-authored-by: Martin Mory <linuxfan91@googlemail.com> * fix merge anomalies * clang-tidy fixes for plugins - mostly renames * clang-tidy fixes in Utils - mostly renames * minor fixes in tests * clang-tidy fixes in passes - mostly renaming * clang-tidy fixes for remaining files * Update include/phasar/PhasarLLVM/Plugins/Interfaces/IfdsIde/IDETabulationProblemPlugin.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/PhasarLLVM/Plugins/Interfaces/IfdsIde/IDETabulationProblemPlugin.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/PhasarLLVM/Domain/ExtendedValue.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/Utils/GraphExtensions.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update include/phasar/Utils/Logger.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/PhasarLLVM/Passes/ExampleModulePass.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/PhasarLLVM/Passes/GeneralStatisticsAnalysis.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/PhasarLLVM/Passes/GeneralStatisticsAnalysis.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/PhasarLLVM/Passes/ValueAnnotationPass.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Reintroduces the itertor invalidation fix * Update lib/PhasarLLVM/DataFlowSolver/IfdsIde/Problems/IDESecureHeapPropagation.cpp Co-authored-by: Florian Sattler <vuld3r@gmail.com> * Update LLVMPointsToGraph.h * remove unnecessary nolints * disable non-const global check * few minor things * minor fixes * minor * remove some more nolints * remove some more nolints * allow further comparison operator for LatticeDomain * not quite * Fix merge error * Update include/phasar/Utils/TypeTraits.h Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * update json * updated llvm version in dockerfile to match project's requirements. changed ubuntu image version from latest to a fixed version, since the newest ubuntu version 21.10 don't work with LLVM 12.0.0. * added missing LD_LIBRARY_PATH export to nested folder * pass on IDEInstInteraction analysis and a few fixes * working on IDEIIAA fix * Adds filesystem link dependency to phasar_controller. * adjust implementation * small update * bump version * Fix use-after-free in LLVMPointsToSet + some minor stuff * updates and cleanup * File ending * random_access_iterator * Improve StableVector * pre-commit * minor * minor * Only call __builtin_assume, if it is available in the current compiler * fix formal parameter bug * Fixes phasar RPATH issues for IN_TREE builds * Conditionally use PMR if supported (which SHOULD actually be always) * partial merge * Fix errors introduced by merging * fix VTables for collapsed types. llvm-link collapsed multiple C++ types with identical members to one single LLVM type. The current virtual function call resolution then only considers the VTable of the LLVM type that represents all of the collapsed type. Now, we look for all VTables that the function pointer aliases with and extract the possible callees from them. * fix unreachable code in IFDSUninitializedVariables, fixing secure-software-engineering#410 * incorporated review feedback, get rid of negative return values of getVFTIndex() * add another constant for __cxa_pure_virtual * clang-format * remove code depenencies to boost::filesystem * clang-format * Update lib/Controller/AnalysisController.cpp Co-authored-by: fabianbs96 <52407375+fabianbs96@users.noreply.github.com> * incorporate comments * Fix getReceiverType() for functions returning large or non-trivially movable structs * wip logger implementation * remove unused old code * throw out boost stuff from logger * remove boost::log from cmake deps * adapt logger invocations to new interface * get rid of iostream, std::cout, std::cerr and std::ostream - the latter at least wherever possible, which is not everywhere unfortunately :| * switch to new logger initialization * improve error handling in Logger when failing to open log file * remove package dependencies to libboost_log * remove DBOOST_LOG_DYN_LINK from target_compile_definitions * clang-format * clang-format * use C++17 for IR generation and adjust unit tests accordingly * minor * add raw_ostream forward declaration in include/phasar/PhasarLLVM/DataFlowSolver/IfdsIde/EdgeFact.h Co-authored-by: fabianbs96 <52407375+fabianbs96@users.noreply.github.com> * incorporate feedback from Fabian * remove HexaStoreGraph * remove MultiKeyTable * implement old initializeLogger(), remove redundant comparison to std::nullopt * fix Logger::disable() * clang-format * incorporate further feedback, remove unnecessary calls to StringRef::str(), remove boost::core::demangle, remove more remainders of boost::log * clang-format * remove remainders of boost::log * remove CharType template parameter in nlohmannlogging stuff * move Logger::*able() to header to allow for possible inlining * refactoring in NlohmannLogging.h to make identifiers consistent with llvm guideline * further renaming, forgotten some * remove indirection for streams in Logger.cpp #1 Co-authored-by: fabianbs96 <52407375+fabianbs96@users.noreply.github.com> * remove indirection for streams in Logger.cpp #2 Co-authored-by: fabianbs96 <52407375+fabianbs96@users.noreply.github.com> * remove unique_ptr in Logger.h * pass StringRef by value, make Logger.cpp compile again after github screwup * get rid of stl includes * refactor error handling for file stream to function openFileStream() * adjusted a few minor things * when ocd kicks in * improve error/warning message Co-authored-by: Florian Sattler <vuld3r@gmail.com> Co-authored-by: Martin Mory <linuxfan91@googlemail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Jon Doe <819106+ste-lam@users.noreply.github.com> Co-authored-by: Philipp Dominik Schubert <philipp@gazar.eu> Co-authored-by: Philipp Schubert <philipp@it-schubert.com> Co-authored-by: Martin Mory <mmo@mail.upb.de> Co-authored-by: Jan-Niclas Strüwer <j.n.struewer@gmail.com> Co-authored-by: Jan-Niclas Strüwer <jan-niclas.struewer@iem.fraunhofer.de> Co-authored-by: Sebastian Böhm <boehmseb@cs.uni-saarland.de>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.