LLVM 20.0.0git
Functions
Mangler.cpp File Reference
#include "llvm/IR/Mangler.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Demangle/Demangle.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/Triple.h"

Go to the source code of this file.

Functions

static void getNameWithPrefixImpl (raw_ostream &OS, const Twine &GVName, ManglerPrefixTy PrefixTy, const DataLayout &DL, char Prefix)
 
static void getNameWithPrefixImpl (raw_ostream &OS, const Twine &GVName, const DataLayout &DL, ManglerPrefixTy PrefixTy)
 
static bool hasByteCountSuffix (CallingConv::ID CC)
 
static void addByteCountSuffix (raw_ostream &OS, const Function *F, const DataLayout &DL)
 Microsoft fastcall and stdcall functions require a suffix on their name indicating the number of words of arguments they take.
 
static bool canBeUnquotedInDirective (char C)
 
static bool canBeUnquotedInDirective (StringRef Name)
 

Function Documentation

◆ addByteCountSuffix()

static void addByteCountSuffix ( raw_ostream OS,
const Function F,
const DataLayout DL 
)
static

Microsoft fastcall and stdcall functions require a suffix on their name indicating the number of words of arguments they take.

Definition at line 96 of file Mangler.cpp.

References A, llvm::alignTo(), DL, F, and OS.

Referenced by llvm::Mangler::getNameWithPrefix().

◆ canBeUnquotedInDirective() [1/2]

static bool canBeUnquotedInDirective ( char  C)
static

◆ canBeUnquotedInDirective() [2/2]

static bool canBeUnquotedInDirective ( StringRef  Name)
static

Definition at line 200 of file Mangler.cpp.

References llvm::CallingConv::C, canBeUnquotedInDirective(), and Name.

◆ getNameWithPrefixImpl() [1/2]

static void getNameWithPrefixImpl ( raw_ostream OS,
const Twine GVName,
const DataLayout DL,
ManglerPrefixTy  PrefixTy 
)
static

Definition at line 64 of file Mangler.cpp.

References DL, getNameWithPrefixImpl(), and OS.

◆ getNameWithPrefixImpl() [2/2]

static void getNameWithPrefixImpl ( raw_ostream OS,
const Twine GVName,
ManglerPrefixTy  PrefixTy,
const DataLayout DL,
char  Prefix 
)
static

Definition at line 35 of file Mangler.cpp.

References assert(), DL, Name, OS, and llvm::Twine::toStringRef().

Referenced by llvm::Mangler::getNameWithPrefix(), and getNameWithPrefixImpl().

◆ hasByteCountSuffix()

static bool hasByteCountSuffix ( CallingConv::ID  CC)
static