llvm-6502/include/llvm/Transforms
Devang Patel ca891ecf91 Add pass to promote sret.
This pass transforms 

  %struct._Point = type { i32, i32, i32, i32, i32, i32 }
  define internal void @foo(%struct._Point* sret  %agg.result)

into

  %struct._Point = type { i32, i32, i32, i32, i32, i32 }
  define internal %struct._Point @foo()

This pass updates foo() clients appropriately to use
getresult instruction to extract return values.

This pass is not yet ready for prime time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47776 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-29 23:34:08 +00:00
..
IPO Allow clients to specify the inline threshold when creating 2008-01-12 06:49:13 +00:00
Utils prune #includes, fit in 80 cols. 2008-02-25 19:21:38 +00:00
Instrumentation.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
IPO.h Add pass to promote sret. 2008-02-29 23:34:08 +00:00
RSProfiling.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Scalar.h remove the LowerSelect pass. The last client was the old Sparc backend, which is long dead by now. 2008-02-19 07:49:17 +00:00