mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-06 23:32:27 +00:00
CodeGen: Avoid multiple strlen calls
Use a StringRef to hold our section prefix. This avoids multiple calls to strlen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211602 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
01c8340c3d
commit
fde22c17f5
@ -207,7 +207,7 @@ const MCSection *TargetLoweringObjectFileELF::getExplicitSectionGlobal(
|
||||
|
||||
/// getSectionPrefixForGlobal - Return the section prefix name used by options
|
||||
/// FunctionsSections and DataSections.
|
||||
static const char *getSectionPrefixForGlobal(SectionKind Kind) {
|
||||
static StringRef getSectionPrefixForGlobal(SectionKind Kind) {
|
||||
if (Kind.isText()) return ".text.";
|
||||
if (Kind.isReadOnly()) return ".rodata.";
|
||||
if (Kind.isBSS()) return ".bss.";
|
||||
@ -240,16 +240,15 @@ SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
|
||||
// into a 'uniqued' section name, create and return the section now.
|
||||
if ((GV->isWeakForLinker() || EmitUniquedSection) &&
|
||||
!Kind.isCommon()) {
|
||||
const char *Prefix;
|
||||
Prefix = getSectionPrefixForGlobal(Kind);
|
||||
StringRef Prefix = getSectionPrefixForGlobal(Kind);
|
||||
|
||||
SmallString<128> Name(Prefix, Prefix+strlen(Prefix));
|
||||
SmallString<128> Name(Prefix);
|
||||
TM.getNameWithPrefix(Name, GV, Mang, true);
|
||||
|
||||
StringRef Group = "";
|
||||
unsigned Flags = getELFSectionFlags(Kind);
|
||||
if (GV->isWeakForLinker()) {
|
||||
Group = Name.substr(strlen(Prefix));
|
||||
Group = Name.substr(Prefix.size());
|
||||
Flags |= ELF::SHF_GROUP;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user