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 Revert my previous patch to ABCD and fix things the right way. There are two problems addressed 2009-11-09 00:44:44 +00:00
ADCE Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ArgumentPromotion Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
BlockPlacement Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
BranchFolding Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CodeExtractor Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CodeGenPrepare Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ConstantMerge Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Fix a README item: have functionattrs look through selects and 2010-01-06 15:37:47 +00:00
GlobalDCE Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
GlobalOpt fix a globalopt crash on 'bullet' (handling evaluation of a store 2010-01-07 01:16:21 +00:00
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 Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
InstCombine Rename ValueRequiresCast to ShouldOptimizeCast, to better reflect 2010-02-11 06:26:33 +00:00
Internalize Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
IPConstantProp Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
JumpThreading Make jump threading honor x|undef -> true and x&undef -> false, 2010-02-11 04:40:44 +00:00
LCSSA Trim a bunch of unneeded code from this testcase. 2009-11-10 01:33:08 +00:00
LICM Remove dead debug info intrinsics. 2010-01-05 01:10:40 +00:00
LoopDeletion Make LoopDeletion check the maximum backedge taken count, rather than the 2009-10-23 17:10:01 +00:00
LoopIndexSplit Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
LoopRotate Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
LoopSimplify Make Loop::getLoopLatch() work on loops which don't have preheaders, as 2009-11-20 20:51:18 +00:00
LoopStrengthReduce -disable-output is no longer needed with -analyze. 2010-01-26 19:25:59 +00:00
LoopUnroll Teach getSmallConstantTripMultiple about Shl operators. 2009-11-20 01:09:34 +00:00
LoopUnswitch fix a crash in loop unswitch on a loop invariant vector condition. 2010-02-02 02:26:54 +00:00
LowerInvoke Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LowerSetJmp Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LowerSwitch Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
MergeFunc Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
PruneEH Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
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 fix a crash in SCCP handling extractvalue of an array, pointed out and 2009-11-10 22:02:09 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
SSI Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
StripSymbols Update test. 2009-09-09 02:41:50 +00:00
TailCallElim Revert 94937 and move the noreturn check to codegen. 2010-02-03 03:55:59 +00:00
TailDup Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00