28 for (
auto &
Arg :
F.args()) {
38 if (!
I.hasName() && !
I.getType()->isVoidTy())
51 Info.setPreservesAll();
60 char InstNamer::ID = 0;
64 "Assign names to anonymous instructions",
false,
false)
71 return new InstNamer();
amdgpu Simplify well known AMD library false FunctionCallee Value * Arg
Analysis containing CSE Info
FunctionAnalysisManager FAM
This header defines various interfaces for pass management in LLVM.
#define INITIALIZE_PASS(passName, arg, name, cfg, analysis)
A container for analyses that lazily runs them and caches their results.
Represent the analysis usage information of a pass.
LLVM Basic Block Representation.
FunctionPass class - This class is used to implement most global optimizations.
virtual bool runOnFunction(Function &F)=0
runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.
static PassRegistry * getPassRegistry()
getPassRegistry - Access the global registry object, which is automatically initialized at applicatio...
virtual void getAnalysisUsage(AnalysisUsage &) const
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
A set of analyses that are preserved following a run of a transformation pass.
static PreservedAnalyses all()
Construct a special preserved set that preserves all passes.
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
This is an optimization pass for GlobalISel generic memory operations.
char & InstructionNamerID
void initializeInstNamerPass(PassRegistry &)
FunctionPass * createInstructionNamerPass()
PreservedAnalyses run(Function &, FunctionAnalysisManager &)