1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/lib/Transforms/Utils
Huihui Zhang ac2cde5e83 [LSR][SCEVExpander] Avoid blind cast 'Factor' to SCEVConstant in FactorOutConstant.
Summary:
In SCEVExpander FactorOutConstant(), when GEP indexing into/over scalable vector,
it is legal for the 'Factor' in a MulExpr to be the size of a scalable vector
instead of a compile-time constant.

Current upstream crash with the test attached.

Reviewers: efriedma, sdesmalen, sanjoy.google, mkazantsev

Reviewed By: efriedma

Subscribers: hiraditya, javed.absar, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80973
2020-06-04 10:33:39 -07:00
..
AddDiscriminators.cpp
AMDGPUEmitPrintf.cpp
ASanStackFrameLayout.cpp
AssumeBundleBuilder.cpp Give helpers internal linkage. NFC. 2020-05-19 22:16:37 +02:00
BasicBlockUtils.cpp Create utility function to Merge Adjacent Basic Blocks 2020-05-28 16:44:37 +00:00
BreakCriticalEdges.cpp [BrachProbablityInfo] Set edge probabilities at once and fix calcMetadataWeights() 2020-05-21 12:52:37 +07:00
BuildLibCalls.cpp
BypassSlowDivision.cpp
CallGraphUpdater.cpp [NewPassManager] Add assertions when getting statefull cached analysis. 2020-05-13 12:38:38 -07:00
CallPromotionUtils.cpp [ICP] Handling must tail calls in indirect call promotion 2020-05-03 10:42:22 -07:00
CanonicalizeAliases.cpp
CanonicalizeFreezeInLoops.cpp Fix a layering violation by not depending from Transforms/Utils on Transforms/Scalar. 2020-05-21 09:51:58 +02:00
CloneFunction.cpp
CloneModule.cpp
CMakeLists.txt Revert "Added a new IRCanonicalizer pass." 2020-05-23 13:51:43 +02:00
CodeExtractor.cpp [BrachProbablityInfo] Set edge probabilities at once and fix calcMetadataWeights() 2020-05-21 12:52:37 +07:00
CodeMoverUtils.cpp [CodeMoverUtils] Use dominator tree level to decide the direction of 2020-05-27 18:02:06 +00:00
CtorUtils.cpp
Debugify.cpp [NFC][Debugify] Format the CheckModuleDebugify output 2020-05-27 10:32:40 +02:00
DemoteRegToStack.cpp
EntryExitInstrumenter.cpp
EscapeEnumerator.cpp
Evaluator.cpp
FixIrreducible.cpp
FlattenCFG.cpp [FlattenCFG] Fix MergeIfRegion in case then-path is empty 2020-05-21 14:06:44 +03:00
FunctionComparator.cpp [MergeFuncs] Don't merge shufflevectors with different masks 2020-05-02 10:21:14 +02:00
FunctionImportUtils.cpp
GlobalStatus.cpp
GuardUtils.cpp
ImportedFunctionsInliningStatistics.cpp
InjectTLIMappings.cpp [VectorUtils] Expose vector-function-abi-variant mangling as a utility. 2020-05-15 11:42:20 -04:00
InlineFunction.cpp Revert "Revert "[llvm][NFC] Cleanup uses of std::function in Inlining-related APIs"" 2020-05-15 12:29:16 -07:00
InstructionNamer.cpp [InstNamer] use 'i' for Instructions, not 'tmp' 2020-06-01 11:11:14 -04:00
IntegerDivision.cpp
LCSSA.cpp
LibCallsShrinkWrap.cpp
LLVMBuild.txt
Local.cpp [Local] Prevent invertCondition from creating a redundant instruction 2020-05-29 21:08:22 +03:00
LoopRotationUtils.cpp
LoopSimplify.cpp [LoopSimplify] don't separate nested loops with convergent calls 2020-05-19 09:22:39 +05:30
LoopUnroll.cpp [LoopUnroll] Fix build failure for allyesconfig. 2020-05-30 18:32:47 +00:00
LoopUnrollAndJam.cpp Create utility function to Merge Adjacent Basic Blocks 2020-05-28 16:44:37 +00:00
LoopUnrollPeel.cpp
LoopUnrollRuntime.cpp [SCEV] Move ScalarEvolutionExpander.cpp to Transforms/Utils (NFC). 2020-05-20 10:53:40 +01:00
LoopUtils.cpp [LoopUtils] Use llvm::find 2020-05-25 13:34:56 +00:00
LoopVersioning.cpp [SCEV] Move ScalarEvolutionExpander.cpp to Transforms/Utils (NFC). 2020-05-20 10:53:40 +01:00
LowerInvoke.cpp
LowerMemIntrinsics.cpp
LowerSwitch.cpp [LVI] Don't require DominatorTree in LVI (NFC) 2020-05-19 20:21:46 +02:00
Mem2Reg.cpp
MetaRenamer.cpp
MisExpect.cpp
ModuleUtils.cpp
NameAnonGlobals.cpp
PredicateInfo.cpp
PromoteMemoryToRegister.cpp [NFC] Deduplicate comment in PromoteMemoryToRegister.cpp 2020-05-15 15:18:07 -04:00
SanitizerStats.cpp
ScalarEvolutionExpander.cpp [LSR][SCEVExpander] Avoid blind cast 'Factor' to SCEVConstant in FactorOutConstant. 2020-06-04 10:33:39 -07:00
SimplifyCFG.cpp SimplifyCFG: Clean up optforfuzzing implementation 2020-05-23 13:49:50 -04:00
SimplifyIndVar.cpp [SCEV] Move ScalarEvolutionExpander.cpp to Transforms/Utils (NFC). 2020-05-20 10:53:40 +01:00
SimplifyLibCalls.cpp [SVE] Eliminate calls to default-false VectorType::get() from Utils 2020-05-29 15:01:18 -07:00
SizeOpts.cpp
SplitModule.cpp
SSAUpdater.cpp
SSAUpdaterBulk.cpp
StripGCRelocates.cpp [Statepoint] Replace uses of isX functions with idiomatic isa<X> 2020-05-27 18:32:28 -07:00
StripNonLineTableDebugInfo.cpp
SymbolRewriter.cpp
UnifyFunctionExitNodes.cpp
UnifyLoopExits.cpp
UniqueInternalLinkageNames.cpp
Utils.cpp Revert "Added a new IRCanonicalizer pass." 2020-05-23 13:51:43 +02:00
ValueMapper.cpp ValueMapper does not preserve inline assembly dialect when remapping the type 2020-05-17 14:57:50 -07:00
VNCoercion.cpp