llvm-project/llvm/lib/Transforms/Scalar
Florian Hahn e43e8e9138
[AnnotationRemarks] Use subprogram location for summary remarks.
The summary remarks are generated on a per-function basis. Using the
first instruction's location is sub-optimal for 2 reasons:
  1. Sometimes the first instruction is missing !dbg
  2. The location of the first instruction may be mis-leading.

Instead, just use the location of the function directly.
2021-03-23 12:05:41 +00:00
..
ADCE.cpp Reapply "[DebugInfo] Handle multiple variable location operands in IR" 2021-03-17 16:45:25 +00:00
AlignmentFromAssumptions.cpp Revert "[AssumptionCache] Avoid dangling llvm.assume calls in the cache" 2021-02-11 12:17:38 -06:00
AnnotationRemarks.cpp [AnnotationRemarks] Use subprogram location for summary remarks. 2021-03-23 12:05:41 +00:00
BDCE.cpp [BDCE] SExt -> ZExt when no sign bits is used and instruction has multiple uses 2020-07-10 08:34:53 +01:00
CMakeLists.txt [ScalarizeMaskedMemIntrinsic] Move from CodeGen into Transforms 2020-12-08 12:25:58 -05:00
CallSiteSplitting.cpp [Support] Introduce a new InstructionCost class 2020-12-11 08:12:54 +00:00
ConstantHoisting.cpp [ConstantHoisting] Fix bug where constant materialization could insert into EH pad 2021-02-01 11:23:56 -08:00
ConstraintElimination.cpp [llvm] Use llvm::drop_begin (NFC) 2021-02-22 20:17:16 -08:00
CorrelatedValuePropagation.cpp [CVP] Remove -cvp-dont-add-nowrap-flags option 2021-03-07 18:19:31 +01:00
DCE.cpp [Scalar] Use range-based for loops (NFC) 2021-02-25 19:54:38 -08:00
DeadStoreElimination.cpp [DSE] Extending isOverwrite to support offsetted fully overlapping stores 2021-03-10 21:09:33 +01:00
DivRemPairs.cpp [ValueTracking] Use assume's noundef operand bundle 2020-10-14 20:16:33 +09:00
EarlyCSE.cpp [gvn] CSE gc.relocates based on meaning, not spelling (try 2) 2021-03-16 10:59:31 -07:00
FlattenCFGPass.cpp [NFC] Reduce include files dependency and AA header cleanup (part 2). 2020-12-17 14:04:48 +03:00
Float2Int.cpp [NFC] Reduce include files dependency and AA header cleanup (part 2). 2020-12-17 14:04:48 +03:00
GVN.cpp [gvn] CSE gc.relocates based on meaning, not spelling (try 2) 2021-03-16 10:59:31 -07:00
GVNHoist.cpp Require chained analyses in BasicAA and AAResults to be transitive 2021-01-11 11:50:07 +01:00
GVNSink.cpp [Transforms] Use llvm::append_range (NFC) 2021-01-20 21:35:54 -08:00
GuardWidening.cpp [llvm] Use llvm::all_of (NFC) 2021-01-19 20:19:17 -08:00
IVUsersPrinter.cpp
IndVarSimplify.cpp [Transforms] Use llvm::erase_if (NFC) 2020-12-17 19:53:10 -08:00
InductiveRangeCheckElimination.cpp [IRCE] Remove unused IsSigned and its accessor (NFC) 2020-12-04 21:26:12 -08:00
InferAddressSpaces.cpp [NewPM] Port infer-address-spaces 2020-12-28 19:58:12 -08:00
InstSimplifyPass.cpp [Bindings] Move LLVMAddInstructionSimplifyPass to Scalar.cpp 2020-09-02 10:35:39 -07:00
JumpThreading.cpp [CSSPGO] Deduplicating dangling pseudo probes. 2021-03-03 22:44:42 -08:00
LICM.cpp [LCSSA] Extract a utility for deciding if a new use requires a new lcssa phi [NFC] 2021-03-17 12:14:01 -07:00
LoopAccessAnalysisPrinter.cpp
LoopDataPrefetch.cpp [LoopInfo] empty() -> isInnermost(), add isOutermost() 2020-09-22 23:28:51 +03:00
LoopDeletion.cpp [LoopDeletion] Handle inner loops w/untaken backedges 2021-01-22 16:31:29 -08:00
LoopDistribute.cpp [NFC] Reduce include files dependency and AA header cleanup (part 2). 2020-12-17 14:04:48 +03:00
LoopFlatten.cpp NFC: Migrate LoopFlatten to work on InstructionCost. 2021-02-06 11:47:04 +00:00
LoopFuse.cpp [Transforms] Construct SmallVector with iterator ranges (NFC) 2021-01-02 09:24:17 -08:00
LoopIdiomRecognize.cpp NFC: Migrate LoopIdiomRecognize to work on InstructionCost 2021-02-06 14:39:19 +00:00
LoopInstSimplify.cpp
LoopInterchange.cpp Revert "[LoopInterchange] Replace tightly-nesting-ness check with the one from `LoopNest`" 2021-03-11 01:24:43 +08:00
LoopLoadElimination.cpp [LoopLoadElim] Pass ScalarEvolution in old pass manager. PR49141 2021-02-15 18:08:23 +07:00
LoopPassManager.cpp [NewPM] Verify LoopAnalysisResults after a loop pass 2021-03-19 14:56:37 -07:00
LoopPredication.cpp [BPI] Improve static heuristics for "cold" paths. 2020-12-23 22:47:36 +07:00
LoopRerollPass.cpp [Scalar] Use range-based for loops (NFC) 2021-02-25 19:54:38 -08:00
LoopRotation.cpp [LoopRotate] Add PrepareForLTO stage, avoid rotating with inline cands. 2021-01-19 10:15:29 +00:00
LoopSimplifyCFG.cpp [DominatorTree] Add support for mixed pre/post CFG views. 2021-01-06 14:53:09 -08:00
LoopSink.cpp [llvm] Use set_is_subset (NFC) 2021-02-28 10:59:20 -08:00
LoopStrengthReduce.cpp Reapply "[DebugInfo] Handle multiple variable location operands in IR" 2021-03-17 16:45:25 +00:00
LoopUnrollAndJamPass.cpp [LoopUnrollAndJam] Allow unroll and jam loops forced by user. 2020-09-17 19:40:14 +00:00
LoopUnrollPass.cpp NFC: Migrate LoopUnrollPass to work on InstructionCost 2021-02-04 14:05:40 +00:00
LoopUnswitch.cpp [Scalar] Use range-based for loops (NFC) 2021-02-25 19:54:38 -08:00
LoopVersioningLICM.cpp [SCEV] Use isa<> pattern for testing for CouldNotCompute [NFC] 2020-11-24 18:47:49 -08:00
LowerAtomic.cpp
LowerConstantIntrinsics.cpp [LowerConstantIntrinsics] Preserve Dominator Tree, if avaliable 2021-01-30 01:14:50 +03:00
LowerExpectIntrinsic.cpp [TargetTransformInfo] move branch probability query from TargetLoweringInfo 2021-03-22 15:55:34 -04:00
LowerGuardIntrinsic.cpp
LowerMatrixIntrinsics.cpp [OpaquePtrs] Remove some uses of type-less CreateLoad APIs (NFC) 2021-03-11 14:40:57 +01:00
LowerWidenableCondition.cpp
MakeGuardsExplicit.cpp
MemCpyOptimizer.cpp [MemCpyOpt] Add missing MemorySSAWrapperPass dependency macro 2021-03-16 20:30:00 +01:00
MergeICmps.cpp [Transforms/Scalar] Use range-based for loops (NFC) 2021-02-04 21:18:05 -08:00
MergedLoadStoreMotion.cpp
NaryReassociate.cpp Revert "[NARY-REASSOCIATE] Support reassociation of min/max" 2021-02-26 19:47:54 +07:00
NewGVN.cpp [llvm] Use set_is_subset (NFC) 2021-02-28 10:59:20 -08:00
PartiallyInlineLibCalls.cpp [PartiallyInlineLibCalls] Preserve Dominator Tree, if avaliable 2021-01-29 01:11:36 +03:00
PlaceSafepoints.cpp [Transforms] Use llvm::append_range (NFC) 2020-12-27 09:57:29 -08:00
Reassociate.cpp [Reassociate] allow or->add with shl operands 2021-02-07 09:45:19 -05:00
Reg2Mem.cpp [Reg2Mem] add support for the new pass manager 2020-11-08 11:14:05 +00:00
RewriteStatepointsForGC.cpp [RS4GC] Fix hang on infinite loop 2021-03-23 12:54:51 +07:00
SCCP.cpp [ObjC][ARC] Use operand bundle 'clang.arc.attachedcall' instead of 2021-03-04 11:22:30 -08:00
SROA.cpp [OpaquePtrs] Remove some uses of type-less CreateGEP() (NFC) 2021-03-12 21:01:16 +01:00
Scalar.cpp [ScalarizeMaskedMemIntrin] Add new PM support 2020-12-08 17:15:22 -05:00
ScalarizeMaskedMemIntrin.cpp Expand masked mem intrinsics correctly wrt big-endian 2021-02-11 08:59:52 +00:00
Scalarizer.cpp [Scalarizer] Use poison as insertelement's placeholder 2021-01-04 00:35:28 +09:00
SeparateConstOffsetFromGEP.cpp SeparateConstOffsetFromGEP::lowerToSingleIndexGEPs - don't use dyn_cast_or_null. NFCI. 2020-12-15 17:27:25 +00:00
SimpleLoopUnswitch.cpp [Unswitch] Guard dbgs logging with LLVM_DEBUG 2021-03-16 22:31:57 -07:00
SimplifyCFGPass.cpp [SimplifyCFG] Change 'LoopHeaders' to be ArrayRef<WeakVH>, not a naked set, thus avoiding dangling pointers 2021-01-23 16:48:35 +03:00
Sink.cpp Sink: Handle instruction sink when a user is dead 2020-10-09 16:20:26 -07:00
SpeculateAroundPHIs.cpp NFC: Migrate SpeculateAroundPHIs to work on InstructionCost 2021-02-02 13:32:45 +00:00
SpeculativeExecution.cpp Reapply "[DebugInfo] Handle multiple variable location operands in IR" 2021-03-17 16:45:25 +00:00
StraightLineStrengthReduce.cpp [Transforms/Scalar] Use range-based for loops (NFC) 2021-02-04 21:18:05 -08:00
StructurizeCFG.cpp [Scalar] Use range-based for loops (NFC) 2021-02-25 19:54:38 -08:00
TailRecursionElimination.cpp [ObjC][ARC] Use operand bundle 'clang.arc.attachedcall' instead of 2021-03-04 11:22:30 -08:00
WarnMissedTransforms.cpp [SVE] Add support for scalable vectors with vectorize.scalable.enable loop attribute 2020-12-02 13:23:43 +00:00