LLVM 20.0.0git
Classes | Public Member Functions | List of all members
llvm::MachineModuleAnalysis Class Reference

An analysis that produces MachineModuleInfo for a module. More...

#include "llvm/CodeGen/MachineModuleInfo.h"

Inheritance diagram for llvm::MachineModuleAnalysis:
Inheritance graph
[legend]

Classes

class  Result
 

Public Member Functions

 MachineModuleAnalysis (MachineModuleInfo &MMI)
 
Result run (Module &M, ModuleAnalysisManager &)
 Run the analysis pass and produce machine module information.
 
- Public Member Functions inherited from llvm::PassInfoMixin< DerivedT >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::AnalysisInfoMixin< MachineModuleAnalysis >
static AnalysisKeyID ()
 Returns an opaque, unique ID for this analysis type.
 
- Static Public Member Functions inherited from llvm::PassInfoMixin< DerivedT >
static StringRef name ()
 Gets the name of the pass we are mixed into.
 

Detailed Description

An analysis that produces MachineModuleInfo for a module.

This does not produce its own MachineModuleInfo because we need a consistent MachineModuleInfo to keep ownership of MachineFunctions regardless of analysis invalidation/clearing. So something outside the analysis infrastructure must own the MachineModuleInfo.

Definition at line 193 of file MachineModuleInfo.h.

Constructor & Destructor Documentation

◆ MachineModuleAnalysis()

llvm::MachineModuleAnalysis::MachineModuleAnalysis ( MachineModuleInfo MMI)
inline

Definition at line 215 of file MachineModuleInfo.h.

Member Function Documentation

◆ run()

MachineModuleAnalysis::Result MachineModuleAnalysis::run ( Module M,
ModuleAnalysisManager  
)

Run the analysis pass and produce machine module information.

Definition at line 220 of file MachineModuleInfo.cpp.

References llvm::LLVMContext::diagnose(), llvm::MachineModuleInfo::getContext(), getLocCookie(), llvm::MCContext::setDiagnosticHandler(), and llvm::SrcMgr.


The documentation for this class was generated from the following files: