Added LICENSE file
tcg-llvm: fix LLVM implementation of TCG op_div2

The LLVM code implementing op_div2 and op_divu2 was broken:
the dividend was bits*2 wide but the divisor was only bits wide.
This fixes the problem by extending the divisor
and then truncating the quotient.

In addition, an incorrect use of #ifdef TCG_TARGET_HAS_div_i32
was fixed (TCG_TARGET_HAS_div_i32 is always defined but may be 0 or 1).
Ubuntu 14.04 compatibility

Had to disable libfdt in qemu, as there are some issues with the header files in 14.04.
S2EExecutor: invalidate IOTLB entries if mapping changed

Fixes random crashes caused by mismatched mappings

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
S2EExecutor: allow throwing exceptions in onStateFork signal

Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch>
S2EExecutor: it is now safe to throw exceptions in onFork()

The patch ensures that the execution is not left in an
inconsistent state.

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

Conflicts:
	klee/lib/Core/Executor.cpp
	qemu/s2e/S2EExecutor.cpp
S2EExecutor: properly finalize states that threw an exception in onStateFork

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

Conflicts:
	qemu/s2e/S2EExecutionState.cpp
	qemu/s2e/S2EExecutor.cpp