Age | Commit message (Collapse) | Author |
|
introduced in LLVM 2.7. Previously KLEE would emit the following error
message when ``IntrinsicLowering::LowerIntrinsicCall()`` was called on
the intrinsic
```
LLVM ERROR: Code generator does not support intrinsic function 'llvm.objectsize.i64.p0i8'!
```
The ``IntrinsicCleaner`` pass now lowers this intrinsic to a constant
integer depending on the second argument to the intrinsic. This
corresponds to the case where the size of the object pointed to by the
first argument is unknown.
An alternative design would be to handle this intrinsic in the Executor
where is actually possible to know the size of objects during execution.
However that would be much more complicated because if the pointer is
symbolic we would have to fork for every object that could be pointed
to.
The implementation is similar to #260 but we handle the second argument
to the intrinsic correctly and also have a simple test case.
Unfortunately we have to have a different version of the test case
for LLVM 2.9 because the expected suffix for the intrinsic is different
in LLVM 2.9.
|
|
MemorySanitzer and ThreadSanitizer environment variables when running
lit tests.
This makes it easy suppress errors in sanitized versions of KLEE
|
|
This is for use with llvm-lit --param=klee_opts=...
Fixes lit.cfg to not have an extranous space behind the klee command.
Augments ConcreteTest to accept and pass arguments to klee.
Augments all the ConcreteTest cases to wrap %klee in quotes.
Without wrapping %klee the extra arguments will be seens as arguments
to ConcreteTest.py resulting in an unknown argument error.
|
|
|
|
- You can now make tests disabled, or expected to fail, by writing something like:
// XFAIL: llvm-3.4
or
// REQUIRES: not-llvm-3.4
- This mechanism doesn't support version comparisons, it is mostly intended to
help with switching over to new LLVM versions and incrementally working
through the test failures.
|
|
Fixes #96.
|
|
|
|
Allow passing arbitrary command line flags to klee and kleaver when running llvm-lit
|
|
variables in llvm-lit. This should hopefully fix the build bot.
The propagation of environmental variables was also slightly refactored.
|
|
when running llvm-lit. This is done by doing something like
$ cd test/
$ llvm-lit --param klee_opts=--xxx --param kleaver_opts=--yyy .
This would pass "--xxx" as an extra option to KLEE when running
tests and would pass "--yyy" as an extra option to kleaver when
running tests.
This feature has been added to make it easy to pass different flags to
KLEE or Kleaver without needing to modify tests or recompile KLEE with
different defaults (yuck!).
|
|
standing FIXME:
|
|
are now broken and will be fixed shortly.
|
|
in test environment.
|
|
|
|
version that KLEE and llvm-as use is the same.
|
|
This is needed because the helper tool 'not' is used by some tests
|
|
llvm-lit from LLVM3.3 to actually run KLEE's testsuite.
Things still seem to be broken though.
|
|
- Not working yet.
Also, ditch a bunch of unused substitution variables from the site.exp config
file.
git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@102872 91177308-0d34-0410-b5e6-96231b3b80d8
|