about summary refs log tree commit diff homepage
path: root/lib/Core
AgeCommit message (Collapse)Author
2014-09-14[LLVM3.5] Ensure Twine definition is available from Executor.h.Daniel Dunbar
2014-09-14Fix LLVM3.5 compilation due to switching to std::error_codeDan Liew
2014-09-14[LLVM3.5] Update for move of CFG.h into IR.Daniel Dunbar
- Mostly fixed by removing unnecessary references.
2014-09-14[LLVM3.5] Update for CallSite.h move into IR/.Daniel Dunbar
2014-09-14[Core] Fix a bug in how source file names were written in .istats files.Daniel Dunbar
- KCachegrind appears to expect the first function name to be preceeded by the name of the file it appears in. Otherwise, it will end up creating two different records for the function, one of which has no file name and won't have any statistics.
2014-09-14[Core] Remove support for "--use-asm-addresses".Daniel Dunbar
- I suspect no one is using this feature, and I'm not sure it is well conceived either. Ripping it out for now in lieu of bothering to maintain it.
2014-09-13[Core] Fix implementation of FRem for LLVM 3.3+, which was wrong (caught by ↵Daniel Dunbar
FloatingPointOps.ll).
2014-09-13Small edits to test the Travis CI trigger.Cristian Cadar
2014-09-13Add KLEE specific DEBUG macros.Daniel Dunbar
- This allows us to build in +Asserts mode even when LLVM isn't (by disabling the checks in that mode). - Eventually it would be nice to just move off of LLVM's DEBUG infrastructure entirely and just have our own copy, but this works for now. - Fixes #150.
2014-09-12[Core] Fix some warnings in -Asserts builds.Daniel Dunbar
2014-09-12Tweak the workarounds for multiple definition of PACKAGE_* macros from ↵Daniel Dunbar
config.h files. - There seems to be a better solution for this by defining a macro prefix, per: http://www.gnu.org/software/autoconf-archive/ax_prefix_config_h.html but I have no experience with that and it looks like it might involve rewriting a bunch of our macro checks.
2014-07-04Fix regression reported by Michael Esser and Andrew WatsonDan Liew
(independently). In our recently switch to llvm::raw_ostream (and friends) (I think this is d934d983692c8952cdb887cbcd59f2df0001b9c0) we forgot to flush the llvm::raw_string_ostream to the underlying string used for error report files (e.g. test000001.overshift.err) so we would end up writing an empty string to error report files. Also added a test case to catch this.
2014-06-06Merge pull request #129 from ahorn/masterCristian Cadar
Add SimplifyExpressions command line option
2014-05-29Remove #include <iostream> to avoid static constructorsMartin Nowack
iostream injects static constructor function into every compilation unit. Remove this to avoid it.
2014-05-29Refactoring from std::ostream to llvm::raw_ostreamMartin Nowack
According to LLVM: lightweight and simpler implementation of streams.
2014-05-19Rename command line option for equality substitutionsahorn
2014-05-12Add SimplifyExpressions command line optionahorn
Allow users to bypass ConstraintManager::simplifyExpr(ref<Expr>).
2014-04-24Merge pull request #116 from MartinNowack/fix_mallocDan Liew
Fix handling of memory usage in KLEE.
2014-04-24Removed ununsed Executor field in WeightedRandomSearcher to silenceDan Liew
clang warning.
2014-04-24Renamed GetTotalMemoryUsage to GetTotalMallocUsageMartin Nowack
2014-04-24Fix handling of memory usage in KLEE.Martin Nowack
Memory usage API in LLVM since 3.3 is not working the way it is intended by KLEE. This ports the pre 3.3. version to KLEE. Fixes the malloc test case.
2014-04-14Fix mistake in StatsTracker. It should be reporting process ID butDan Liew
instead it was reporting real user ID of the process.
2014-04-14Replace sys::Process::GetCurrentUserId() with getuid() because itDan Liew
has been removed in LLVM3.4
2014-04-14Tidy up code by using LLVM's V2 path API only and removing usesDan Liew
of old V1 path API. LLVM2.9 supports LLVM's V2 path API. Because that is the minimum version we support we should just use this API everywhere so we reduce the number of #if LLVM_VERSION_CODE macros and duplicated code.
2014-04-14Use SmallString and llvm::sys::path/fs API of LLVM 3.4 becauseMartin Nowack
Old Path API was removed
2014-02-24Improved help message for make-concrete-symbolic and fixed some typos.Cristian Cadar
2014-02-06Implement const_iterator interface for SpecialFunctionHandler soDan Liew
that clients can access HandlerInfo nicely.
2014-01-12Merge pull request #68 from MartinNowack/feature_kleeInternalFunctionsDan Liew
Feature klee internal functions
2013-12-21Do not install KLEE's internal libraries.Dan Liew
2013-12-19Added a few comments to Executor::getLastNonKleeInternalInstruction()Dan Liew
emphasising that the function cannot be returned from early.
2013-12-19When writing stack traces for bugs write the location in the assembly.llDan Liew
file as well.
2013-12-19If error location information is missing be explicit about it. ThisDan Liew
is more helpful because often the next message is "Now ignoring error at this location". Which is slightly confusing when no location is shown.
2013-12-19Allow to specify KLEE-internal functionsMartin Nowack
KLEE provides runtime library functions to do detection of bugs (e.g. overflow). This runtime functions are not the location of the bugs but it is the next non-runtime library function from the stack. Use the caller inside that function to indicate where the bug is.
2013-12-06Deprecate LLVM 2.8 and lowerMartin Nowack
2013-12-05Fix timer leakMartin Nowack
2013-11-13Fix using assembler addresses for global variablesMartin Nowack
Format of assembler address strings are different with newer LLVM version (They don't have a prefix anymore). This fix takes care of newer LLVM versions (>=3.3) as well.
2013-10-11MetaSMT builder, solver and command-line options.Hristina Palikareva
2013-09-25Merge pull request #25 from paulmar/masterCristian Cadar
Added some of the common *at functions & others to the model. Obey --max-forks in switch statements.
2013-09-25Obey --max-forks in switch statementsPaul Marinescu
2013-09-21Merge pull request #17 from MartinNowack/LLVM33Cristian Cadar
Make KLEE compile with LLVM 2.3.
2013-08-30Merge branch 'CompilerWarnings' of https://github.com/MartinNowack/klee into ↵Cristian Cadar
MartinNowack-CompilerWarnings
2013-08-29Revert "Use new PathV2 interface for LLVM 2.9 and higher"Martin Nowack
This reverts commit 5c059018c02a7c7db252a3cb636a39c89c430a06.
2013-08-29Merge branch 'CompilerWarnings' of https://github.com/MartinNowack/klee into ↵Cristian Cadar
MartinNowack-CompilerWarnings
2013-08-29Use new PathV2 interface for LLVM 2.9 and higherMartin Nowack
Enable PathV2 interface starting from LLVM 2.9 and do some minor include cleanup.
2013-08-28Merge branch 'CompilerWarnings' of https://github.com/MartinNowack/klee into ↵Cristian Cadar
MartinNowack-CompilerWarnings
2013-08-28Fix constness warnings issued by gcc 4.7Martin Nowack
2013-08-28Silence warning of deprecated PathV1 usageMartin Nowack
2013-08-27Handle constant arrays as wellMartin Nowack
2013-08-27Port to LLVM 3.3Martin Nowack
Major changes are: - Switching to llvm-link to build archive files - Use GetMallocUsage instead of GetTotalMemoryUsage (be aware of bug in LLVM 3.3 http://llvm.org/bugs/show_bug.cgi?id=16847) - intrinsic library functions like memcpy/mov/set use weak linkage to be replaced by e.g. uclibc functions - rewrote linking with library - enhanced MemoryLimit test case to check if mallocs were successful
2013-08-16Merge pull request #9 from delcypher/refactor-arg-initCristian Cadar
Slight refactor of code initialising memory for argments/environment c-strings