Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -726,6 +726,9 @@ Compiler/Runtime improvements
* Inference now propagates constants inter-procedurally, and can compute
various constants expressions at compile-time ([#24362]).

* The LLVM SLP Vectorizer optimization pass is now enabled at the default
optimization level.

Deprecated or removed
---------------------

Expand Down
9 changes: 2 additions & 7 deletions src/jitlayers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -257,14 +257,9 @@ void addOptimizationPasses(legacy::PassManagerBase *PM, int opt_level, bool dump
PM->add(createLoopIdiomPass());
PM->add(createLoopDeletionPass()); // Delete dead loops
PM->add(createJumpThreadingPass()); // Thread jumps

if (opt_level >= 3) {
PM->add(createSLPVectorizerPass()); // Vectorize straight-line code
}

PM->add(createSLPVectorizerPass()); // Vectorize straight-line code
PM->add(createAggressiveDCEPass()); // Delete dead instructions
if (opt_level >= 3)
PM->add(createInstructionCombiningPass()); // Clean up after SLP loop vectorizer
PM->add(createInstructionCombiningPass()); // Clean up after SLP loop vectorizer
PM->add(createLoopVectorizePass()); // Vectorize loops
PM->add(createInstructionCombiningPass()); // Clean up after loop vectorizer
// LowerPTLS removes an indirect call. As a result, it is likely to trigger
Expand Down