aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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