Console View
|
|
|
|||||
| 150355 | pcc |
|
|||
|
Teach KLEE how to handle new ConstantDataSequential type. Patch by arrowdodger! |
|||||
| 150354 | pcc |
|
|||
|
Update for LLVM changes - there is no more "unwind" instruction. Patch by arrowdodger! |
|||||
| 149528 | dyatkovskiy |
|
|||
|
Second compatability fix for SwitchInst refactoring (added compatability with llvm versions < 3.1). |
|||||
| 149484 | dyatkovskiy |
|
|||
|
Compatability fix for SwitchInst refactoring. The purpose of refactoring is to hide operand roles from SwitchInst user (programmer). If you want to play with operands directly, probably you will need lower level methods than SwitchInst ones (TerminatorInst or may be User). After this patch we can reorganize SwitchInst operands and successors as we want. What was done: 1. Changed semantics of index inside the getCaseValue method: getCaseValue(0) means "get first case", not a condition. Use getCondition() if you want to resolve the condition. I propose don't mix SwitchInst case indexing with low level indexing (TI successors indexing, User's operands indexing), since it may be dangerous. 2. By the same reason findCaseValue(ConstantInt*) returns actual number of case value. 0 means first case, not default. If there is no case with given value, ErrorIndex will returned. 3. Added getCaseSuccessor method. I propose to avoid usage of TerminatorInst::getSuccessor if you want to resolve case successor BB. Use getCaseSuccessor instead, since internal SwitchInst organization of operands/successors is hidden and may be changed in any moment. 4. Added resolveSuccessorIndex and resolveCaseIndex. The main purpose of these methods is to see how case successors are really mapped in TerminatorInst. 4.1 "resolveSuccessorIndex" was created if you need to level down from SwitchInst to TerminatorInst. It returns TerminatorInst's successor index for given case successor. 4.2 "resolveCaseIndex" converts low level successors index to case index that curresponds to the given successor. Note: There are also related compatability fix patches for dragonegg, klee, llvm-gcc-4.0, llvm-gcc-4.2, safecode, clang. |
|||||
|
|||||
| 148961 | cristic |
|
|||
|
Patch from Ben Gras which "makes Klee look for the libraries in the install location instead of the compile-tree location if a compile-time macro is enabled." |
|||||
| 148405 | cristic |
|
|||
|
Updated uclibc archives to work with current installation instructions. |
|||||
| 148402 | cristic |
|
|||
|
Nice patch by Gang Hu, Heming Cui and Junfeng Yang fixing a memory leak in KLEE. From Gang Hu: "The memory leak is caused by two reasons. First, the MemoryObject objects are not freed, until the MemoryManager is destroyed. Second, when KLEE allocates a non-fixed MemoryObject object, KLEE also allocates a block of memory which is the same as the object's size. This block of memory is never freed. So, this patch generally does reference counting on the MemoryObject objects, and frees them as soon as the reference count drops to zero." Many thanks to Paul Marinescu as well, who tested this patch thoroughly on the Coreutils benchmarks. On 1h runs, the memory consumption typically goes down by 1-5%, but some applications which see more significant gains. |
|||||
| 146741 | cristic |
|
|||
|
Fixed help message in klee-stats. |
|||||
| 146510 | pcc |
|
|||
|
Fix STPBuilder::getShiftBits for non-power-of-2 bitwidths up to 64. (Yes, we should really be handling more bitwidths here.) |
|||||
| 146353 | cristic |
|
|||
|
Patch by Ben Gras for MINIX: no stat64 under MINIX. |
|||||
| 146352 | cristic |
|
|||
|
Patch by Ben Gras fixing a few minor issues: adds missing includes, fixes the ntohs prototype in klee-libc, and removes some unused code. |
|||||
| 146351 | cristic |
|
|||
|
Patch by Paul Marinescu that fixes an issue causing KLEE to fail on some platforms with KLEE: ERROR: unable to load symbol(__dso_handle) while initializing globals. |
|||||
| 146350 | cristic |
|
|||
|
This is a workaround for the infinite loop reported at http://keeda.stanford.edu/pipermail/klee-dev/2011-August/000723.html KLEE needs to use --fno-builtin when compiling its version of memset. However, this patch also adds the workaround suggested by Paul in the thread above, since support for --fno-builtin was added to llvm-gcc only after LLVM 2.9 was released. More details about this issue can be found here: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20110411/119376.html http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20110711/124131.html Thanks to Paul and arrowdodger for their explanations and patches. |
|||||
| 146178 | pcc |
|
|||
| Update for changes in LLVM trunk. Original patch by arrowdodger! | |||||
| 145365 | pcc |
|
|||
| Updates for LLVM 3.1. | |||||
| 144295 | cristic |
|
|||
|
Added new publication from Columbia. |
|||||
| 143693 | cristic |
|
|||
|
Patch by Tom Bergan that fixes multi-byte reads on big-endian architectures. |
|||||
| 142310 | ddunbar |
|
|||
|
Fix some -Wunused-variable warnings. |
|||||
| 140602 | cristic |
|
|||
|
Changed Tutorial 1, which was causing confusion due to differences in LLVM code generation before and after LLVM 2.8. |
|||||
| 139045 | cristic |
|
|||
|
Applied patch from David Ramos that fixes a bug in minDistToUncovered calculation: "Functions with a single instruction were erroneously treated as never returning. This propagated far, making many instructions unreachable according to this metric." |
|||||
| 139026 | pcc |
|
|||
| Update location of TargetSelect.h and TargetRegistry.h for LLVM 3.0+ | |||||
| 138232 | cristic |
|
|||
|
Added new publication from RWTH Aachen. |
|||||
| 137116 | pcc |
|
|||
| Disable the LowerSetJmpPass on LLVM 3.0+ | |||||
| 136605 | pcc |
|
|||
|
Make the Executor capable of handling bitcasts of aliases, by rewriting the direct function call logic. |
|||||
| 136474 | pcc |
|
|||
|
Sign extend, rather than zero extend, narrow gep indices For example, clang creates these for ++ and -- operations on pointers on 64-bit platforms. |
|||||