about summary refs log tree commit diff homepage
path: root/test
AgeCommit message (Collapse)Author
2019-03-19Add Read consistency test case, spellingTimotej Kapus
2019-03-18Disable optimisation for functions that contain KLEE callsMartin Nowack
Compilers are allowed to hoist function calls and do GVE. This is currently done even without `--optimization` enabled. This is unfortunate in the context of KLEE function calls that might depend on specific code position without direct control flow dependencies. In such cases, function calls can be hoisted. To circumvent this, disallow to optimise functions that contain such calls by default. This might reduce optimisation for some functions containing such function calls but still allows it for all others. This patch adds an additional pass, that detects all functions starting with a prefix `klee_` and disable optimisations for functions containing such calls. This is enabled by default but can be disabled by `--klee-call-optimisation=false`.
2019-03-18make test/Feature/srem.c more explicitJulian Büning
2019-03-17Fix libc++ testcasesMartin Nowack
* remove wrapper script invocation and script * add build instruction to test cases * added additional checks * add check to avoid execution of tests if KLEE is not compiled with libc++
2019-03-17Added libcxx flagLukas Wölfer
2019-03-15Renamed --seed-out to --seed-file and --seed-out-dir to --seed-dir, and ↵Cristian Cadar
placed them in the seeding category. Moved options and option categories in Executor.cpp to the klee namespace.
2019-03-13Renamed --no-output to --write-no-tests and placed it in the test case ↵Cristian Cadar
category (with --write-cov, --write-cvcs etc.)
2019-03-12Exclude testcases not compatible with MSanMartin Nowack
2019-03-12Add support to compile KLEE with MemorySanitizer (MSan)Martin Nowack
2019-03-12Fixed comments to objectsize.ll and objectsize.leq49.llCristian Cadar
2019-03-12Removed unneeded and confusing disable-opt option, reformatted Optimize() ↵Cristian Cadar
function and updated some .ll tests to use --optimize=false instead of --disable-opt
2019-03-07tests: rename xxclang to clangxxFrank Busse
2019-03-07Renamed %llvmgcc and %llvmgxx to %clang and %clangxx respectively.Cristian Cadar
2019-03-05add regression test for LLVM PR39177Julian Büning
2019-03-05fix Executor::initializeGlobals for aliases pointing to another aliasJulian Büning
2018-12-19regression/2014-09-13-debug-info.c: use 'int: ' instead of 'data:'Frank Busse
2018-12-19Various fixes for ktest-toolFrank Busse
* switch to Python 3 * add file encoding * some PEP8 reformatting * fix TOCTOU for open * replace trimZeros() with rstrip * remove unused pos/args variables * remove --write-ints (print by default) * remove progname section (unused) * added/modified output rows - "data:" now shows the Python representation (for use in scripts) - "hex :" shows the hex representation - "text:" shows ASCII, all out-of-range/non-printable characters are replaced by a dot - "int :"/"uint:" print (unsigned) 8/16/32/64 bit integers * reduce width for object counter to needed minimum instead of 4 * refactor printing into function
2018-12-19Added checks option category, moved --optimize to starting category, renamed ↵Cristian Cadar
original --run-in option to --running-dir
2018-12-19Renamed --stop-after-n-instructions to --max-instructions, as suggested by @251Cristian Cadar
2018-11-23Implemented memalign with alignmentLukas Wölfer
2018-11-06fix: actually set -O0 in test/concrete/CMakeLists.txtJulian Büning
`-O0` has to be used in conjunction with, not instead of `-Xclang -disable-O0-optnone`
2018-11-05Fixed crash on zero size arraysLukas Wölfer
2018-11-05Check for stack overflow in a tested programMartin Nowack
Check if a state reaches the maximum number of stack frames allowed. To be performant, the number of stack frames are checked. In comparison, native execution checks the size of the stack. Still, this is good enough to find possible stack overflows. The limit can be changed with `-max-stack-frames`. The current default is 8192 frames.
2018-11-02Added test for the case where external calls are encountered but disallowedCristian Cadar
2018-11-02Replaced --no-externals and --allow-external-sym-calls with ↵Cristian Cadar
--external-calls, updated tests accordingly, and improved documentation on external calls
2018-11-02The test DeterministicSwitch.c does not need to allow external symbolic callsCristian Cadar
2018-10-29add %OOopt to recently added tests and ConcreteJulian Büning
2018-10-26Added gen-bout tool to generate ktest file (file.bout) using specified ↵Andrew Santosa
concrete arguments and files. * Sample use cases: * Using an interesting input as a seed, such as a crashing input. * Analyzing the path condition of a crashing input. * Also added the test: test/Runtime/POSIX/GenBout.c
2018-10-26llvm5: test, add -disable-O0-optnone to -O0Jiri Slaby
Otherwise optimizations done in klee won't have any effect. Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
2018-10-26llvm5: test, change objectsizeJiri Slaby
@llvm.objectsize has now three aguments, so fix the tests accordingly. Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
2018-10-24Add testcase for shift checkMartin Nowack
Validate non-optimised and optimised variant of added checks.
2018-10-24Add test case for div checkerMartin Nowack
Check that only important div instructions are annotated. Check the optimized case as well: the call to the validating function might not be part of the code anymore but already inlined - make sure the instruction still has the metadata attached.
2018-10-24Added lowering passRafael Zaehl
2018-10-23Added support for KLEE value-based array optimizationAndrea Mattavelli
2018-10-23Added support for KLEE index-based array optimizationAndrea Mattavelli
2018-10-17tests: disable CompressedExprLogging on zlib-less systemsFrank Busse
2018-10-10fix handling of failing external callsFrank Busse
Currently KLEE only handles the first segfault in external calls as it doesn't unblock SIGSEGV afterwards. This patch unblocks the signal and enables handling of multiple failing calls.
2018-10-10cmake/lit: add asan/non-asan, ubsan/non-ubsan flagsFrank Busse
2018-10-08add support for klee-replay on OSXFrank Busse
* also adds klee-replay as dependency for systemtests
2018-09-30Fix a crash when the last running state is terminated during mergingLukas Wölfer
2018-09-29Changed code to create up to 100 properly-numbered symbolic arguments, and ↵Cristian Cadar
add a corresponding check.
2018-09-29Add checks for correct usage of the POSIX model, together with an associated ↵Cristian Cadar
test.
2018-09-20Removed unused --sym-files 0 0 argument from FD_Fail test and rewrote the ↵Cristian Cadar
test to use FileCheck instead of grep
2018-09-20Updated IoCtl test to use --sym-stdin instead of --sym-files 0 x to make ↵Cristian Cadar
stdin symbolic and removed unused arguments to main.
2018-09-20Updated DirSeek test to use --sym-stdin instead of --sym-files 0 x to make ↵Cristian Cadar
stdin symbolic.
2018-09-10Add testcase to run POSIX environment and main without argumentsMartin Nowack
2018-09-10Add POSIX runtime as dependency for the test caseMartin Nowack
2018-09-10Unify the error message if that function has not been found.Martin Nowack
2018-09-06Use FileCheck and LINE instead of grep if possibleMartin Nowack
As we do not support LLVM 2.9 anymore, we can use FileCheck LINE instead of hard coding line numbers.
2018-09-06runtime: fix memory error in canonicalize_file_nameFrank Busse
Fixes #46 and reverts #47. As stated in #46, the solution works for musl, glibc etc. However, the code in stub.c is executed by uclibc and uclibc doesn't allocate the target buffer in realpath. The memory error occured while running df for 10min with DFS.