This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository llvm.
from a7af0d6 Split IntrReadArgMem into IntrReadMem and IntrArgMemOnly new c852398 Initial implementation of optimization bisect support. new 43a1464 [instcombine][unordered] Extend load(select) transform to han [...] new 88c88b2 DAGCombiner: Reduce 64-bit BFE pattern to pattern on 32-bit c [...]
The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: include/llvm/Analysis/CallGraphSCCPass.h | 10 +- include/llvm/Analysis/LazyCallGraph.h | 9 + include/llvm/Analysis/LoopPass.h | 7 +- include/llvm/IR/LLVMContext.h | 4 + include/llvm/IR/OptBisect.h | 139 ++++++++ include/llvm/Pass.h | 19 +- lib/Analysis/CallGraphSCCPass.cpp | 9 +- lib/Analysis/LoopPass.cpp | 14 +- lib/CodeGen/BranchFolding.cpp | 2 +- lib/CodeGen/CodeGenPrepare.cpp | 2 +- lib/CodeGen/DeadMachineInstructionElim.cpp | 2 +- lib/CodeGen/LowerEmuTLS.cpp | 3 + lib/CodeGen/MachineBlockPlacement.cpp | 2 +- lib/CodeGen/MachineCSE.cpp | 2 +- lib/CodeGen/MachineCopyPropagation.cpp | 2 +- lib/CodeGen/MachineLICM.cpp | 2 +- lib/CodeGen/MachineScheduler.cpp | 4 +- lib/CodeGen/MachineSink.cpp | 2 +- lib/CodeGen/OptimizePHIs.cpp | 2 +- lib/CodeGen/PeepholeOptimizer.cpp | 2 +- lib/CodeGen/PostRASchedulerList.cpp | 2 +- lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 44 +++ lib/CodeGen/StackColoring.cpp | 2 +- lib/CodeGen/TailDuplication.cpp | 2 +- lib/IR/CMakeLists.txt | 1 + lib/IR/LLVMContext.cpp | 4 + lib/IR/LLVMContextImpl.cpp | 18 + lib/IR/LLVMContextImpl.h | 4 + lib/IR/OptBisect.cpp | 176 ++++++++++ lib/IR/Pass.cpp | 23 +- lib/Transforms/IPO/ArgumentPromotion.cpp | 3 + lib/Transforms/IPO/ConstantMerge.cpp | 2 + lib/Transforms/IPO/CrossDSOCFI.cpp | 3 + lib/Transforms/IPO/DeadArgumentElimination.cpp | 3 + lib/Transforms/IPO/ElimAvailExtern.cpp | 3 + lib/Transforms/IPO/ExtractGV.cpp | 3 + lib/Transforms/IPO/FunctionAttrs.cpp | 9 + lib/Transforms/IPO/FunctionImport.cpp | 3 + lib/Transforms/IPO/GlobalDCE.cpp | 3 + lib/Transforms/IPO/GlobalOpt.cpp | 3 + lib/Transforms/IPO/IPConstantPropagation.cpp | 3 + lib/Transforms/IPO/InferFunctionAttrs.cpp | 7 + lib/Transforms/IPO/Inliner.cpp | 3 + lib/Transforms/IPO/Internalize.cpp | 3 + lib/Transforms/IPO/LoopExtractor.cpp | 5 +- lib/Transforms/IPO/LowerBitSets.cpp | 3 + lib/Transforms/IPO/MergeFunctions.cpp | 3 + lib/Transforms/IPO/PartialInlining.cpp | 3 + lib/Transforms/IPO/PruneEH.cpp | 3 + lib/Transforms/IPO/StripDeadPrototypes.cpp | 7 + lib/Transforms/IPO/StripSymbols.cpp | 11 + lib/Transforms/IPO/WholeProgramDevirt.cpp | 7 +- .../InstCombine/InstCombineLoadStoreAlloca.cpp | 7 +- .../InstCombine/InstructionCombining.cpp | 6 +- .../Instrumentation/PGOInstrumentation.cpp | 6 + lib/Transforms/ObjCARC/ObjCARCAPElim.cpp | 3 + lib/Transforms/Scalar/ADCE.cpp | 6 +- lib/Transforms/Scalar/BDCE.cpp | 2 +- lib/Transforms/Scalar/ConstantHoisting.cpp | 2 +- .../Scalar/CorrelatedValuePropagation.cpp | 2 +- lib/Transforms/Scalar/DCE.cpp | 4 +- lib/Transforms/Scalar/DeadStoreElimination.cpp | 2 +- lib/Transforms/Scalar/EarlyCSE.cpp | 6 +- lib/Transforms/Scalar/Float2Int.cpp | 2 +- lib/Transforms/Scalar/GVN.cpp | 6 +- lib/Transforms/Scalar/IndVarSimplify.cpp | 2 +- lib/Transforms/Scalar/JumpThreading.cpp | 2 +- lib/Transforms/Scalar/LICM.cpp | 2 +- lib/Transforms/Scalar/LoadCombine.cpp | 2 +- lib/Transforms/Scalar/LoopDeletion.cpp | 2 +- lib/Transforms/Scalar/LoopIdiomRecognize.cpp | 2 +- lib/Transforms/Scalar/LoopInstSimplify.cpp | 2 +- lib/Transforms/Scalar/LoopLoadElimination.cpp | 3 + lib/Transforms/Scalar/LoopRerollPass.cpp | 2 +- lib/Transforms/Scalar/LoopRotation.cpp | 2 +- lib/Transforms/Scalar/LoopSimplifyCFG.cpp | 2 +- lib/Transforms/Scalar/LoopStrengthReduce.cpp | 2 +- lib/Transforms/Scalar/LoopUnrollPass.cpp | 2 +- lib/Transforms/Scalar/LoopUnswitch.cpp | 2 +- lib/Transforms/Scalar/LoopVersioningLICM.cpp | 2 +- lib/Transforms/Scalar/LowerAtomic.cpp | 2 +- lib/Transforms/Scalar/MemCpyOptimizer.cpp | 2 +- lib/Transforms/Scalar/MergedLoadStoreMotion.cpp | 3 + lib/Transforms/Scalar/NaryReassociate.cpp | 2 +- lib/Transforms/Scalar/Reassociate.cpp | 2 +- lib/Transforms/Scalar/SCCP.cpp | 5 +- lib/Transforms/Scalar/SROA.cpp | 6 +- lib/Transforms/Scalar/ScalarReplAggregates.cpp | 2 +- .../Scalar/SeparateConstOffsetFromGEP.cpp | 2 +- lib/Transforms/Scalar/SimplifyCFGPass.cpp | 6 +- lib/Transforms/Scalar/SpeculativeExecution.cpp | 2 +- .../Scalar/StraightLineStrengthReduce.cpp | 2 +- lib/Transforms/Scalar/TailRecursionElimination.cpp | 2 +- lib/Transforms/Utils/Mem2Reg.cpp | 6 +- lib/Transforms/Vectorize/BBVectorize.cpp | 2 +- lib/Transforms/Vectorize/LoopVectorize.cpp | 3 + lib/Transforms/Vectorize/SLPVectorizer.cpp | 2 +- test/CodeGen/AArch64/arm64-bitfield-extract.ll | 2 +- test/CodeGen/AMDGPU/cgp-bitfield-extract.ll | 6 +- test/CodeGen/AMDGPU/shift-and-i128-ubfe.ll | 124 +++++++ test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll | 386 +++++++++++++++++++++ test/CodeGen/X86/bmi.ll | 4 +- test/Other/opt-bisect-helper.py | 39 +++ test/Other/opt-bisect-legacy-pass-manager.ll | 148 ++++++++ test/Other/opt-bisect-new-pass-manager.ll | 109 ++++++ test/Transforms/InstCombine/atomic.ll | 28 ++ 106 files changed, 1499 insertions(+), 90 deletions(-) create mode 100644 include/llvm/IR/OptBisect.h create mode 100644 lib/IR/OptBisect.cpp create mode 100644 test/CodeGen/AMDGPU/shift-and-i128-ubfe.ll create mode 100644 test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll create mode 100755 test/Other/opt-bisect-helper.py create mode 100644 test/Other/opt-bisect-legacy-pass-manager.ll create mode 100644 test/Other/opt-bisect-new-pass-manager.ll