LLVM 19.0.0git
Classes | Namespaces | Typedefs | Functions
LoopCacheAnalysis.h File Reference

This file defines the interface for the loop cache analysis. More...

#include "llvm/Analysis/LoopAnalysisManager.h"
#include "llvm/IR/PassManager.h"
#include <optional>

Go to the source code of this file.

Classes

class  llvm::IndexedReference
 Represents a memory reference as a base pointer and a set of indexing operations. More...
 
class  llvm::CacheCost
 CacheCost represents the estimated cost of a inner loop as the number of cache lines used by the memory references it contains. More...
 
class  llvm::LoopCachePrinterPass
 Printer pass for the CacheCost results. More...
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Typedefs

using llvm::CacheCostTy = int64_t
 
using llvm::LoopVectorTy = SmallVector< Loop *, 8 >
 
using llvm::ReferenceGroupTy = SmallVector< std::unique_ptr< IndexedReference >, 8 >
 A reference group represents a set of memory references that exhibit temporal or spacial reuse.
 
using llvm::ReferenceGroupsTy = SmallVector< ReferenceGroupTy, 8 >
 

Functions

raw_ostreamllvm::operator<< (raw_ostream &OS, const IndexedReference &R)
 
raw_ostreamllvm::operator<< (raw_ostream &OS, const CacheCost &CC)
 

Detailed Description

This file defines the interface for the loop cache analysis.

Definition in file LoopCacheAnalysis.h.