summaryrefslogtreecommitdiff
path: root/include/llvm/Transforms/Utils
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-11-19 21:54:38 +0000
committerChris Lattner <sabre@nondot.org>2002-11-19 21:54:38 +0000
commit1c9985067bfedc219c1a6128bfc703cf3894b866 (patch)
treedc97be590ffab843779007936eea18c79076c19a /include/llvm/Transforms/Utils
parentdcd8040d115803e427dc1caf9feb44a894eef927 (diff)
downloadllvm-1c9985067bfedc219c1a6128bfc703cf3894b866.tar.gz
llvm-1c9985067bfedc219c1a6128bfc703cf3894b866.tar.bz2
llvm-1c9985067bfedc219c1a6128bfc703cf3894b866.tar.xz
Extend function cloning interface to support inlining
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4767 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Transforms/Utils')
-rw-r--r--include/llvm/Transforms/Utils/Cloning.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/llvm/Transforms/Utils/Cloning.h b/include/llvm/Transforms/Utils/Cloning.h
index 86af4eb70e..7434a2ece8 100644
--- a/include/llvm/Transforms/Utils/Cloning.h
+++ b/include/llvm/Transforms/Utils/Cloning.h
@@ -17,13 +17,18 @@ class Function;
class BasicBlock;
class Value;
class CallInst;
+class ReturnInst;
// Clone OldFunc into NewFunc, transforming the old arguments into references to
// ArgMap values. Note that if NewFunc already has basic blocks, the ones
-// cloned into it will be added to the end of the function.
+// cloned into it will be added to the end of the function. This function fills
+// in a list of return instructions, and can optionally append the specified
+// suffix to all values cloned.
//
void CloneFunctionInto(Function *NewFunc, const Function *OldFunc,
- const std::vector<Value*> &ArgMap);
+ const std::vector<Value*> &ArgMap,
+ std::vector<ReturnInst*> &Returns,
+ const char *NameSuffix = "");
// InlineFunction - This function forcibly inlines the called function into the