diff options
author | Devang Patel <dpatel@apple.com> | 2008-02-29 23:41:13 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2008-02-29 23:41:13 +0000 |
commit | c45b5d9f6675c39bea87c15da0067cb4b183b3a2 (patch) | |
tree | 90a50894af6d848b182f2f564b46d694a6a14bb1 /lib/Transforms/IPO/StructRetPromotion.cpp | |
parent | ca891ecf9152791f72f33a0dafff6b4a022642ee (diff) |
Fix cut-n-pasto.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47777 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/StructRetPromotion.cpp')
-rw-r--r-- | lib/Transforms/IPO/StructRetPromotion.cpp | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/lib/Transforms/IPO/StructRetPromotion.cpp b/lib/Transforms/IPO/StructRetPromotion.cpp index dd626a5912..356cfa604c 100644 --- a/lib/Transforms/IPO/StructRetPromotion.cpp +++ b/lib/Transforms/IPO/StructRetPromotion.cpp @@ -7,25 +7,7 @@ // //===----------------------------------------------------------------------===// // -// This pass promotes "by reference" arguments to be "by value" arguments. In -// practice, this means looking for internal functions that have pointer -// arguments. If it can prove, through the use of alias analysis, that an -// argument is *only* loaded, then it can pass the value into the function -// instead of the address of the value. This can cause recursive simplification -// of code and lead to the elimination of allocas (especially in C++ template -// code like the STL). -// -// This pass also handles aggregate arguments that are passed into a function, -// scalarizing them if the elements of the aggregate are only loaded. Note that -// it refuses to scalarize aggregates which would require passing in more than -// three operands to the function, because passing thousands of operands for a -// large array or structure is unprofitable! -// -// Note that this transformation could also be done for arguments that are only -// stored to (returning the value instead), but does not currently. This case -// would be best handled when and if LLVM begins supporting multiple return -// values from functions. -// +// TODO : Describe this pass. //===----------------------------------------------------------------------===// #define DEBUG_TYPE "sretpromotion" |