klee
|
Public Member Functions | |
KleeHandler (int argc, char **argv) | |
~KleeHandler () | |
llvm::raw_ostream & | getInfoStream () const |
unsigned | getNumTestCases () |
Returns the number of test cases successfully generated so far. More... | |
unsigned | getNumPathsCompleted () |
unsigned | getNumPathsExplored () |
void | incPathsCompleted () |
void | incPathsExplored (std::uint32_t num=1) |
void | setInterpreter (Interpreter *i) |
void | processTestCase (const ExecutionState &state, const char *errorMessage, const char *errorSuffix) |
std::string | getOutputFilename (const std::string &filename) |
std::unique_ptr< llvm::raw_fd_ostream > | openOutputFile (const std::string &filename) |
std::string | getTestFilename (const std::string &suffix, unsigned id) |
std::unique_ptr< llvm::raw_fd_ostream > | openTestFile (const std::string &suffix, unsigned id) |
Public Member Functions inherited from klee::InterpreterHandler | |
InterpreterHandler () | |
virtual | ~InterpreterHandler () |
virtual llvm::raw_ostream & | getInfoStream () const =0 |
virtual std::string | getOutputFilename (const std::string &filename)=0 |
virtual std::unique_ptr< llvm::raw_fd_ostream > | openOutputFile (const std::string &filename)=0 |
virtual void | incPathsCompleted ()=0 |
virtual void | incPathsExplored (std::uint32_t num=1)=0 |
virtual void | processTestCase (const ExecutionState &state, const char *err, const char *suffix)=0 |
Static Public Member Functions | |
static void | loadPathFile (std::string name, std::vector< bool > &buffer) |
static void | getKTestFilesInDir (std::string directoryPath, std::vector< std::string > &results) |
static std::string | getRunTimeLibraryPath (const char *argv0) |
Private Attributes | |
Interpreter * | m_interpreter |
TreeStreamWriter * | m_pathWriter |
TreeStreamWriter * | m_symPathWriter |
std::unique_ptr< llvm::raw_ostream > | m_infoFile |
SmallString< 128 > | m_outputDirectory |
unsigned | m_numTotalTests |
unsigned | m_numGeneratedTests |
unsigned | m_pathsCompleted |
unsigned | m_pathsExplored |
int | m_argc |
char ** | m_argv |
KleeHandler::KleeHandler | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 349 of file main.cpp.
References getOutputFilename(), klee::klee_error(), klee::klee_message(), klee::klee_message_file, klee_warning(), klee::klee_warning_file, m_infoFile, m_outputDirectory, and openOutputFile().
KleeHandler::~KleeHandler | ( | ) |
Definition at line 419 of file main.cpp.
References klee::klee_message_file, klee::klee_warning_file, m_pathWriter, and m_symPathWriter.
|
inlinevirtual |
Implements klee::InterpreterHandler.
Definition at line 319 of file main.cpp.
References m_infoFile.
Referenced by main().
|
static |
|
inline |
Definition at line 322 of file main.cpp.
References m_pathsCompleted.
Referenced by main().
|
inline |
Definition at line 323 of file main.cpp.
References m_pathsExplored.
Referenced by main().
|
inline |
Returns the number of test cases successfully generated so far.
Definition at line 321 of file main.cpp.
References m_numGeneratedTests.
Referenced by main().
|
virtual |
Implements klee::InterpreterHandler.
Definition at line 442 of file main.cpp.
References m_outputDirectory.
Referenced by KleeHandler(), openOutputFile(), processTestCase(), and setInterpreter().
|
static |
Definition at line 639 of file main.cpp.
References getRunTimeLibraryPath().
Referenced by getRunTimeLibraryPath(), and main().
std::string KleeHandler::getTestFilename | ( | const std::string & | suffix, |
unsigned | id | ||
) |
Definition at line 463 of file main.cpp.
References suffix.
Referenced by openTestFile(), and processTestCase().
|
inlinevirtual |
Implements klee::InterpreterHandler.
Definition at line 324 of file main.cpp.
References m_pathsCompleted.
|
inlinevirtual |
Implements klee::InterpreterHandler.
Definition at line 325 of file main.cpp.
References m_pathsExplored.
|
static |
|
virtual |
Implements klee::InterpreterHandler.
Definition at line 449 of file main.cpp.
References getOutputFilename(), klee::klee_open_output_file(), and klee_warning().
Referenced by KleeHandler(), and openTestFile().
std::unique_ptr< llvm::raw_fd_ostream > KleeHandler::openTestFile | ( | const std::string & | suffix, |
unsigned | id | ||
) |
Definition at line 470 of file main.cpp.
References getTestFilename(), openOutputFile(), and suffix.
Referenced by processTestCase().
|
virtual |
Implements klee::InterpreterHandler.
Definition at line 476 of file main.cpp.
References KTest::args, KTestObject::bytes, klee::Interpreter::getConstraintLog(), klee::Interpreter::getCoveredLines(), getOutputFilename(), klee::Interpreter::getPathStreamID(), klee::Interpreter::getSymbolicPathStreamID(), klee::Interpreter::getSymbolicSolution(), getTestFilename(), klee::time::getWallTime(), klee::klee_error(), klee_warning(), kTest_toFile(), line, m_argc, m_argv, m_interpreter, m_numGeneratedTests, m_numTotalTests, m_pathWriter, m_symPathWriter, KTestObject::name, KTest::numArgs, KTestObject::numBytes, KTest::numObjects, KTest::objects, openTestFile(), klee::Interpreter::prepareForEarlyExit(), klee::TreeStreamWriter::readStream(), klee::Interpreter::setHaltExecution(), KTest::symArgvLen, and KTest::symArgvs.
void KleeHandler::setInterpreter | ( | Interpreter * | i | ) |
Definition at line 426 of file main.cpp.
References getOutputFilename(), klee::TreeStreamWriter::good(), m_interpreter, m_pathWriter, m_symPathWriter, klee::Interpreter::setPathWriter(), and klee::Interpreter::setSymbolicPathWriter().
Referenced by main().
|
private |
Definition at line 312 of file main.cpp.
Referenced by processTestCase().
|
private |
Definition at line 313 of file main.cpp.
Referenced by processTestCase().
|
private |
Definition at line 302 of file main.cpp.
Referenced by getInfoStream(), and KleeHandler().
|
private |
Definition at line 300 of file main.cpp.
Referenced by processTestCase(), and setInterpreter().
|
private |
Definition at line 307 of file main.cpp.
Referenced by getNumTestCases(), and processTestCase().
|
private |
Definition at line 306 of file main.cpp.
Referenced by processTestCase().
|
private |
Definition at line 304 of file main.cpp.
Referenced by getOutputFilename(), and KleeHandler().
|
private |
Definition at line 308 of file main.cpp.
Referenced by getNumPathsCompleted(), and incPathsCompleted().
|
private |
Definition at line 309 of file main.cpp.
Referenced by getNumPathsExplored(), and incPathsExplored().
|
private |
Definition at line 301 of file main.cpp.
Referenced by processTestCase(), setInterpreter(), and ~KleeHandler().
|
private |
Definition at line 301 of file main.cpp.
Referenced by processTestCase(), setInterpreter(), and ~KleeHandler().