summaryrefslogtreecommitdiff
path: root/tools/bugpoint/BugDriver.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-01-23 02:48:33 +0000
committerChris Lattner <sabre@nondot.org>2003-01-23 02:48:33 +0000
commit6520785dcd22012535934098942d57c07c7631c2 (patch)
tree9779528e1f51c9a49cdff12110c7440af45947b6 /tools/bugpoint/BugDriver.h
parente5fa63a578187ba91bf2b93ad5a58baa3d3307b2 (diff)
downloadllvm-6520785dcd22012535934098942d57c07c7631c2.tar.gz
llvm-6520785dcd22012535934098942d57c07c7631c2.tar.bz2
llvm-6520785dcd22012535934098942d57c07c7631c2.tar.xz
Make bugpoint *much* more powerful, giving it the capability to delete instructions
out of a large function to reduce it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5408 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/bugpoint/BugDriver.h')
-rw-r--r--tools/bugpoint/BugDriver.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/bugpoint/BugDriver.h b/tools/bugpoint/BugDriver.h
index 6398366d8c..3dbb84dab6 100644
--- a/tools/bugpoint/BugDriver.h
+++ b/tools/bugpoint/BugDriver.h
@@ -15,6 +15,7 @@ class PassInfo;
class Module;
class Function;
class AbstractInterpreter;
+class Instruction;
class BugDriver {
const std::string ToolName; // Name of bugpoint
@@ -117,6 +118,13 @@ private:
///
Module *extractFunctionFromModule(Function *F) const;
+ /// deleteInstructionFromProgram - This method clones the current Program and
+ /// deletes the specified instruction from the cloned module. It then runs a
+ /// series of cleanup passes (ADCE and SimplifyCFG) to eliminate any code
+ /// which depends on the value. The modified module is then returned.
+ ///
+ Module *deleteInstructionFromProgram(Instruction *I, unsigned Simp) const;
+
/// initializeExecutionEnvironment - This method is used to set up the
/// environment for executing LLVM programs.
///