Hi Biqian, KLEE's passes are defined in `/lib/module/Passes.h`, with implementations in individual files in `/lib/module`, e.g., `/lib/module/IntrinsicCleaner.cpp` for `klee::IntrinsicCleanerPass`.
`llvm::createInstructionCombiningPass()` is part of LLVM, not KLEE, you can find it here: https://github.com/llvm/llvm-project/blob/75e33f71c2dae584b13a7d1186ae0a038ba98838/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp#L4311-L4313 Best, Daniel ________________________________ From: klee-dev-boun...@imperial.ac.uk <klee-dev-boun...@imperial.ac.uk> on behalf of Biqian Cheng <bchen...@ucr.edu> Sent: 15 July 2022 20:48 To: klee-dev <klee-dev@imperial.ac.uk> Subject: [klee-dev] Question about adding an llvm pass to KLEE Hi, I'm working on adding an llvm pass to the KLEE source code on Optimize.cpp. Should I include my llvm pass in some directory in order to pass it into addPass()? For example, addPass(Passes, createInstructionCombiningPass()); Before the createInstructionCombiningPass() is added, there should be some implementations of createInstructionCombiningPass somewhere in KLEE source code. In fact, there is no implementation for createInstructionCombiningPass(). What would be the reasons for this? Thank you!
_______________________________________________ klee-dev mailing list klee-dev@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/klee-dev