1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/test/Transforms
Simon Pilgrim 6ec0f7efbc [X86][SSE] (Reapplied) Replace (V)PMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (llvm)
This patch removes the llvm intrinsics VPMOVSX and (V)PMOVZX sign/zero extension intrinsics and auto-upgrades to SEXT/ZEXT calls instead. We already did this for SSE41 PMOVSX sometime ago so much of that implementation can be reused.

Reapplied now that the the companion patch (D20684) removes/auto-upgrade the clang intrinsics has been committed.

Differential Revision: http://reviews.llvm.org/D20686

llvm-svn: 271131
2016-05-28 18:03:41 +00:00
..
ADCE
AddDiscriminators Revert http://reviews.llvm.org/D19926 as it breaks tests. 2016-05-05 20:47:53 +00:00
AlignmentFromAssumptions
ArgumentPromotion [ArgumentPromotion] Propagate operand bundles to promoted call sites 2016-04-29 04:56:12 +00:00
AtomicExpand
BBVectorize [BBVectorize] Don't vectorize selects with a scalar condition and vector operands. 2016-05-26 18:43:57 +00:00
BDCE [PM] Port BDCE to the new pass manager. 2016-05-25 01:57:04 +00:00
BranchFolding
CodeExtractor
CodeGenPrepare [CodeGenPrepare] Don't sink a cast past its user 2016-04-27 19:36:38 +00:00
ConstantHoisting
ConstantMerge [PM] Port ConstantMerge to the new pass manager. 2016-05-05 00:51:09 +00:00
ConstProp Revert "[SCCP] Partially propagate informations when the input is not fully defined." 2016-05-11 23:06:10 +00:00
CorrelatedValuePropagation Remove extra whitespace. NFC. 2016-05-02 16:45:00 +00:00
CrossDSOCFI
DCE Mark guards on true as "trivially dead" 2016-04-29 22:23:16 +00:00
DeadArgElim [IR] Copy comdats in GlobalObject::copyAttributesFrom 2016-05-25 18:36:22 +00:00
DeadStoreElimination [PM] Port DSE to the new pass manager 2016-05-17 21:38:13 +00:00
EarlyCSE [EarlyCSE] Simplify guard intrinsics 2016-04-29 21:52:58 +00:00
EliminateAvailableExternally [PM] Port EliminateAvailableExternally pass to the new pass manager. 2016-05-05 02:37:32 +00:00
Float2Int
ForcedFunctionAttrs
FunctionAttrs [CaptureTracking] Volatile operations capture their memory location 2016-05-26 17:36:22 +00:00
FunctionImport ThinLTO: do not import function whose linkage prevents inlining. 2016-05-03 00:27:28 +00:00
GCOVProfiling DebugInfo: Remove MDString-based type references 2016-04-23 21:08:00 +00:00
GlobalDCE [GlobalDCE, Misc] Don't remove functions referenced by ifuncs 2016-05-04 00:20:48 +00:00
GlobalMerge CodeGen: Make the global-merge pass independently testable, and add a test. 2016-05-19 04:38:56 +00:00
GlobalOpt Make "@name =" mandatory for globals in .ll files. 2016-05-10 18:22:45 +00:00
GuardWidening [GuardWidening] Fix incorrect use of remove_if 2016-05-21 02:24:44 +00:00
GVN [GVN] Preserve !range metadata when PRE'ing loads 2016-05-27 19:03:10 +00:00
IndVarSimplify
InferFunctionAttrs [TLI] Also cover Linux 64 libfunc (stat64, ...) prototype checking. 2016-05-25 21:16:33 +00:00
Inline Allow -inline-threshold to override default threshold. 2016-05-19 23:02:09 +00:00
InstCombine [X86][SSE] (Reapplied) Replace (V)PMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (llvm) 2016-05-28 18:03:41 +00:00
InstMerge [MergedLoadStoreMotion] Don't transform across may-throw calls 2016-05-26 07:11:09 +00:00
InstSimplify [ValueTracking, InstSimplify] extend isKnownNonZero() to handle vector constants 2016-05-24 14:18:49 +00:00
Internalize PM: Port Internalize to the new pass manager 2016-04-26 20:15:52 +00:00
IPConstantProp [PM] Port Interprocedural SCCP to the new pass manager. 2016-05-05 21:05:36 +00:00
IRCE [IRCE] Optimize conjunctions of range checks 2016-05-26 00:09:02 +00:00
JumpThreading [ValueTracking] Improve isImpliedCondition when the dominating cond is false. 2016-04-25 17:23:36 +00:00
LCSSA
LICM MemorySSA: Revert r269678 and r268068; replace with special casing in MemorySSA. 2016-05-26 04:58:46 +00:00
LoadCombine
LoopDataPrefetch [LoopDataPrefetch] Add optimization remark 2016-05-05 00:08:15 +00:00
LoopDeletion Use all_of instead of a raw loop; NFC 2016-05-03 17:50:06 +00:00
LoopDistribute [LoopDist] Add missing RUN line in test from r268006 2016-04-29 07:16:00 +00:00
LoopIdiom AMDGPU: Other sizes of popcnt are fast 2016-05-18 16:10:19 +00:00
LoopInterchange
LoopLoadElim
LoopReroll Enable loopreroll for sext of loop control only IV 2016-05-10 21:16:49 +00:00
LoopRotate LPM: Drop require<loops> from these tests, it's redundant. NFC 2016-05-10 18:28:10 +00:00
LoopSimplify
LoopSimplifyCFG LPM: Drop require<loops> from these tests, it's redundant. NFC 2016-05-10 18:28:10 +00:00
LoopStrengthReduce AMDGPU: Fix a few slightly broken tests 2016-05-18 15:48:44 +00:00
LoopUnroll The patch refactors unroll pass. 2016-05-27 23:15:06 +00:00
LoopUnswitch
LoopVectorize Move test to X86 directory: I think it depends on X86 TTI. 2016-05-27 16:56:54 +00:00
LoopVersioning
LoopVersioningLICM [LoopVersioningLICM] Add test coverage for llvm.loop.licm_versioning.disable 2016-04-22 18:34:50 +00:00
LowerAtomic [PM] Port LowerAtomic to the new pass manager. 2016-05-13 22:52:35 +00:00
LowerBitSets
LowerExpectIntrinsic [LowerExpectIntrinsic] make default likely/unlikely ratio bigger 2016-04-26 22:23:38 +00:00
LowerGuardIntrinsic [Guards] Add branch metadata when lowering 2016-05-17 17:51:19 +00:00
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt [MemCpyOpt] Don't perform callslot optimization across may-throw calls 2016-05-26 19:24:24 +00:00
MergeFunc Functions with differing phis should not be merged. 2016-05-20 18:39:11 +00:00
MetaRenamer
NameAnonFunctions
NaryReassociate
ObjCARC Form objc_storeStrong in the presence of bitcasts. 2016-05-27 02:13:53 +00:00
PartiallyInlineLibCalls [PM] Port PartiallyInlineLibCalls to the new pass manager. 2016-05-25 23:38:53 +00:00
PGOProfile Bring back r271090 in a way that doesn't depend on r271089. 2016-05-28 04:05:36 +00:00
PhaseOrdering Mark that SpeculativeExecution preserves Globals Alias Analysis. 2016-05-03 08:33:26 +00:00
PlaceSafepoints
PreISelIntrinsicLowering Introduce llvm.load.relative intrinsic. 2016-04-22 21:18:02 +00:00
PruneEH
Reassociate PM: Port Reassociate to the new pass manager 2016-04-26 23:39:29 +00:00
Reg2Mem
RewriteStatepointsForGC [RewriteStatepointsForGC] All constant should have null base pointer 2016-05-27 13:13:59 +00:00
SafeStack DebugInfo: Remove MDString-based type references 2016-04-23 21:08:00 +00:00
SampleProfile [PM] Port the Sample FDO to new PM (part-2) 2016-05-27 23:20:16 +00:00
Scalarizer
ScalarRepl
SCCP [PM] Port per-function SCCP to the new pass manager. 2016-05-18 15:18:25 +00:00
SeparateConstOffsetFromGEP
SimplifyCFG [SimplifyCFG] Remove cleanuppads which are empty except for calls to lifetime.end 2016-05-21 05:12:32 +00:00
Sink PM: Port SinkingPass to the new pass manager 2016-04-22 19:54:10 +00:00
SLPVectorizer [SLPVectorizer][X86] Regenerated SEXT/ZEXT cast vectorization tests 2016-05-06 22:22:18 +00:00
SpeculativeExecution
SROA [SROA] Function canConvertValue needs to check whether both NewTy and OldTy pointers are 2016-05-03 19:30:48 +00:00
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols Refactor stripDebugInfo(Function) to handle intrinsic 2016-05-07 04:10:52 +00:00
StructurizeCFG
TailCallElim
Util MemorySSA: Revert r269678 and r268068; replace with special casing in MemorySSA. 2016-05-26 04:58:46 +00:00
WholeProgramDevirt