LLVM 19.0.0git
Functions
AMDGPUAlwaysInlinePass.cpp File Reference

This pass marks all internal functions as always_inline and creates duplicates of all other functions and marks the duplicates as always_inline. More...

#include "AMDGPU.h"
#include "AMDGPUTargetMachine.h"
#include "Utils/AMDGPUBaseInfo.h"
#include "llvm/CodeGen/CommandFlags.h"
#include "llvm/IR/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"

Go to the source code of this file.

Functions

static INITIALIZE_PASS(AMDGPUAlwaysInline, "amdgpu-always-inline", "AMDGPU Inline All Functions", false, false) char AMDGPUAlwaysInline void recursivelyVisitUsers (GlobalValue &GV, SmallPtrSetImpl< Function * > &FuncsToAlwaysInline)
 
static bool alwaysInlineImpl (Module &M, bool GlobalOpt)
 

Detailed Description

This pass marks all internal functions as always_inline and creates duplicates of all other functions and marks the duplicates as always_inline.

Definition in file AMDGPUAlwaysInlinePass.cpp.

Function Documentation

◆ alwaysInlineImpl()

static bool alwaysInlineImpl ( Module M,
bool  GlobalOpt 
)
static

◆ recursivelyVisitUsers()

static INITIALIZE_PASS(AMDGPUAlwaysInline, "amdgpu-always-inline", "AMDGPU Inline All Functions", false, false) char AMDGPUAlwaysInline void recursivelyVisitUsers ( GlobalValue GV,
SmallPtrSetImpl< Function * > &  FuncsToAlwaysInline 
)
static