Age | Commit message (Collapse) | Author |
|
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`.
|
|
|
|
|
|
them to 0
|
|
namespace in Executor.cpp
|
|
|
|
|
|
|
|
constraint solving category
|
|
placed them in the seeding category. Moved options and option categories in Executor.cpp to the klee namespace.
|
|
over all help messages.
|
|
|
|
|
|
|
|
KModule.cpp in there
|
|
(and incorrectly-implemented) function for hiding all options unrelated to a set of categories.
|
|
|
|
|
|
|
|
|
|
use-construct-hash-z3 to the expression building/printing category
|
|
printing category
|
|
category for building and printing expressions
|
|
and "default=off" in --help
|
|
|
|
reformatting).
|
|
improved help messages
|
|
UserSearcher.cpp
|
|
|
|
files
|
|
MemoryManager.cpp
|
|
|
|
Add missing initialisation for `closedMean` for `MergeHandler`
|
|
|
|
function and updated some .ll tests to use --optimize=false instead of --disable-opt
|
|
Co-Authored-By: ccadar <c.cadar@imperial.ac.uk>
|
|
merging options
|
|
|
|
|
|
|
|
provides a workaround for LLVM bug PR39177, which affects LLVM
versions 3.9 - 7.0.0: https://bugs.llvm.org/show_bug.cgi?id=39177
This commit is intended to be reverted once support for LLVM
versions <= 7 is dropped from KLEE.
|
|
a help message.
|
|
|
|
|
|
|
|
|
|
--max-static-... options under the termination category of options
|
|
|
|
|
|
|