docs: clarified that it is necessary to kill paths explicitely

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
docs: reminder about concolic mode

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
docs: fixed inconsistency

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
Searcher: fixed default searcher selection

If none is specified, it is DFS.

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
docs: explicitely select random searcher

DFS is enabled by default now.

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
docs: clarified that concolic mode with DFS is the default setting

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
Reformatted help message

Reported-by: Jonas Wagner <jonas.wagner@epfl.ch>
Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
init_env: disable custom instruction for debug build

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
S2EExecutor: warning should be printed when at least 2 states, not 1

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
Improve symbolic port I/O support.

This patch improves support for symbolic port I/O in PCI device
drivers.  It ensures that the helper_inb/w/l family of functions
correctly supplies symbolic data when a symbolic PCI device is used.

Signed-off-by: Matt Renzelmann <mjr@cs.wisc.edu>
docs: cosmetics: Make example code indentation consistent

Signed-off-by: Diego Biurrun <diego@biurrun.de>
docs: Switch to modern qemu syntax for host port forwarding

Signed-off-by: Diego Biurrun <diego@biurrun.de>
docs: Fix a number of typos and grammar errors

Signed-off-by: Diego Biurrun <diego@biurrun.de>
docs/WritingPlugins: Fix some example code errors

Signed-off-by: Diego Biurrun <diego@biurrun.de>
handleForkAndConcretize: we must add a constraint ourselves if fork is disabled.

Alternative implementation:

remove the check: if (!state->forkDisabled)...
and let Executor::fork() deal with the case when forking is disabled.

This is more complicated, because KLEE's Executor::fork() has non-deterministic
behavior when both outcomes are feasible: it may drop the true state,
which would be pretty hard to handle here.

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
docs: contributions should go now through GitHub

Avoids clutering mailing list with patches

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
git: ignore temp files

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
Removes klee_make_symbolic/get_value calls from port I/O operations

This patch removes the klee_make_symbolic and klee_get_value calls
from the port I/O code, and removes these function implements
altogether.  The old approach was not compatible with conconcolic
execution.  This patch removes related code from the KLEE
SpecialFunctionHandler.cpp.

New functionality includes the handleMakeSymbolic and handleGetValue
calls in S2EExecutor, as well as the makeSymbolic and
kleeRead/WriteMemory calls in S2EExecutionState.
This patch adds additional symbolic hardware support.

Features added include: (a) MSI, (b) PCI-E, (c) power management
support.  Support consists of new flags in symbolic hardware
definition files and new command line parameters.
klee: removed deprecated header klee.h

S2E does not use any of these.

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>