13bab7e1aSChandler Carruth //===- LoopAccessAnalysisPrinter.cpp - Loop Access Analysis Printer --------==// 23bab7e1aSChandler Carruth // 32946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 42946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 52946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 63bab7e1aSChandler Carruth // 73bab7e1aSChandler Carruth //===----------------------------------------------------------------------===// 83bab7e1aSChandler Carruth 93bab7e1aSChandler Carruth #include "llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h" 103bab7e1aSChandler Carruth #include "llvm/Analysis/LoopAccessAnalysis.h" 11*59630917Sserge-sans-paille #include "llvm/Analysis/LoopInfo.h" 123bab7e1aSChandler Carruth using namespace llvm; 133bab7e1aSChandler Carruth 143bab7e1aSChandler Carruth #define DEBUG_TYPE "loop-accesses" 153bab7e1aSChandler Carruth 163bab7e1aSChandler Carruth PreservedAnalyses run(Loop & L,LoopAnalysisManager & AM,LoopStandardAnalysisResults & AR,LPMUpdater &)173bab7e1aSChandler CarruthLoopAccessInfoPrinterPass::run(Loop &L, LoopAnalysisManager &AM, 183bab7e1aSChandler Carruth LoopStandardAnalysisResults &AR, LPMUpdater &) { 193bab7e1aSChandler Carruth Function &F = *L.getHeader()->getParent(); 203bab7e1aSChandler Carruth auto &LAI = AM.getResult<LoopAccessAnalysis>(L, AR); 213bab7e1aSChandler Carruth OS << "Loop access info in function '" << F.getName() << "':\n"; 223bab7e1aSChandler Carruth OS.indent(2) << L.getHeader()->getName() << ":\n"; 233bab7e1aSChandler Carruth LAI.print(OS, 4); 243bab7e1aSChandler Carruth return PreservedAnalyses::all(); 253bab7e1aSChandler Carruth } 26