1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Transforms
Clement Courbet b890445131 [ExpandMemCmp] Allow overlaping loads in the zero-relational case.
Summary:
This allows doing `memcmp(p, q, 7)` with 2 loads instead of a call to
memcmp.
This fixes part of PR45147.

Reviewers: spatel

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76133
2020-04-02 11:20:47 +02:00
..
ADCE
AddDiscriminators
AggressiveInstCombine
AlignmentFromAssumptions [AlignmentFromAssumptions] Fix a SCEV assertion resulting from address space differences. 2020-03-29 01:26:31 -05:00
ArgumentPromotion
AtomicExpand
Attributor [Attributor] Use the proper context instruction in genericValueTraversal 2020-04-01 22:20:47 -05:00
BDCE
BlockExtractor
BranchFolding
CalledValuePropagation
CallSiteSplitting [CallSiteSplitting] Simplify isPredicateOnPHI & continue checking PHIs. 2020-04-02 10:11:27 +01:00
CanonicalizeAliases
CodeExtractor
CodeGenPrepare [CodeGenPrepare] Delete intrinsic call to llvm.assume to enable more tailcall 2020-03-31 11:55:51 -07:00
ConstantHoisting
ConstantMerge
ConstProp [ConstProp] Add test for bitcast to gep fold; NFC 2020-03-04 18:27:20 +01:00
Coroutines [Coroutines 2/2] Improve symmetric control transfer feature 2020-03-30 09:53:09 +08:00
CorrelatedValuePropagation [ConstantRange] Use APInt::or/APInt::and for single elements. 2020-04-01 09:50:24 +01:00
CrossDSOCFI
DCE
DeadArgElim
DeadStoreElimination Introduce support for lib function aligned_alloc in TLI / memory builtins 2020-03-29 23:36:24 +05:30
DivRemPairs [DivRemPairs] Freeze operands if they can be undef values 2020-03-25 03:46:14 +09:00
EarlyCSE [AssumeBundles] Preserve information in EarlyCSE 2020-03-31 17:47:04 +02:00
EliminateAvailableExternally
EntryExitInstrumenter
ExpandMemCmp [ExpandMemCmp] Allow overlaping loads in the zero-relational case. 2020-04-02 11:20:47 +02:00
Float2Int
ForcedFunctionAttrs
FunctionAttrs
FunctionImport
GCOVProfiling
GlobalDCE
GlobalMerge
GlobalOpt [GlobalOpt] Treat null-check of loaded value as use of global (PR35760) 2020-03-23 22:36:09 -07:00
GlobalSplit
GuardWidening
GVN [GVN] Make GVN aware of aligned_alloc 2020-04-01 23:26:50 +05:30
GVNHoist
GVNSink Fix another instance where a variable was renamed in the generated LLVM IR. [NFC] 2020-03-23 22:53:29 -07:00
HardwareLoops
HotColdSplit [HotColdSplit] Mark entire function cold when entry block is cold 2020-02-17 15:57:50 -08:00
IndirectBrExpand
IndVarSimplify [NFC] Create X86 subdirectory for indvar tests 2020-03-26 12:24:45 +00:00
InferAddressSpaces
InferFunctionAttrs
Inline Revert "[InlineFunction] Handle return attributes on call within inlined body" 2020-03-31 16:16:34 -04:00
InstCombine [InstCombine] enhance freelyNegateValue() by handling xor 2020-04-01 15:05:13 -04:00
InstMerge
InstNamer
InstSimplify [FEnv] Constfold some unary constrained operations 2020-03-28 12:28:33 +07:00
InterleavedAccess
Internalize
IPConstantProp [SCCP] Do not mark unknown loads as overdefined. 2020-02-20 22:48:58 +01:00
IRCE
JumpThreading Fix MSan false positive due to select folding. 2020-03-31 15:25:42 -07:00
LCSSA
LICM [LICM] Allow freeze to hoist/sink out of a loop 2020-03-03 12:29:39 +09:00
LoadStoreVectorizer AMDGPU: Fix broken check lines 2020-04-01 10:52:22 -07:00
LoopDataPrefetch
LoopDeletion
LoopDistribute
LoopFusion
LoopIdiom
LoopInstSimplify
LoopInterchange [LoopInterchange] Fix interchanging contents of preheader BBs 2020-03-13 15:59:37 -04:00
LoopLoadElim
LoopPredication
LoopReroll
LoopRotate [Test] Add a regression test for failure introduced by 952ad4701cf0d8da79789f6b83ddaa386c60d535 2020-03-05 16:32:37 +07:00
LoopSimplify
LoopSimplifyCFG
LoopStrengthReduce Revert "[LSR] re-add testcase for wrongly phi node elimination - NFC" 2020-04-01 12:58:06 +00:00
LoopTransformWarning
LoopUnroll [NFC][PowerPC] Update test 2020-03-18 16:21:37 +00:00
LoopUnrollAndJam
LoopUnswitch
LoopVectorize [LoopVectorize] Fix crash on "getNoopOrZeroExtend cannot truncate!" (PR45259) 2020-03-30 10:14:14 -07:00
LoopVersioning
LoopVersioningLICM
LowerAtomic
LowerConstantIntrinsics
LowerExpectIntrinsic
LowerGuardIntrinsic
LowerInvoke
LowerMatrixIntrinsics [Matrix] Add new test case with getelementptr constant exprs. 2020-04-01 09:32:13 +01:00
LowerSwitch
LowerTypeTests
LowerWidenableCondition
MakeGuardsExplicit
Mem2Reg
MemCpyOpt [ValueTracking] Fix usage of DataLayout::getTypeStoreSize() 2020-03-20 16:52:15 -07:00
MergeFunc
MergeICmps
MetaRenamer
NameAnonGlobals
NaryReassociate
NewGVN [NewGVN] Make NewGVN aware of aligned_alloc 2020-04-01 23:26:51 +05:30
ObjCARC [ObjC][ARC] Don't remove autoreleaseRV/retainRV pairs if the call isn't 2020-03-13 13:52:14 -07:00
OpenMP OpenMP] Adding InaccessibleMemOnly and InaccessibleMemOrArgMemOnly for runtime calls. 2020-03-25 14:08:50 +00:00
PartiallyInlineLibCalls
PGOProfile [ThinLTO] Don't rely on debug output for thinlto_samplepgo_icp3 test 2020-03-25 14:38:20 -04:00
PhaseOrdering [InstComine] Forego of one-use check in (X - (X & Y)) --> (X & ~Y) if Y is a constant 2020-03-06 21:39:07 +03:00
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate [Reassociate] add testcases for more than 1 pairs - NFC 2020-03-19 05:21:24 -04:00
Reg2Mem
RewriteStatepointsForGC [RS4GC] Handle uses of extractelement for conversion from vector to scalar base 2020-03-06 16:28:49 -05:00
SafeStack
SampleProfile [SampleFDO] Port MD5 name table support to extbinary format. 2020-03-30 22:07:08 -07:00
ScalarizeMaskedMemIntrin/X86
Scalarizer
SCCP [SCCP] Limit use of range info for binops to integers for now. 2020-03-31 17:08:09 +01:00
SeparateConstOffsetFromGEP Fix PR45371: SeparateConstOffsetFromGEP clean up bookkeeping 2020-04-01 12:38:15 -06:00
SimpleLoopUnswitch Revert "[SimpleLoopUnswitch] Fix introduction of UB when hoisted condition may be undef or poison" 2020-02-28 11:10:46 +09:00
SimplifyCFG Allow replacing intrinsic operands with variables 2020-03-23 15:51:57 -04:00
Sink
SLPVectorizer AMDGPU: Allow vectorization of round intrinsic 2020-03-23 17:00:41 -04:00
SpeculateAroundPHIs
SpeculativeExecution
SROA [Transforms][SROA] Promote allocas with mem2reg for scalable types 2020-04-01 10:34:11 +00:00
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols
StructurizeCFG Introduce unify-loop-exits pass. 2020-03-30 13:23:56 -04:00
SyntheticCountsPropagation
TailCallElim
ThinLTOBitcodeWriter ThinLTOBitcodeWriter: drop dso_local when a GlobalVariable is converted to a declaration 2020-03-05 18:09:33 -08:00
TypePromotion/ARM
UnifyLoopExits Introduce unify-loop-exits pass. 2020-03-30 13:23:56 -04:00
Util Fixed [AssumeBundles] Move to IR so it can be used by Analysis 2020-03-10 18:02:39 +01:00
VectorCombine/X86 [VectorCombine] add shuffle tests; NFC 2020-03-25 10:35:03 -04:00
WholeProgramDevirt [WPD] Provide a way to prevent functions from being devirtualized 2020-03-09 14:05:15 +03:00