Skip to content
/ klee Public
forked from klee/klee

[fork] KLEE Symbolic Execution Engine

License

Notifications You must be signed in to change notification settings

LLVMParty/klee

 
 

Repository files navigation

KLEE Symbolic Virtual Machine

Build Status Build Status Coverage

KLEE is a symbolic virtual machine built on top of the LLVM compiler infrastructure. Currently, there are two primary components:

  1. The core symbolic virtual machine engine; this is responsible for executing LLVM bitcode modules with support for symbolic values. This is comprised of the code in lib/.

  2. A POSIX/Linux emulation layer oriented towards supporting uClibc, with additional support for making parts of the operating system environment symbolic.

Additionally, there is a simple library for replaying computed inputs on native code (for closed programs). There is also a more complicated infrastructure for replaying the inputs generated for the POSIX/Linux emulation layer, which handles running native programs in an environment that matches a computed test input, including setting up files, pipes, environment variables, and passing command line arguments.

For further information, see the webpage.

About

[fork] KLEE Symbolic Execution Engine

Resources

License

Stars

Watchers

Forks

Languages

  • C++ 68.4%
  • C 18.4%
  • Python 3.8%
  • LLVM 3.5%
  • CMake 3.5%
  • Shell 1.1%
  • Other 1.3%