LLVM 19.0.0git
Public Member Functions | List of all members
llvm::LowerIFuncPass Class Reference

Pass to replace calls to ifuncs with indirect calls. More...

#include "llvm/Transforms/Utils/LowerIFunc.h"

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

Public Member Functions

 LowerIFuncPass ()=default
 
PreservedAnalyses run (Module &M, ModuleAnalysisManager &AM)
 Replace all call users of ifuncs in the module.
 
- Public Member Functions inherited from llvm::PassInfoMixin< LowerIFuncPass >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::PassInfoMixin< LowerIFuncPass >
static StringRef name ()
 Gets the name of the pass we are mixed into.
 

Detailed Description

Pass to replace calls to ifuncs with indirect calls.

This could be used to support ifunc on systems where the program loader does not natively support it. Constant initializer uses of ifuncs are not handled.

Definition at line 19 of file LowerIFunc.h.

Constructor & Destructor Documentation

◆ LowerIFuncPass()

llvm::LowerIFuncPass::LowerIFuncPass ( )
default

Member Function Documentation

◆ run()

PreservedAnalyses LowerIFuncPass::run ( Module M,
ModuleAnalysisManager AM 
)

Replace all call users of ifuncs in the module.

Definition at line 21 of file LowerIFunc.cpp.

References llvm::PreservedAnalyses::all(), llvm::lowerGlobalIFuncUsersAsGlobalCtor(), and llvm::PreservedAnalyses::none().


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