llvm-6502/lib/Transforms/Scalar
Chris Lattner 80e8b506b8 rewrite the memset_pattern pattern generation stuff to accept any 2/4/8/16-byte
constant, including globals.  This makes us generate much more "pretty" pattern
globals as well because it doesn't break it down to an array of bytes all the
time.

This enables us to handle stores of relocatable globals.  This kicks in about
48 times in 254.gap, giving us stuff like this:

@.memset_pattern40 = internal constant [2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*] [%struct.TypHeader* (%struct.TypHeader*, %struct
.TypHeader*)* @IsFalse, %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)* @IsFalse], align 16

...
  call void @memset_pattern16(i8* %scevgep5859, i8* bitcast ([2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*]* @.memset_pattern40 to i8*
), i64 %tmp75) nounwind



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126044 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-19 19:56:44 +00:00
..
ADCE.cpp
BasicBlockPlacement.cpp
CMakeLists.txt
CodeGenPrepare.cpp
ConstantProp.cpp
CorrelatedValuePropagation.cpp
DCE.cpp
DeadStoreElimination.cpp
EarlyCSE.cpp
GEPSplitter.cpp
GVN.cpp
IndVarSimplify.cpp
JumpThreading.cpp prevent jump threading from merging blocks when their address is 2011-02-18 04:43:06 +00:00
LICM.cpp
LoopDeletion.cpp
LoopIdiomRecognize.cpp rewrite the memset_pattern pattern generation stuff to accept any 2/4/8/16-byte 2011-02-19 19:56:44 +00:00
LoopInstSimplify.cpp
LoopRotation.cpp Do not hoist @llvm.dbg.value. Here, @llvm.dbg.value is "referring" a value that is modified inside loop. 2011-02-14 23:03:23 +00:00
LoopStrengthReduce.cpp
LoopUnrollPass.cpp
LoopUnswitch.cpp Make LoopUnswitch preserve ScalarEvolution by just forgetting everything about 2011-02-11 06:08:28 +00:00
LowerAtomic.cpp
Makefile
MemCpyOptimizer.cpp Spelling fix: consequtive -> consecutive. 2011-02-15 09:23:02 +00:00
Reassociate.cpp fix PR9215, preventing -reassociate from clearing nsw/nuw when 2011-02-17 01:29:24 +00:00
Reg2Mem.cpp
Scalar.cpp
ScalarReplAggregates.cpp convert ConstantVector::get to use ArrayRef. 2011-02-15 00:14:00 +00:00
SCCP.cpp
SimplifyCFGPass.cpp
SimplifyHalfPowrLibCalls.cpp
SimplifyLibCalls.cpp SimplifyLibCalls: Add missing legalize check on various printf to puts and 2011-02-12 18:19:57 +00:00
Sink.cpp
TailDuplication.cpp
TailRecursionElimination.cpp