|
11 | 11 |
|
12 | 12 | #include "AArch64TargetMachine.h"
|
13 | 13 | #include "AArch64.h"
|
14 |
| -#include "AArch64LoopIdiomTransform.h" |
15 | 14 | #include "AArch64MachineFunctionInfo.h"
|
16 | 15 | #include "AArch64MachineScheduler.h"
|
17 | 16 | #include "AArch64MacroFusion.h"
|
|
52 | 51 | #include "llvm/TargetParser/Triple.h"
|
53 | 52 | #include "llvm/Transforms/CFGuard.h"
|
54 | 53 | #include "llvm/Transforms/Scalar.h"
|
| 54 | +#include "llvm/Transforms/Vectorize/LoopIdiomVectorize.h" |
55 | 55 | #include <memory>
|
56 | 56 | #include <optional>
|
57 | 57 | #include <string>
|
@@ -234,7 +234,6 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAArch64Target() {
|
234 | 234 | initializeAArch64DeadRegisterDefinitionsPass(*PR);
|
235 | 235 | initializeAArch64ExpandPseudoPass(*PR);
|
236 | 236 | initializeAArch64LoadStoreOptPass(*PR);
|
237 |
| - initializeAArch64LoopIdiomTransformLegacyPassPass(*PR); |
238 | 237 | initializeAArch64MIPeepholeOptPass(*PR);
|
239 | 238 | initializeAArch64SIMDInstrOptPass(*PR);
|
240 | 239 | initializeAArch64O0PreLegalizerCombinerPass(*PR);
|
@@ -553,12 +552,9 @@ class AArch64PassConfig : public TargetPassConfig {
|
553 | 552 | void AArch64TargetMachine::registerPassBuilderCallbacks(
|
554 | 553 | PassBuilder &PB, bool PopulateClassToPassNames) {
|
555 | 554 |
|
556 |
| -#define GET_PASS_REGISTRY "AArch64PassRegistry.def" |
557 |
| -#include "llvm/Passes/TargetPassRegistry.inc" |
558 |
| - |
559 | 555 | PB.registerLateLoopOptimizationsEPCallback(
|
560 | 556 | [=](LoopPassManager &LPM, OptimizationLevel Level) {
|
561 |
| - LPM.addPass(AArch64LoopIdiomTransformPass()); |
| 557 | + LPM.addPass(LoopIdiomVectorizePass()); |
562 | 558 | });
|
563 | 559 | }
|
564 | 560 |
|
|
0 commit comments