about summary refs log tree commit diff homepage
path: root/tools
AgeCommit message (Collapse)Author
2023-03-17Fix uninitialised memory access while reading last path entryMartin Nowack
`>>` can fail and sets internal error information in the istream. Check the state of istream before pushing the value onto the buffer.
2023-03-17Fix building of runtime library and klee-replayMartin Nowack
Former build system provided additional flags for building bitcode while they were not required, e.g. under BSD or MacOS.
2023-03-17[MemSan] Mark memory objects modified by syscalls as initialisedMartin Nowack
2023-03-17[cmake] Use LLVM's CMake functionality onlyMartin 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-02-17create klee-last as a relative linkDaniel Schemmel
2023-02-17Fix integer overflowDaniel Schemmel
2022-12-09Fixed some leaks in klee-replayCristian Cadar
2022-09-14Support UBSan-enabled binariesPavel Yatcheniy
2022-07-04Inline asm external callMikhail
2022-06-30remove LLVM < 9Frank Busse
2022-06-27Fix error with empty EntryPointSaveliy Grigoryev
2022-05-06Renamed gen-random-bout to ktest-randgenCristian Cadar
2022-05-06Updated klee-zesti to use ktest-gen instead of gen-boutCristian Cadar
2022-05-06Renamed gen-bout to ktest-genCristian Cadar
2022-05-05cl flags: document default values, remove dead option: --replay-keep-symbolicFrank Busse
2022-04-28Make Uclibc support a runtime option, not a compile-time one.Gleb Popov
2022-03-17remove obsolete KLEE_LLVM legacy definesJulian Büning
2022-03-17remove LLVM < 6 from sourcesFrank Busse
2022-01-07klee-stats: fix --print-moreFrank Busse
2022-01-07klee-stats: add --print-columnsFrank Busse
2022-01-07klee-stats: do not print summary line for csv/readable-csvFrank Busse
2022-01-07klee-stats: fix BCov calculation for zero br instructionsFrank Busse
2022-01-07klee-stats: rename/reorder/document columnsFrank Busse
* rename columns for consistency * reorder columns and group by "categories" * add missing documentation * fix existing documentation * show MaxMem as float
2022-01-05Do not use stat64 directly in gen-random-boutCristian Cadar
2021-12-20llvm13: llvm::cl::GeneralCategory is no longer a globalLukas Zaoral
Therefore, llvm::cl::getGeneralCategory() should be used instead. See: https://reviews.llvm.org/D105959
2021-11-02ktest-tool: --extract: warn if object can't be foundFrank Busse
2021-11-02klee-stats: order remaining columns alphabeticallyFrank Busse
2021-10-27tools/klee: Warn if module and host target triples differLukas Zaoral
... as running a bitcode with a different target triple may result in unexpected crashes or assertion violations.
2021-05-04differentiate between partial and completed paths in summary and fix paths ↵Frank Busse
stats when not dumping states
2021-04-29Fix erroneous klee-stats legend for --print-allJordy Ruiz
Only absolute times were displayed, and were marked as %. Fixes CexCacheTime, ForkTime and ResolveTime columns.
2021-04-18klee-replay: Fix -Wformat-truncation warningLukas Zaoral
Increase the size of the buffer to PATH_MAX in create_link as that is the maximal possible length of fname and check whether output truncation occurred. Fixes: tools/klee-replay/file-creator.c: In function 'create_file': tools/klee-replay/file-creator.c:55:31: warning: '%s' directive output may be truncated writing up to 4095 bytes into a region of size 64 [-Wformat-truncation=] 55 | snprintf(buf, sizeof(buf), "%s.lnk", fname); | ^~ ...... 344 | target = tmpname; | ~~~~~~~ In file included from /usr/include/stdio.h:866, from tools/klee-replay/file-creator.c:16: /usr/include/bits/stdio2.h:70:10: note: '__snprintf_chk' output between 5 and 4100 bytes into a destination of size 64 70 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 71 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-02-16add klee_messages for C++ exception handling supportJulian Büning
otherwise, it is hard to tell whether EH support is available or not
2021-02-16add ifdefs for C++ exception handlingJulian Büning
restoring old behavior without EH support
2021-02-16renaming 'libcxx' -> 'libc++'Julian Büning
2020-12-04llvm11: Use getCalledOperand instead of getCalledValueLukas Zaoral
CallBase::getCalledValue has been deprecated by getCalledOperand since LLVM 8 and has been removed in LLVM 11 See: https://reviews.llvm.org/D78882
2020-12-04llvm11: Make conversions from StringRef to std::string explicitLukas Zaoral
The same applies to SmallString. See: llvm/llvm-project@777180a#diff-497ba4c0c527a125d382b51a34f32542
2020-11-11klee-stats: add (readable) csv format (--table-format=readable-csv/csv)Frank Busse
2020-11-11Do not redefine fgetc_unlocked and fputc_unlocked unconditionally.Gleb Popov
2020-11-09Added fortified library (for -D_FORTIFY_SOURCE), to be linked when uclibc is ↵Cristian Cadar
used.
2020-11-04Rename FreeStanding to Freestanding where appropriateMartin Nowack
2020-11-04Link to the different runtime libraries depending on the application to test.Martin Nowack
Currently, only 32bit vs. 64bit is supported.
2020-10-12Exception handling only for LLVM >= 8.0.0Julian Büning
2020-10-12Implemented support for C++ ExceptionsFelix Rath
We implement the Itanium ABI unwinding base-API, and leave the C++-specific parts to libcxxabi. Co-authored-by: Lukas Wölfer <lukas.woelfer@rwth-aachen.de>
2020-09-30klee-stats: fix behaviour for broken/empty DBsFrank Busse
* fill missing columns in rows with None * fill previous rows with None if new column encountered * error for --to-csv when more than one input directory given
2020-09-17[gen-bout] Support multiple symbolic filesTimotej Kapus
2020-09-17Add klee-zesti a ZESTI like wrapper scriptTimotej Kapus
klee-zesti takes concrete arguments, files and stdin of the program under tests converts them to a seed and then runs klee with that seed. This emulates the interface of ZESTI.
2020-08-23klee-stats: check for a run.stats file in the klee-out directory, to prevent ↵Jordy Ruiz
outputting wrong data. When KLEE crashes, it produces an empty info file, so it is not enough to check for the existence of an info file. Previously, table columns would mismatch and return data labeled with the wrong directory names.
2020-07-01Separate constraint set and constraint managerMartin Nowack
2020-06-29Implement fshr/fshl intrinsicsAlastair Reid
Changes: - IntrinsicCleaner accepts fshr/fshl as accepted intrinsics - Executor::executeCall converts fshr/fshl to urem/zext/concat/shift/extract - Klee/main suppresses warnings about externals that are LLVM reserved (i.e., begin with "llvm.") - New test exercises 32 and 7 bit versions including oversize shift values Test values are based on LLVM's test for fshl/fshr - Changes that depend on existence of fshr/fshl are guarded by #if LLVM_VERSION_CODE >= LLVM_VERSION(7, 0) or ; REQUIRES: geq-llvm-7.0
2020-04-30Moved header files that were placed directly in include/klee/ into ↵Cristian Cadar
appropriate existing directories and a new directory Statistics; a few missing renames.