LLVM 24.0.0git
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"

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()

◆ recursivelyVisitUsers()

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