about summary refs log tree commit diff homepage
path: root/lib
AgeCommit message (Collapse)Author
2019-11-04Remove the duplicated check for DebugInfoIntrinsicHui Peng
2019-10-31Executor: fix missing default case in switch instructionFrank Busse
2019-10-31LLVM 9.0: fourth parameter for @llvm.objectsize()Julian Büning
2019-10-31support compilation against LLVM 9.0Julian Büning
2019-10-29ExecutorTimers: refactor and move to support libFrank Busse
- moves timer handling from Executor into support lib - introduces TimerGroup, removes TimerInfo/WriteStatsTimer/UpdateReachableTimer/WriteIStatsTimer classes - removes ExecutorTimers.cpp and ExecutorTimerInfo.h - removes -max-instruction-time flag (see #1114)
2019-10-29ExecutorTimers: remove signalling, fix endless looping forkFrank Busse
- adds -timer-interval threshold for timer checks - fixes #831
2019-10-08Executor.h: remove defined functions without implementationFrank Busse
2019-09-20refactor PTree: use unique_ptrFrank Busse
2019-09-20refactor PTree: remove split(), add attach() methodFrank Busse
2019-09-20Add saturated arithmetic intrinsicsMateusz Naściszewski
2019-09-03Moved solver-related header files into a separate klee/Solver/ directory.Cristian Cadar
2019-09-03Moved ConstructSolverChain.cpp to the Solver library.Cristian Cadar
2019-09-03Renamed CmdLineOptions.cpp to SolverCmdLine.cpp (in line with the associated ↵Cristian Cadar
header SolverCmdLine.h) and moved it to the Solver library.
2019-08-15ExecutorTimers: move dumpStates/dumpPTree into ExecutorFrank Busse
* creates two new methods: dumpStates, dumpPTree
2019-08-14Update basic block iterator after deleting instruction; add test caseMartin Nowack
2019-08-14fixed bug in IntrinsicCleaner trap cleanerMichael Bryman
2019-08-14Replace sprintf with snprintf throughout codebaseCristian Cadar
2019-08-12StatsTracker: switch from TRUNCATE to WAL journal modeFrank Busse
2019-08-01Renamed misspelled fileCristian Cadar
2019-07-30Use #include "klee/..." (instead of #include <klee/...>) consistently.Cristian Cadar
2019-07-30Consolidated Expr-related include files into a single include/klee/Expr ↵Cristian Cadar
directory. This improves the organization of the code, and also makes it easier to reuse Expr outside KLEE.
2019-07-23Refactor ConstraintManager to more modern coding standardsDaniel Schemmel
Eliminates -Wdeprecated-copy warnings Performed clang-format on touched file
2019-07-23Refactor ValueRange to more modern coding standardsDaniel Schemmel
Eliminates -Wdeprecated-copy warnings Performed partia clang-format on touched file
2019-06-04fix some incorrect first linesJulian Büning
2019-06-04make endif guard naming consistentJulian Büning
2019-06-04make include guard naming consistentJulian Büning
2019-06-04Fixed identifiers used in ifdefs to (1) not use reserved names and (2) use a ↵Cristian Cadar
consistent naming convention
2019-06-04Remove parenthesis around returns, as reported and discussed in #891Cristian Cadar
2019-05-31PTree: fix dump() methodFrank Busse
2019-05-30ExecutionState: remove fnAliasesJulian Büning
2019-05-30implement FunctionAliasPassJulian Büning
2019-05-30remove klee_alias_function()Julian Büning
this function can be used to modify the control flow of the program on different paths, enabling self-modifying code.
2019-05-28Implement handling of the llvm.fabs intrinsicFelix Rath
2019-04-04some minor refactoringsFrank Busse
2019-04-04Clean klee-stats, StatsTracker and cmakeTimotej Kapus
2019-04-04Change the .stats format into sqlite3Timotej Kapus
Improves querying of the .stats file, reduces its size, speeds up reads and writes and has better defined fail behaviour.
2019-04-02Add FreeBSD OS triple in RaiseAsmGleb Popov
2019-04-02Handle __assert() function as handleAssertFail. This assert variant is used ↵Gleb Popov
on FreeBSD
2019-04-02Fix build of Executor.cpp on FreeBSD.Gleb Popov
2019-03-21drop support for LLVM <= 3.7Julian Büning
2019-03-21remove copy of ScalarizerPass for LLVM 3.4Julian Büning
2019-03-21remove obsolete LegacyLLVMPassManagerTyJulian Büning
2019-03-21remove obsolete macro KLEE_LLVM_GEP_TYPEJulian Büning
2019-03-20STPSolver: C++11, add missing free, refactoringFrank Busse
2019-03-19Add support to assign debug instructions to optimised codeMartin Nowack
2019-03-19Use debugging information from newer LLVM versionsMartin Nowack
2019-03-19separate between instructions and functionsMartin Nowack
2019-03-19Refactor InstructionInfoTableMartin Nowack
Better debug information
2019-03-19Add Read consistency test case, spellingTimotej Kapus
2019-03-19Fix representation of ReadExpr of equivalent arraysMartin Nowack
ObjectStates can be shared between multiple states. A read expression of a symbolic object can be represented differently depending on previous read expression on the same object. If the read expression uses a symbolic index, all pending updates will become entries in the update list of the object state. If the same object state is read again, with a concrete index, the latest update list item will be referenced, even though it might contain more recent but non-essential updates. If, instead, a concrete read will be executed first, it does not contain the non-essential updates. For both executions, the ReadExpr with a constant index will have two different representations, which is not intented. This patch makes sure, we do not include more recent, non-essential updates for concrete reads. Fixes #921