LLVM  8.0.1
Public Member Functions | Static Public Member Functions | List of all members
llvm::Mangler Class Reference

#include "llvm/IR/Mangler.h"

Public Member Functions

void getNameWithPrefix (raw_ostream &OS, const GlobalValue *GV, bool CannotUsePrivateLabel) const
 Print the appropriate prefix and the specified global variable's name. More...
 
void getNameWithPrefix (SmallVectorImpl< char > &OutName, const GlobalValue *GV, bool CannotUsePrivateLabel) const
 

Static Public Member Functions

static void getNameWithPrefix (raw_ostream &OS, const Twine &GVName, const DataLayout &DL)
 Print the appropriate prefix and the specified name as the global variable name. More...
 
static void getNameWithPrefix (SmallVectorImpl< char > &OutName, const Twine &GVName, const DataLayout &DL)
 

Detailed Description

Definition at line 28 of file Mangler.h.

Member Function Documentation

◆ getNameWithPrefix() [1/4]

void Mangler::getNameWithPrefix ( raw_ostream OS,
const GlobalValue GV,
bool  CannotUsePrivateLabel 
) const

Print the appropriate prefix and the specified global variable's name.

If the global variable doesn't have a name, this fills in a unique name for the global.

Definition at line 112 of file Mangler.cpp.

References addByteCountSuffix(), llvm::CallingConv::C, llvm::Default, llvm::DataLayout::doNotMangleLeadingQuestionMark(), llvm::dyn_cast(), llvm::Function::getCallingConv(), llvm::Module::getDataLayout(), llvm::Function::getFunctionType(), llvm::DataLayout::getGlobalPrefix(), llvm::Value::getName(), getNameWithPrefixImpl(), llvm::FunctionType::getNumParams(), llvm::GlobalValue::getParent(), hasByteCountSuffix(), llvm::DataLayout::hasMicrosoftFastStdCallMangling(), llvm::Value::hasName(), llvm::GlobalValue::hasPrivateLinkage(), llvm::Function::hasStructRetAttr(), llvm::FunctionType::isVarArg(), Name, llvm::cl::Prefix, llvm::StringRef::startswith(), llvm::CallingConv::X86_FastCall, and llvm::CallingConv::X86_VectorCall.

Referenced by collectFunctionUsers(), llvm::LTOCodeGenerator::compile(), EmitCamlGlobal(), llvm::emitLinkerFlagsForGlobalCOFF(), llvm::emitLinkerFlagsForUsedCOFF(), llvm::WasmException::endModule(), llvm::RecordStreamer::flushSymverDirectives(), llvm::AsmPrinter::GetExternalSymbolSymbol(), llvm::ExecutionEngine::getMangledName(), getNameWithPrefix(), llvm::AArch64_MachoTargetObjectFile::getNameWithPrefix(), llvm::TargetLoweringObjectFile::getNameWithPrefix(), llvm::TargetLoweringObjectFileMachO::getNameWithPrefix(), llvm::TargetLoweringObjectFileCOFF::getNameWithPrefix(), llvm::TargetMachine::getNameWithPrefix(), llvm::MCJIT::getSymbolAddress(), GetSymbolFromOperand(), INITIALIZE_PASS(), llvm::FastISel::lowerCallTo(), llvm::orc::LLJIT::mangle(), llvm::OrcCBindingsStack::mangle(), llvm::orc::MangleAndInterner::operator()(), llvm::TargetLoweringObjectFileCOFF::SelectSectionForGlobal(), and llvm::FastISel::CallLoweringInfo::setCallee().

◆ getNameWithPrefix() [2/4]

void Mangler::getNameWithPrefix ( SmallVectorImpl< char > &  OutName,
const GlobalValue GV,
bool  CannotUsePrivateLabel 
) const

Definition at line 178 of file Mangler.cpp.

References getNameWithPrefix().

◆ getNameWithPrefix() [3/4]

void Mangler::getNameWithPrefix ( raw_ostream OS,
const Twine GVName,
const DataLayout DL 
)
static

Print the appropriate prefix and the specified name as the global variable name.

GVName must not be empty.

Definition at line 69 of file Mangler.cpp.

References llvm::Default, and getNameWithPrefixImpl().

◆ getNameWithPrefix() [4/4]

void Mangler::getNameWithPrefix ( SmallVectorImpl< char > &  OutName,
const Twine GVName,
const DataLayout DL 
)
static

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