LLVM  6.0.0svn
Public Member Functions | List of all members
llvm::AlwaysInlinerPass Struct Reference

Inlines functions marked as "always_inline". More...

#include "llvm/Transforms/IPO/AlwaysInliner.h"

Inheritance diagram for llvm::AlwaysInlinerPass:
Inheritance graph
[legend]
Collaboration diagram for llvm::AlwaysInlinerPass:
Collaboration graph
[legend]

Public Member Functions

PreservedAnalyses run (Module &M, ModuleAnalysisManager &)
 

Additional Inherited Members

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

Detailed Description

Inlines functions marked as "always_inline".

Note that this does not inline call sites marked as always_inline and does not delete the functions even when all users are inlined. The normal inliner should be used to handle call site inlining, this pass's goal is to be the simplest possible pass to remove always_inline function definitions' uses by inlining them. The GlobalDCE pass can be used to remove these functions once all users are gone.

Definition at line 30 of file AlwaysInliner.h.

Member Function Documentation

◆ run()

PreservedAnalyses AlwaysInlinerPass::run ( Module M,
ModuleAnalysisManager  
)

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