llvm-project/llvm/lib
Roman Lebedev e52364532a
[NewPM] Remove SpeculateAroundPHIs pass
Addition of this pass has been botched.
There is no particular reason why it had to be sold as an inseparable part
of new-pm transition. It was added when old-pm was still the default,
and very *very* few users were actually tracking new-pm,
so it's effects weren't measured.

Which means, some of the turnoil of the new-pm transition
are actually likely regressions due to this pass.

Likewise, there has been a number of post-commit feedback
(post new-pm switch), namely
* https://reviews.llvm.org/D37467#2787157 (regresses HW-loops)
* https://reviews.llvm.org/D37467#2787259 (should not be in middle-end, should run after LSR, not before)
* https://reviews.llvm.org/D95789 (an attempt to fix bad loop backedge metadata)
and in the half year past, the pass authors (google) still haven't found time to respond to any of that.

Hereby it is proposed to backout the pass from the pipeline,
until someone who cares about it can address the issues reported,
and properly start the process of adding a new pass into the pipeline,
with proper performance evaluation.

Furthermore, neither google nor facebook reports any perf changes
from this change, so i'm dropping the pass completely.
It can always be re-reverted should/if anyone want to pick it up again.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D104099
2021-06-15 20:35:55 +03:00
..
Analysis A post-processing for BFI inference 2021-06-11 21:46:04 -07:00
AsmParser [LLParser] Remove outdated deplibs 2021-06-14 12:46:12 +08:00
BinaryFormat [AIX][XCOFF] emit vector info of traceback table. 2021-06-14 11:15:22 -04:00
Bitcode Move some code under NDEBUG from D103135 2021-06-14 11:39:12 -07:00
Bitstream
CodeGen [TLI] SimplifyDemandedVectorElts(): handle SCALAR_TO_VECTOR(EXTRACT_VECTOR_ELT(?, 0)) 2021-06-14 23:52:53 +03:00
DWARFLinker
DebugInfo [Debug-Info][CodeView] Fix GUID string generation for MSVC generated objects. 2021-06-15 06:53:21 +01:00
Demangle [Demangle][Rust] Parse const backreferences 2021-06-08 10:01:50 +02:00
ExecutionEngine [ORC] Fix endianness in manual serialization to match WrapperFunctionUtils. 2021-06-15 21:51:52 +10:00
Extensions
FileCheck
Frontend [OPENMP]Fix PR50129: omp cancel parallel not working as expected. 2021-06-04 08:24:55 -07:00
FuzzMutate [FuzzMutate] Fix getWeight of InstDeleterIRStrategy 2021-06-08 11:14:33 -07:00
Fuzzer
IR Intrinsic::getName: require a Module argument 2021-06-14 14:52:29 +02:00
IRReader
InterfaceStub
LTO [LTO] Support new PM in ThinLTOCodeGenerator. 2021-06-09 10:05:14 +01:00
LineEditor
Linker
MC Implement DW_CFA_LLVM_* for Heterogeneous Debugging 2021-06-14 08:51:50 +05:30
MCA [MCA][InstrBuilder] Check for the presence of flag VariadicOpsAreDefs. 2021-06-15 09:52:38 +01:00
Object [AIX][XCOFF] emit vector info of traceback table. 2021-06-14 11:15:22 -04:00
ObjectYAML [NFC][XCOFF] Replace structs FileHeader32/SectionHeader32 with constants. 2021-06-10 11:10:45 +00:00
Option
Passes [NewPM] Remove SpeculateAroundPHIs pass 2021-06-15 20:35:55 +03:00
ProfileData [CSSPGO] Aggregation by the last K context frames for cold profiles 2021-06-14 10:33:43 -07:00
Remarks
Support Allow signposts to take advantage of deferred string substitution 2021-06-14 16:53:41 -07:00
TableGen DetailedRecordsBackend.cpp - printSectionHeading - avoid std::string creation/copies. 2021-06-13 16:49:40 +01:00
Target Revert "[ARM] Extend narrow values to allow using truncating scatters" 2021-06-15 18:19:25 +01:00
Testing Fix for error "'Run' overrides a member function but is not marked 2021-06-11 06:56:00 -07:00
TextAPI Reland "[llvm] llvm-tapi-diff" 2021-06-09 21:17:34 -07:00
ToolDrivers
Transforms [NewPM] Remove SpeculateAroundPHIs pass 2021-06-15 20:35:55 +03:00
WindowsManifest
XRay
CMakeLists.txt