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
Simon Pilgrim aa429e1d50 [InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191) (Reapplied)
If we're bswap'ing some bytes and zero'ing the remainder we can perform this as a bswap+mask which helps us match 'partial' bswaps as a first step towards folding into a more complex bswap pattern.

Reapplied with early-out if recognizeBSwapOrBitReverseIdiom collects a source wider than the result type.

Differential Revision: https://reviews.llvm.org/D88578
2020-10-03 14:52:42 +01:00
..
AddDiscriminators.cpp
AMDGPUEmitPrintf.cpp
ASanStackFrameLayout.cpp
AssumeBundleBuilder.cpp [NFC] Remove unused GetUnderlyingObject paramenter 2020-07-31 02:10:03 -07:00
BasicBlockUtils.cpp
BreakCriticalEdges.cpp
BuildLibCalls.cpp [BuildLibCalls] Add noundef to the returned pointers of allocators and argument of free 2020-09-30 02:13:48 +09:00
BypassSlowDivision.cpp
CallGraphUpdater.cpp [NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass 2020-09-23 15:22:18 -07:00
CallPromotionUtils.cpp [Utils] isLegalToPromote - Fix missing null check before writing to FailureReason. 2020-09-15 14:49:04 +01:00
CanonicalizeAliases.cpp
CanonicalizeFreezeInLoops.cpp
CloneFunction.cpp [Cloning] Fix to cloning DISubprograms. 2020-08-21 11:54:56 -07:00
CloneModule.cpp
CMakeLists.txt [Loop Peeling] Separate the Loop Peeling Utilities from the Loop Unrolling Utilities 2020-07-31 18:31:58 +00:00
CodeExtractor.cpp [CodeExtractor] Don't create bitcasts when inserting lifetime markers (NFCI) 2020-09-29 16:34:36 -07:00
CodeMoverUtils.cpp
CtorUtils.cpp
Debugify.cpp Revert rG5dd566b7c7b78bd- "PassManager.h - remove unnecessary Function.h/Module.h includes. NFCI." 2020-07-24 13:02:33 +01:00
DemoteRegToStack.cpp Revert rG5dd566b7c7b78bd- "PassManager.h - remove unnecessary Function.h/Module.h includes. NFCI." 2020-07-24 13:02:33 +01:00
EntryExitInstrumenter.cpp
EscapeEnumerator.cpp [TSAN] Handle musttail call properly in EscapeEnumerator (and TSAN) 2020-09-15 15:20:05 -07:00
Evaluator.cpp
FixIrreducible.cpp [LowerSwitch][NewPM] Port lowerswitch to NPM 2020-09-15 18:18:31 -07:00
FlattenCFG.cpp
FunctionComparator.cpp [SVE] Make ElementCount members private 2020-08-28 14:43:53 +01:00
FunctionImportUtils.cpp
GlobalStatus.cpp
GuardUtils.cpp
ImportedFunctionsInliningStatistics.cpp
InjectTLIMappings.cpp
InlineFunction.cpp [SVE][CodeGen] Fix InlineFunction for scalable vectors 2020-09-11 08:34:51 +01:00
InstructionNamer.cpp
IntegerDivision.cpp
LCSSA.cpp [LCSSA] Provide option for caller to clean up unused PHIs. 2020-08-01 20:43:19 +01:00
LibCallsShrinkWrap.cpp
LLVMBuild.txt
Local.cpp [InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191) (Reapplied) 2020-10-03 14:52:42 +01:00
LoopPeel.cpp [LoopInfo] empty() -> isInnermost(), add isOutermost() 2020-09-22 23:28:51 +03:00
LoopRotationUtils.cpp
LoopSimplify.cpp [LoopSimplify] Use SmallPtrSet and range for loops more. NFCI. 2020-07-20 15:00:59 +02:00
LoopUnroll.cpp [Loop Peeling] Separate the Loop Peeling Utilities from the Loop Unrolling Utilities 2020-07-31 18:31:58 +00:00
LoopUnrollAndJam.cpp [NFC][LoopUnrollAndJam] Use BasicBlock::replacePhiUsesWith instead of 2020-08-11 15:35:14 +00:00
LoopUnrollRuntime.cpp
LoopUtils.cpp [LoopUtils] Only verify SE in builds with assertions. 2020-09-29 13:39:23 +01:00
LoopVersioning.cpp [LoopInfo] empty() -> isInnermost(), add isOutermost() 2020-09-22 23:28:51 +03:00
LowerInvoke.cpp
LowerMemIntrinsics.cpp
LowerSwitch.cpp [LVI] Require context instruction in external API (NFCI) 2020-09-27 18:07:24 +02:00
MatrixUtils.cpp [Matrix] Add TileInfo abstraction for tiled matrix code-gen. 2020-07-20 18:49:08 +01:00
Mem2Reg.cpp
MetaRenamer.cpp [MetaRenamer][NewPM] Port metarenamer to NPM 2020-10-02 15:42:25 -07:00
MisExpect.cpp
ModuleUtils.cpp
NameAnonGlobals.cpp
PredicateInfo.cpp [PredicateInfo][SCCP] Remove assertion (PR46814) 2020-07-23 19:36:51 +02:00
PromoteMemoryToRegister.cpp [SROA][Mem2Reg] Use efficient droppable use API (after D83976) 2020-07-28 17:41:01 -05:00
SanitizerStats.cpp
ScalarEvolutionExpander.cpp [SCEVExpander] Support expanding nonintegral pointers with constant base. 2020-09-19 17:19:53 +01:00
SimplifyCFG.cpp Revert "[gardening] Replace some uses of setDebugLoc(DebugLoc()) with dropLocation(), NFC" 2020-09-30 09:52:12 +01:00
SimplifyIndVar.cpp [IndVarSimplify] Fix Modified status for removal of overflow intrinsics 2020-09-29 13:20:59 +02:00
SimplifyLibCalls.cpp [InstCombine] Fix errno bug in pow expansion to sqrt 2020-09-22 18:58:05 -04:00
SizeOpts.cpp Reland D84057 [PGO][PGSO] Remove a temporary flag used for gradual rollout. 2020-07-22 20:57:25 -07:00
SplitModule.cpp
SSAUpdater.cpp
SSAUpdaterBulk.cpp
StripGCRelocates.cpp
StripNonLineTableDebugInfo.cpp
SymbolRewriter.cpp
UnifyFunctionExitNodes.cpp [UnifyFunctionExitNodes] Fix Modified status for unreachable blocks 2020-09-09 13:36:03 +02:00
UnifyLoopExits.cpp [LowerSwitch][NewPM] Port lowerswitch to NPM 2020-09-15 18:18:31 -07:00
UniqueInternalLinkageNames.cpp
Utils.cpp [LowerSwitch][NewPM] Port lowerswitch to NPM 2020-09-15 18:18:31 -07:00
ValueMapper.cpp
VNCoercion.cpp [gvn] Handle a corner case w/vectors of non-integral pointers 2020-10-01 19:20:21 -07:00