llvm/lib
Matthijs Kooijman ca85d65277 Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of
dependencies between return values and/or arguments. Also make the handling of
arguments and return values the same.

The pass now looks properly inside returned structs, but only at the first                                                                                     
level (ie, not inside nested structs).

Also add a testcase for testing various variations of (multiple) dead rerturn
values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52459 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-18 11:12:53 +00:00
..
Analysis Use a SmallVector instead of an array, since auto_ptr doesn't handle arrays 2008-06-17 08:24:37 +00:00
Archive Create archives with the same permissions are ar. 2008-05-24 05:42:29 +00:00
AsmParser AsmParser support for immediate constant aggregate values. 2008-06-09 14:45:02 +00:00
Bitcode Better test for availability of __gnu_cxx::stdio_filebuf. 2008-06-11 10:46:24 +00:00
CodeGen Complete support for two-address pass rematerialization. Now *almost* always a win. 2008-06-18 07:49:14 +00:00
Debugger Make these variables static. 2008-04-23 23:15:23 +00:00
ExecutionEngine Provide generic hooks for icache invalidation. Add PPC implementation. 2008-06-17 17:30:05 +00:00
Linker Add a missing ~ (dtor became ctor) which caused crashes on a bunch of stuff. 2008-06-16 23:06:51 +00:00
Support Consistently set "Buckets[NumBuckets] = reinterpret_cast<void*>(-1)" throughout FoldingSet.cpp. 2008-06-17 19:12:43 +00:00
System Minor comment fix. 2008-06-16 10:14:09 +00:00
Target XOR32rr, etc. are not AsCheapAsMove, but MOV32ri, etc. are. 2008-06-18 08:13:07 +00:00
Transforms Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of 2008-06-18 11:12:53 +00:00
VMCore Auto-upgrade code for multiple-value return statements. This code 2008-06-17 23:38:43 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00