Age | Commit message (Collapse) | Author | |
---|---|---|---|
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 | |
2023-03-17 | [cmake] Use LLVM's CMake functionality only | Martin Nowack | |
LLVM became more complex, use LLVM's CMake functionality directly instead of replicating this behaviour in KLEE's build system. Use the correct build flags provided by LLVM itself. This is influenced by the way LLVM is built in the first place. Remove older CMake support (< 3.0). | |||
2023-03-16 | Integrate KDAlloc into KLEE | Daniel Schemmel | |
2023-03-16 | The KDAlloc slot allocator is useful for small sized allocations | Daniel Schemmel | |
2022-09-26 | Improve the message for when large arrays become symbolic. Only print this ↵ | Cristian Cadar | |
warning once per array. Add test case. | |||
2022-09-24 | Pass llvm.experimental.noalias.scope.decl to IntrinsicLowering so that it ↵ | Pavel | |
strips out these intrinsics | |||
2022-09-14 | Eliminate .undefined_behavior.err category and simplify tests | Pavel | |
2022-09-14 | Introduce separate categories for different kinds of undefined behavior | Pavel | |
2022-09-14 | Support UBSan-enabled binaries | Pavel Yatcheniy | |
2022-08-26 | Use true instead of Z3_TRUE (removed in z3 4.11.0) | Jerry James | |
2022-07-24 | Support arguments of width 128, 256 and 512 bits for external calls | Pavel | |
2022-07-04 | Inline asm external call | Mikhail | |
2022-07-04 | Fix memory leak in crosscheck core solver mechanism | Daniel Schemmel | |
2022-06-30 | rename CallSite to CallBase | Frank Busse | |
2022-06-30 | remove LLVM < 9 | Frank Busse | |
2022-06-28 | Implement getArrayForUpdate iteratively | Daniel Schemmel | |
2022-06-26 | Intrinsics: Add support for @llvm.f{ma,muladd}.f* | Lukáš Zaoral | |
2022-06-15 | Spelling Fixes | m-davis | |
2022-06-13 | .err files: minor readability changes to stack trace output | Frank Busse | |
2022-06-13 | Update SpecialFunctionHandler.cpp | Chaoqi Zhang | |
use size() to get N in bind(), just like the way in prepare(). | |||
2022-05-05 | cl flags: document default values, remove dead option: --replay-keep-symbolic | Frank Busse | |
2022-04-25 | use mallinfo2 if available | Frank Busse | |
2022-04-01 | Remove unnecessary call to deprecated function sqlite3_enable_shared_cache | Cristian Cadar | |
2022-03-21 | Fixed a wrong type when computing memory usage on macOS | Cristian Cadar | |
2022-03-17 | remove obsolete KLEE_LLVM legacy defines | Julian Büning | |
2022-03-17 | LLVM < 6 leftovers | Julian Büning | |
2022-03-17 | remove LLVM < 6 from sources | Frank Busse | |
2022-03-17 | Fixed GetTotalMallocUsage on macOS to look at all zones. (The test ↵ | Cristian Cadar | |
MemoryLimit.h fails on macOS 12.1 without this fix.) | |||
2022-03-09 | Core/Executor: Fix unaligned write of fp80 arguments | Lukáš Zaoral | |
... in Executor::callExternalFunction. Fixes the following error reported in Feature/VarArg{Alignment,LongDouble}.c tests: lib/Expr/Expr.cpp:366:5: runtime error: store to misaligned address 0x7ffc011d3528 for type 'long double', which requires 16 byte alignment | |||
2022-03-09 | Core/ExecutionState: Fix uninitialized reads in unit tests | Lukáš Zaoral | |
... by initialising all members of fundamental types of the ExecutionState class. Fixes the following error in SearcherTest.{Two,}RandomPath unit tests: lib/Core/ExecutionState.cpp:114:22: runtime error: load of value 254, which is not a valid value for type 'bool' | |||
2022-01-07 | stats: remove reachableUncovered (unused) | Frank Busse | |
2022-01-06 | Comment the code dealing with un/flushed bytes, and resolve old naming issue ↵ | Cristian Cadar | |
by renaming flushMask to unflushedMask | |||
2022-01-05 | introduce BranchTypes | Frank Busse | |
2022-01-05 | Remove outdated reference to klee_make_symbolic_name | Cristian Cadar | |
2021-12-23 | Introduce termination categories | Frank Busse | |
Track all path terminations: esp. for debugging or visualising a persistent process tree (with or without full MoKlee integration) it is helpful to know the exact reason (StateTerminationType) why a path terminated. | |||
2021-12-20 | llvm13: llvm::APInt::toString has been moved to StringExtras.h | Lukas Zaoral | |
See: https://reviews.llvm.org/D103888 | |||
2021-12-20 | llvm13: CreateGEP no longer accepts nullptr | Lukas Zaoral | |
See: https://reviews.llvm.org/D105653 | |||
2021-12-20 | llvm13: CreateLoad API with implicit types has been deprecated | Lukas Zaoral | |
See: https://github.com/llvm/llvm-project/commit/6312c53870897435b38881795460ad9f34bf9819 | |||
2021-12-20 | llvm13: llvm::fs::F_None has been removed | Lukas Zaoral | |
... and should be replaced with llvm::fs::OF_None since LLVM 7. See: https://reviews.llvm.org/D101506 https://github.com/llvm/llvm-project/commit/1f67a3cba9b09636c56e2109d8a35ae96dc15782 | |||
2021-12-20 | Support/FileHandling.cpp: rewrite to C++14 | Lukas Zaoral | |
2021-11-20 | Fixed fail with preferCex, removed relation from first argument | Taras Bereznyak | |
2021-11-02 | Core/Executor: use `nullptr` instead of `0` | ᴀᴇꜱᴏᴘʜᴏʀ | |
Since KLEE requires C++14, we should prefer `nullptr` to plain `0`. | |||
2021-10-27 | Module/RaiseAsm: Support i686 target as well | Lukas Zaoral | |
Add i686 to the list of supporterd targets by this transformation pass. | |||
2021-10-27 | Module/RaiseAsm: Fix crash when host and bitcode target triples differ | Lukas Zaoral | |
RaiseAsm always created a target machine for the host target and not for the bitcode one. Therefore, KLEE could crash on i686 bitcode as x86_64 target machine cannot be used to raise i686 assembly. Fixes: LLVM ERROR: 64-bit code requested on a subtarget that doesn't support it! | |||
2021-09-10 | llvm12: Implement llvm.abs intrinsic | Lukas Zaoral | |
The vector variants are not implemented at the moment. See: https://reviews.llvm.org/D84125 Co-authored-by: Lukas Zaoral <lzaoral@redhat.com> Co-authored-by: Martin Nowack <m.nowack@imperial.ac.uk> |