1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/test/Transforms
Hal Finkel 5d195fd587 Check for all known bits on ret in InstCombine
From a combination of @llvm.assume calls (and perhaps through other means, such
as range metadata), it is possible that all bits of a return value might be
known. Previously, InstCombine did not check for this (which is understandable
given assumptions of constant propagation), but means that we'd miss simple
cases where assumptions are involved.

llvm-svn: 217346
2014-09-07 21:28:34 +00:00
..
ADCE
AddDiscriminators Use DILexicalBlockFile, rather than DILexicalBlock, to track discriminator changes to ensure discriminator changes don't introduce new DWARF DW_TAG_lexical_blocks. 2014-08-21 22:45:21 +00:00
AlignmentFromAssumptions Add an AlignmentFromAssumptions Pass 2014-09-07 20:05:11 +00:00
ArgumentPromotion Don't promote byval pointer arguments when padding matters 2014-08-28 22:42:00 +00:00
AtomicExpand/ARM Use target-dependent emitLeading/TrailingFence instead of the target-independent insertLeading/TrailingFence (in AtomicExpandPass) 2014-09-03 21:01:03 +00:00
BBVectorize
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantHoisting
ConstantMerge
ConstProp Fix a bug around truncating vector in const prop. 2014-08-21 02:12:35 +00:00
CorrelatedValuePropagation
DeadArgElim musttail: Don't eliminate varargs packs if there is a forwarding call 2014-08-26 00:59:51 +00:00
DeadStoreElimination Relax the constraint more in MemoryDependencyAnalysis.cpp 2014-08-29 20:32:58 +00:00
DebugIR
EarlyCSE
FunctionAttrs
GCOVProfiling
GlobalDCE Remove dangling initializers in GlobalDCE 2014-08-25 17:51:14 +00:00
GlobalOpt
GVN Relax the constraint more in MemoryDependencyAnalysis.cpp 2014-08-29 20:32:58 +00:00
IndVarSimplify IndVarSimplify: Don't let LFTR compare against a poison value 2014-09-03 23:03:18 +00:00
Inline Add functions for finding ephemeral values 2014-09-07 13:49:57 +00:00
InstCombine Check for all known bits on ret in InstCombine 2014-09-07 21:28:34 +00:00
InstMerge
InstSimplify Revert: [APFloat] Fixed a bug in method 'fusedMultiplyAdd'. 2014-09-02 17:22:49 +00:00
Internalize
IPConstantProp
JumpThreading Make use of @llvm.assume from LazyValueInfo 2014-09-07 20:29:59 +00:00
LCSSA
LICM LICM: Don't crash when an instruction is used by an unreachable BB 2014-09-02 16:22:00 +00:00
LoadCombine
LoopDeletion
LoopIdiom
LoopReroll
LoopRotate
LoopSimplify
LoopStrengthReduce
LoopUnroll Add functions for finding ephemeral values 2014-09-07 13:49:57 +00:00
LoopUnswitch
LoopVectorize Add a convenience method to copy wrapping, exact, and fast-math flags (NFC). 2014-09-01 18:44:57 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt Fix a really bad miscompile introduced in r216865 - the else-if logic 2014-09-01 10:09:18 +00:00
MergeFunc Fix crash when looking up the addrspace of GEPs with vector types 2014-09-02 18:47:54 +00:00
MetaRenamer
ObjCARC
PartiallyInlineLibCalls
PhaseOrdering
PruneEH
Reassociate Reassociate x + -0.1234 * y into x - 0.1234 * y 2014-08-21 10:45:30 +00:00
Reg2Mem
SampleProfile Use DILexicalBlockFile, rather than DILexicalBlock, to track discriminator changes to ensure discriminator changes don't introduce new DWARF DW_TAG_lexical_blocks. 2014-08-21 22:45:21 +00:00
Scalarizer
ScalarRepl
SCCP
SeparateConstOffsetFromGEP/NVPTX
SimplifyCFG Make fabs safe to speculatively execute 2014-08-29 16:01:17 +00:00
Sink
SLPVectorizer Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
SROA SROA: Don't insert instructions before a PHI 2014-09-01 21:20:14 +00:00
StripSymbols
StructurizeCFG
TailCallElim
TailDup
Util