llvm/test/Transforms/ScalarRepl
Chandler Carruth ec68f552f2 Port the global copy optimization from the SROA pass to InstCombine.
This optimization is really just replacing allocas wholesale with
globals, there is no scalarization.

The underlying motivation for this patch is to simplify the SROA pass
and focus it on splitting and promoting allocas.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162271 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-21 08:39:44 +00:00
..
2003-05-29-ArrayFail.ll
2003-09-12-IncorrectPromote.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2003-10-29-ArrayProblem.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2006-11-07-InvalidArrayPromote.ll
2007-05-29-MemcpyPreserve.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2007-11-03-bigendian_apint.ll manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
2008-01-29-PromoteBug.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-02-28-SubElementExtractCrash.ll
2008-06-05-loadstore-agg.ll Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
2008-06-22-LargeArray.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-08-22-out-of-range-array-promote.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-09-22-vector-gep.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2009-02-02-ScalarPromoteOutOfRange.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-02-05-LoadFCA.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-03-04-MemCpyAlign.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-12-11-NeonTypes.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2010-01-18-SelfCopy.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2011-05-06-CapturedAlloca.ll Fix PR9820: a read-only call differs from a load in that a load doesn't 2011-05-06 10:30:37 +00:00
2011-06-08-VectorExtractValue.ll Recommit r158407: Allow SROA to look at a vector type and see if the offset is out of range to be replaced with a scalar access. Now with additional fix and test for indexing into a vector inside a struct 2012-06-14 23:53:53 +00:00
2011-06-17-VectorPartialMemset.ll When scalar replacement returns a vector type, only accept it if the vector 2011-06-18 06:17:51 +00:00
2011-09-22-PHISpeculateInvoke.ll PR10987: add a missed safety check to isSafePHIToSpeculate in scalarrepl. 2011-09-22 18:56:30 +00:00
2011-10-11-VectorMemset.ll Fix PR11106 by correcting a typo that has been in the code for over a year. This 2011-10-11 21:26:40 +00:00
2011-10-22-VectorCrash.ll The element insertion code in scalar replacement doesn't handle incorrect 2011-10-23 07:02:10 +00:00
2011-11-11-EmptyStruct.ll Make sure scalarrepl picks the correct alloca when it rewrites a bitcast. Fixes PR11353. 2011-11-12 02:07:50 +00:00
address-space.ll
AggregatePromote.ll
arraytest.ll
badarray.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
basictest.ll if an alloca is only ever accessed as a unit, and is accessed with load/store instructions, 2011-01-16 06:18:28 +00:00
bitfield-sroa.ll
copy-aggregate.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
crash.ll Fix crash when when do lto on Bullet. Dynamic GEPs in SROA were incorrectly being applied to all accesses to an alloca, not just the ones which read from the GEP. Thanks to Evan for reducing the test. rdar://11861001 2012-08-10 03:26:36 +00:00
debuginfo-preserved.ll Fix "make check" in Release by removing debug-only options from an 'opt' invocation. 2011-05-24 18:26:09 +00:00
DifferingTypes.ll
dynamic-vector-gep.ll Now that SROA can form alloca's for dynamic vector accesses, further improve it to be able to replace operations on these vector alloca's with insert/extract element insts 2012-06-17 03:58:26 +00:00
inline-vector.ll Do some simple copy propagation through integer loads and stores when promoting 2011-03-29 05:19:52 +00:00
lifetime.ll Finish adding support for lifetime intrinsics to SROA. Fixes PR10121! 2011-07-25 23:14:22 +00:00
lit.local.cfg Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
load-store-aggregate.ll
memcpy-align.ll
memset-aggregate-byte-leader.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
memset-aggregate.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
negative-memset.ll line endings 2012-03-15 20:24:29 +00:00
nonzero-first-index.ll
not-a-vector.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
only-memcpy-uses.ll Only convert allocas to scalars if it is profitable. The profitability metric I 2011-03-16 00:13:44 +00:00
phi-cycle.ll Fix SSAUpdaterImpl's RecordMatchingPHI to record exactly the 2012-02-03 01:07:01 +00:00
phi-select.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
phinodepromote.ll
select_promote.ll
sroa_two.ll
sroa-fca.ll
union-fp-int.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
union-packed.ll
union-pointer.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
vector_memcpy.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
vector_promote.ll Add a test for PR10565. 2011-10-11 06:10:37 +00:00
vectors-with-mismatched-elements.ll Fix MergeInVectorType to check for vector types with the same alloc 2011-07-21 23:30:09 +00:00
volatile.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00