about summary refs log tree commit diff homepage
path: root/test/Feature/MemoryLimit.c
diff options
context:
space:
mode:
authorFrank Busse <bb0xfb@gmail.com>2020-01-29 19:13:20 +0000
committerMartinNowack <2443641+MartinNowack@users.noreply.github.com>2020-06-25 18:44:05 +0100
commit3fd9be596e20664e62f8daf5ddabaa10d7b4de3f (patch)
treeaa75e794645adb5c811b52ee3ef0eadbfe371377 /test/Feature/MemoryLimit.c
parent248be605d192abf425eae6d14fc206e507b48380 (diff)
downloadklee-3fd9be596e20664e62f8daf5ddabaa10d7b4de3f.tar.gz
Enforce fork/branch limits in branch() and fix double termination
* extend help messages for -max-memory and -max-memory-inhibit
* introduces branchingPermitted()
* enforces fork/branch limits in branch() (vector version)
* changes main loop
  * calls updateStates() before checkMemoryUsage()
  * calls updateStates() again in case we early terminate states

This should prevent double termination for now. Other solutions are
imho more expensive as we would have to compare possibly large
vectors of states (either states(arr) in checkMemoryUsage() or
removedStates in terminateState()).
Diffstat (limited to 'test/Feature/MemoryLimit.c')
-rw-r--r--test/Feature/MemoryLimit.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/test/Feature/MemoryLimit.c b/test/Feature/MemoryLimit.c
index 1cdf7260..e9635cab 100644
--- a/test/Feature/MemoryLimit.c
+++ b/test/Feature/MemoryLimit.c
@@ -9,14 +9,14 @@
 // RUN: %klee --output-dir=%t.klee-out --max-memory=20 %t.little.bc > %t.little.log
 // RUN: not grep -q "MALLOC FAILED" %t.little.log
 // RUN: not grep -q "DONE" %t.little.log
-// RUN: grep "WARNING: killing 1 states (over memory cap)" %t.klee-out/warnings.txt
+// RUN: grep "WARNING: killing 1 states (over memory cap" %t.klee-out/warnings.txt
 
 // RUN: %clang -emit-llvm -g -c %s -o %t.big.bc
 // RUN: rm -rf %t.klee-out
 // RUN: %klee --output-dir=%t.klee-out --max-memory=20 %t.big.bc > %t.big.log 2> %t.big.err
 // RUN: not grep -q "MALLOC FAILED" %t.big.log
 // RUN: not grep -q "DONE" %t.big.log
-// RUN: grep "WARNING: killing 1 states (over memory cap)" %t.klee-out/warnings.txt
+// RUN: grep "WARNING: killing 1 states (over memory cap" %t.klee-out/warnings.txt
 
 #include <stdlib.h>
 #include <stdio.h>