15#ifndef LLVM_TRANSFORMS_SCALAR_LOOPIDIOMRECOGNIZE_H
16#define LLVM_TRANSFORMS_SCALAR_LOOPIDIOMRECOGNIZE_H
This header defines various interfaces for pass management in LLVM.
This header provides classes for managing per-loop analyses.
A container for analyses that lazily runs them and caches their results.
This class provides an interface for updating the loop pass manager based on mutations to the loop ne...
Performs Loop Idiom Recognize Pass.
PreservedAnalyses run(Loop &L, LoopAnalysisManager &AM, LoopStandardAnalysisResults &AR, LPMUpdater &U)
Represents a single loop in the control flow graph.
A set of analyses that are preserved following a run of a transformation pass.
This is an optimization pass for GlobalISel generic memory operations.
Options to disable Loop Idiom Recognize, which can be shared with other passes.
static bool Memset
When true, Memset is disabled.
static bool All
When true, the entire pass is disabled.
static bool Memcpy
When true, Memcpy is disabled.
The adaptor from a function pass to a loop pass computes these analyses and makes them available to t...
A CRTP mix-in to automatically provide informational APIs needed for passes.