klee
|
#include <Passes.h>
Inherits llvm::ModulePass.
Public Member Functions | |
OvershiftCheckPass () | |
bool | runOnModule (llvm::Module &M) override |
Static Private Attributes | |
static char | ID |
This pass injects checks to check for overshifting.
Overshifting is where a Shl, LShr or AShr is performed where the shift amount is greater than width of the bitvector being shifted. In LLVM (and in C/C++) this undefined behaviour!
Example:
|
override |
Definition at line 93 of file Checks.cpp.
References klee::KleeIRMetaData::addAnnotation(), and klee::KleeIRMetaData::hasAnnotation().