diff --git a/lib/Passes/PassBuilder.cpp b/lib/Passes/PassBuilder.cpp index b40667e5eb8..eed8b2d36b9 100644 --- a/lib/Passes/PassBuilder.cpp +++ b/lib/Passes/PassBuilder.cpp @@ -88,6 +88,7 @@ #include "llvm/Transforms/Scalar/GuardWidening.h" #include "llvm/Transforms/Scalar/IndVarSimplify.h" #include "llvm/Transforms/Scalar/JumpThreading.h" +#include "llvm/Transforms/Scalar/LICM.h" #include "llvm/Transforms/Scalar/LoopIdiomRecognize.h" #include "llvm/Transforms/Scalar/LoopRotation.h" #include "llvm/Transforms/Scalar/LoopSimplifyCFG.h" diff --git a/lib/Passes/PassRegistry.def b/lib/Passes/PassRegistry.def index e8f3ccff8d0..ffa0864edc2 100644 --- a/lib/Passes/PassRegistry.def +++ b/lib/Passes/PassRegistry.def @@ -187,6 +187,7 @@ LOOP_ANALYSIS("access-info", LoopAccessAnalysis()) #define LOOP_PASS(NAME, CREATE_PASS) #endif LOOP_PASS("invalidate", InvalidateAllAnalysesPass()) +LOOP_PASS("licm", LICMPass()) LOOP_PASS("loop-idiom", LoopIdiomRecognizePass()) LOOP_PASS("rotate", LoopRotatePass()) LOOP_PASS("no-op-loop", NoOpLoopPass())