| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-03-05 | Fallback on UB | Nguyễn Gia Phong | |
| This is not benefitting off UBSan, but there are too many moving parts now that a common denominator is needed for me to mentally keep track of things. (Yes, it's embarrassing that I commit less often working on software engineering research software, now I'm paying the price.)-; | |||
| 2024-03-05 | Support 1-byte metavariables | Nguyễn Gia Phong | |
| 2024-03-05 | Make symbolic stdout more flexible | Nguyễn Gia Phong | |
| 2024-03-05 | Add search heuristic for patch locations | Nguyễn Gia Phong | |
| 2024-03-05 | Avoid resolving combined SMT formulae | Nguyễn Gia Phong | |
| 2024-03-05 | Half-bake decision clustering | Nguyễn Gia Phong | |
| 2024-03-05 | Conclude concrete execution impl | Nguyễn Gia Phong | |
| 2024-03-05 | Lay ground work for concrete execution | Nguyễn Gia Phong | |
| 2024-03-05 | Clone state more completely | Nguyễn Gia Phong | |
| 2024-03-05 | Implement differentiator extraction | Nguyễn Gia Phong | |
| 2024-03-05 | Save exited states' formula | Nguyễn Gia Phong | |
| 2024-03-05 | Receive instrumented revision number | Nguyễn Gia Phong | |
| 2024-03-05 | Implement differencial test structure | Nguyễn Gia Phong | |
| 2024-02-29 | Final changes to release notes for v3.1 | Cristian Cadar | |
| 2024-02-29 | Add support to fully concretise objects if modified externally | Martin Nowack | |
| Propagate ExternalCallPolicy to allow user-based selection. | |||
| 2024-02-29 | Support external call concretisation policies for referenced objects | Martin Nowack | |
| Provide an additional argument to select the concretisation policy. Fix a bug where the concretisation of a shared memory object was visible across different states by retrieving a writable object state first. | |||
| 2024-02-29 | Refactor `ObjectState::flushToConcreteStore` to use `toConstant` | Martin Nowack | |
| Use existing `Executor::toConstant()` function to transform a symbolic byte of an `ObjectState` to its concrete representation. This will also add constraints if required. | |||
| 2024-02-29 | Use correctly constrained constants if the memory object is fully symbolic | Martin Nowack | |
| Before, only partially symbolic variables have been concretized. Now, every object that is not fully concrete is concretized correctly this includes fully symbolic objects. | |||
| 2024-02-29 | Correctly update symbolic variables that have been changed externally | Martin Nowack | |
| Before, external changes to symbolic variables have not been propagated back to their internal representation. Do a byte-by-byte comparison and update object state if required. | |||
| 2024-02-29 | Test case for externally concretized variables and constraint fully symbolic ↵ | Martin Nowack | |
| variables The test case is based on the example provided by Mingyi Liu from the KLEE mailing list. | |||
| 2024-02-29 | Release notes for KLEE 3.1 | Cristian Cadar | |
| 2024-02-29 | Set version number to 3.1 | Cristian Cadar | |
| 2024-02-28 | Compare LLVM_VERSION_SHORT to "140" rather than "14". | Michael Herstine | |
| In commit 2b07721, support was added to p-libcxx.inc & p-llvm.inc for LLVM versions 14+ (in which, apparently, certain build flags were changed). To detect these recent versions, the variable LLVM_VERSION_SHORT was compared numerically to "14"-- the intent obviously being to express "LLVM version 14 or later". However, in both v-clang.inc & v-llvm.inc, LLVM_VERSION_SHORT is defined as the concatenation of LLVM_VERSION_MAJOR and LLVM_VERSION_MINOR. Therefore, on a machine with, say, LLVM 13.0 installed, LLVM_VERSION_SHORT will be "130" which compares as larger than "14". This patch changes the comparison to be against "140". | |||
| 2024-02-27 | Small refactorings and reformatting in callExternalFunction | Cristian Cadar | |
| 2024-02-27 | Simplified callExternalFunction by using toConstant instead of getValue | Cristian Cadar | |
| 2024-02-27 | Extend toConstant() to take an additional boolean argument that decides ↵ | Cristian Cadar | |
| whether the expression is concretised. Also changed a C string argument to std::string. | |||
| 2024-02-27 | This commit fixes the concretization of arguments following an external call ↵ | Cristian Cadar | |
| with symbolic arguments. It also introduces a new external call policy, where the symbolic inputs are left unconstrained following such a call, useful for certain external calls such as printf. | |||
| 2024-02-27 | Two test cases exercising two policies for calling external calls with ↵ | Cristian Cadar | |
| symbolic arguments. One of them is currently expected to fail. | |||
| 2024-02-19 | Rename --ptree-batch-size to --exec-tree-batch size, and ↵ | Cristian Cadar | |
| --compress-execution-tree to --compress-exec-tree. Fix an incorrect reference to --write-exec-tree. | |||
| 2024-02-17 | Remove the not Darwin requirement for the test TargetMismatch.c | Cristian Cadar | |
| 2024-02-17 | Fixed incorrect reference in ExternalCallWarnings | Cristian Cadar | |
| 2024-02-16 | drop llvm 9 and 10 | Daniel Schemmel | |
| 2024-02-12 | Fix brittleness in Feature/VarArgByVal test | Daniel Schemmel | |
| 2024-02-08 | Add space between include and main function for updated test cases | MartinNowack | |
| Co-authored-by: Daniel Schemmel <danielschemmel@users.noreply.github.com> (cherry picked from commit 1ea1a7576300a4da01d925df42db109660ef54d2) | |||
| 2024-02-08 | Mention default value in help text for `--strip-all` and `--strip-debug` | MartinNowack | |
| Co-authored-by: Daniel Schemmel <danielschemmel@users.noreply.github.com> (cherry picked from commit 5d61fb6114bafbf67c59899d15e397684d4ceb28) | |||
| 2024-02-08 | Use `std::` namespace for `uint64_t` | MartinNowack | |
| Co-authored-by: Daniel Schemmel <danielschemmel@users.noreply.github.com> (cherry picked from commit 5d9af025ee5a01b1650f11ed0612a10357a98308) | |||
| 2024-02-08 | Enable CI to test newer LLVM versions | Martin Nowack | |
| 2024-02-08 | Support newer LLVM versions in `lit` | Martin Nowack | |
| 2024-02-08 | Update test case for expressions using `udiv`, `urem`, `sdiv` and `srem` | Martin Nowack | |
| They are not supported anymore for newer LLVM versions. | |||
| 2024-02-08 | Handle check for thrown libc++ exceptions more general | Martin Nowack | |
| The wording changed slightly in newer versions. Update the test case to support this. | |||
| 2024-02-08 | Disable `2018-10-30-llvm-pr39177.ll` for newer LLVM versions. | Martin Nowack | |
| The optimiser generates different code and calls fwrite directly instead. | |||
| 2024-02-08 | Disable unsupported passes for newer LLVM versions | Martin Nowack | |
| Similar functionality needs to be added using a new pass manager | |||
| 2024-02-08 | Add support to `aligned_alloc` generated by LLVM | Martin Nowack | |
| Handle like `memalign` for now. | |||
| 2024-02-08 | Add support for `Intrinsic::get_rounding` for LLVM 16 | Martin Nowack | |
| `Intrinsic::flt_rounds` got removed | |||
| 2024-02-08 | Use APIs of newer LLVM versions instead of unsupported ones | Martin Nowack | |
| 2024-02-08 | Fix test case: using unsupported `CHECK_NEXT` instead of `CHECK-NEXT` | Martin Nowack | |
| 2024-02-08 | Fix test cases to support opaque pointers | Martin Nowack | |
| 2024-02-08 | Add support for opaque pointers | Martin Nowack | |
| 2024-02-08 | Explicitly enable opaque pointer support for LLVM 15 | Martin Nowack | |
| This automatically lifts old-style pointers to opaque pointers. More recent versions use opaque pointers automatically and do not need an explicit enabling. | |||
| 2024-02-08 | Explicitly build KLEE's exception handling runtime with C++11 | Martin Nowack | |
| Currently, we assume C++11 support being used to by the tested software. This needs to change if newer C++ standards should be supported. | |||
