Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-07-12 | Replaced --suppress-external-warnings and --all-external-warnings with ↵ | Cristian Cadar | |
--external-call-warnings=none|once-per-function|all. This eliminates the ambiguity when both of the old options were set. Added test for the new option. | |||
2023-07-08 | Combine all `ConstantExpr::toMemory` cases into one. | Daniel Schemmel | |
Note that (as it did previously), this relies on the native types having the same internal representation as the ApInt type. | |||
2023-07-08 | Using std::memcpy prevents alignment problems and removes an unnecessary ↵ | Daniel Schemmel | |
special case | |||
2023-07-06 | rename Allocator::location_info to Allocator::locationInfo for | Daniel Schemmel | |
consistency | |||
2023-06-26 | Remove parentheses around klee_ intrinsics from the help menu | Cristian Cadar | |
2023-06-26 | Fixed a couple of spelling issues in the help menu | Cristian Cadar | |
2023-06-26 | Improved help message for --exit-on-error-type=Abort | Cristian Cadar | |
2023-06-11 | SpecialFunctionHandler: use std::array for handlerInfo | Julian Büning | |
2023-06-09 | Fixed a format specifier pointed to by a compiler warning. | Cristian Cadar | |
2023-06-05 | make BatchingSearcher more readable | Julian Büning | |
2023-06-05 | fix BatchingSearcher's disabled time budget | Julian Büning | |
The functionality of the batching searcher that increases the time budget if it is shorter than the time between two calls to `selectState()` ignored the disabled time budget. Effectively, the batching searcher thus picks a very arbitrary time budget on its own. | |||
2023-06-05 | CMake: use built-in FindSQLite3 module | Julian Büning | |
available since CMake version 3.14 | |||
2023-05-26 | Improve error message when KDAlloc fails to create a mapping | Daniel Schemmel | |
2023-05-26 | Use unique_ptr for MemoryManager and avoid re-creating it in the first place | Martin Nowack | |
No need to re-create and re-alloc all the memory again after execution. | |||
2023-04-21 | use unique_ptr all throughout the solver chain | Daniel Schemmel | |
2023-04-21 | use unique_ptr in Solver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in QueryLoggingSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in IndependentSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in CexCachingSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in AssignmentValidatingSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in CachingSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in StagedSolverImpl | Daniel Schemmel | |
2023-04-21 | use unique_ptr in Z3SolverImpl | Daniel Schemmel | |
2023-04-21 | use unique_ptr in ValidatingSolver | Daniel Schemmel | |
2023-04-21 | use unique_ptr in STPSolverImpl | Daniel Schemmel | |
2023-04-20 | ensure that the right mt19937 constructor is chosen during overload resolution | Daniel Schemmel | |
2023-04-20 | remove unused rng adaptor functions | Daniel Schemmel | |
2023-04-20 | use `std::mt19937` instead of the custom implementation | Daniel Schemmel | |
2023-04-06 | Use newer C++ standard for KLEE's iterators; fixes deprecation warning | Martin Nowack | |
2023-04-06 | Support disabling compiler warnings; Use with external headers | Martin Nowack | |
2023-04-06 | Mark variable as potentially unused | Martin Nowack | |
2023-04-01 | remove include/klee/Support/IntEvaluation.h | Daniel Schemmel | |
2023-03-30 | Prevent fallthrough warning | Daniel Schemmel | |
2023-03-27 | Core/Executor: long double on i686 must be aligned to 4 bytes | Lukáš Zaoral | |
According to i686 System V ABI 2.1.1, long double must be aligned to 4 bytes. Thus, its size with padding is 12 bytes. Prior to this change only 10 bytes were used. This commit fixes the following out of bound pointer access. ``` $ clang -m32 -O0 -Xclang -disable-O0-optnone -g -emit-llvm -c test/Feature/VarArgAlignment.c -o varalign.bc $ klee varalign.bc KLEE: output directory is "/home/lukas/klee/klee-out-19" KLEE: Using Z3 solver backend KLEE: WARNING: undefined reference to function: printf KLEE: WARNING ONCE: calling external: printf(44120064, 1, 2, 3) at test/Feature/VarArgAlignment.c:23 17 i1, i2, i3: 1, 2, 3 l1: 4 i4: 5 ld1: 6.000000 KLEE: ERROR: test/Feature/VarArgAlignment.c:35: memory error: out of bound pointer KLEE: NOTE: now ignoring this error at this location KLEE: done: total instructions = 499 KLEE: done: completed paths = 1 KLEE: done: generated tests = 1 ``` | |||
2023-03-23 | stats: add termination class stats | Frank Busse | |
2023-03-23 | stats: add branch type stats | Frank Busse | |
2023-03-23 | stats: rename States -> ActiveStates, add States | Frank Busse | |
2023-03-23 | stats: add Allocations | Frank Busse | |
2023-03-23 | stats: rename numQueries/Queries -> SolverQueries, add Queries | Frank Busse | |
2023-03-23 | stats: add ExternalCalls | Frank Busse | |
2023-03-23 | stats: add QCacheHits/Misses | Frank Busse | |
2023-03-23 | stats: add InhibitedForks | Frank Busse | |
2023-03-23 | remove obsolete header | Daniel Schemmel | |
2023-03-22 | STP: add option to switch SAT solver: --stp-sat-solver and set default to ↵ | Frank Busse | |
CryptoMinisat | |||
2023-03-22 | Change `llvm_map_components_to_libnames` to `llvm_config` CMake function | Martin Nowack | |
With recent LLVM versions, this should allow to link against dynamic LLVM libraries. | |||
2023-03-20 | ConstantArrayExprVisitor: Fix detection of multiple array indices | Lukáš Zaoral | |
Previously, the code did two consecutive checks. First one succeeded only if the given index was not already seen and the second one did an analogous check but for arrays. However, if the given index usage was already detected for some array, its usage for another array that already had some other index detected would be silently skipped and the `incompatible` flag would not be set. Therefore, if the code contained e.g. the following conditional jump on two arrays with two symbolic indices, the multi-index access would remain undetected: if ((array1[k] + array2[x] + array2[k]) == 0) Resulting in the following output: KLEE: WARNING: OPT_I: infeasible branch! KLEE: WARNING: OPT_I: successful | |||
2023-03-20 | ConstantArrayExprVisitor: Deduplicate `visitConcat` and `visitRead` | Lukáš Zaoral | |
2023-03-20 | llvm14: PointerType::getElementType() was deprecated | Lukáš Zaoral | |
... for LLVM 14 in [1] and has already been removed from the LLVM 15 branch in [2]. Some changes are only temporary to silence the warning though, as Type::getPointerElementType() is planned to be removed as well. [3] [1] https://reviews.llvm.org/D117885/new/ [2] https://github.com/llvm/llvm-project/commit/d593cf7 [3] https://llvm.org/docs/OpaquePointers.html#migration-instructions | |||
2023-03-20 | llvm14: TargetRegistry.h was moved from Support to MC | Lukáš Zaoral | |
2023-03-17 | Fix compiler warning with newer compilers | Martin Nowack | |