llvm-6502/test/Transforms
Chris Lattner 8c5ad3a5da Rename ValueRequiresCast to ShouldOptimizeCast, to better reflect
what it does.  Enhance it to return false to optimizing vector
sign extensions from vector comparisions, which is the idiom used
to get a splatted vector for a vector comparison.

Doing this breaks vector-casts.ll, add some compensating 
transformations to handle the important case they cover without
depending on this canonicalization.

This fixes rdar://7434900 a serious pessimization of vector compares.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95855 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-11 06:26:33 +00:00
..
ABCD
ADCE
ArgumentPromotion
BlockPlacement
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantMerge
ConstProp fix PR6197 - infinite recursion in ipsccp due to block addresses 2010-02-01 19:35:08 +00:00
DeadArgElim Speculatively revert r94322 to see if it fixes darwin selfhost buildbot. 2010-01-23 20:32:12 +00:00
DeadStoreElimination Make DSE only scan blocks that are reachable from the entry 2010-02-11 05:11:54 +00:00
FunctionAttrs
GlobalDCE
GlobalOpt
GVN a testcase that doesn't crash GVN but could someday. 2010-02-11 05:08:05 +00:00
IndVarSimplify -disable-output is no longer needed with -analyze. 2010-01-26 19:25:59 +00:00
Inline
InstCombine Rename ValueRequiresCast to ShouldOptimizeCast, to better reflect 2010-02-11 06:26:33 +00:00
Internalize
IPConstantProp
JumpThreading Make jump threading honor x|undef -> true and x&undef -> false, 2010-02-11 04:40:44 +00:00
LCSSA
LICM
LoopDeletion
LoopIndexSplit
LoopRotate
LoopSimplify
LoopStrengthReduce -disable-output is no longer needed with -analyze. 2010-01-26 19:25:59 +00:00
LoopUnroll
LoopUnswitch fix a crash in loop unswitch on a loop invariant vector condition. 2010-02-02 02:26:54 +00:00
LowerInvoke
LowerSetJmp
LowerSwitch
Mem2Reg When converting dbg.declare to dbg.value, attach promoted store's debug metadata to dbg.value 2010-01-27 00:44:36 +00:00
MemCpyOpt
MergeFunc
PruneEH
Reassociate Add a test for my change to disable reassociation for i1 types. 2010-02-06 01:16:25 +00:00
ScalarRepl Fix a crash in scalarrepl for memcpy/memmove where the source and destination 2010-01-19 04:32:48 +00:00
SCCP
SimplifyCFG Teach SimplifyCFG about magic pointer constants. 2010-02-05 22:03:18 +00:00
SimplifyLibCalls Recommit this, looks like it wasn't the cause. 2010-02-03 00:21:58 +00:00
SRETPromotion
SSI
StripSymbols
TailCallElim Revert 94937 and move the noreturn check to codegen. 2010-02-03 03:55:59 +00:00
TailDup