[NFC] clean up the AsmPrinter::emitLinkage for AIX part

SUMMARY:

Since we deal with aix emitLinkage in the PPCAIXAsmPrinter::emitLinkage() in the patch https://reviews.llvm.org/D75866. It do not go to AsmPrinter::emitLinkage() any more, we clean up some aix related code in the AsmPrinter::emitLinkage()

Reviewers:  Jason liu

Differential Revision: https://reviews.llvm.org/D81613
This commit is contained in:
diggerlin 2020-06-11 13:33:51 -04:00
parent 5a33ba52b6
commit c6be3ea524
4 changed files with 1 additions and 35 deletions

View File

@ -311,10 +311,6 @@ protected:
/// false.
bool HasAltEntry = false;
/// True if this target supports the XCOFF .extern directive. Defaults to
/// false.
bool HasDotExternDirective = false;
/// Used to declare a global as being a weak symbol. Defaults to ".weak".
const char *WeakDirective;
@ -335,10 +331,6 @@ protected:
/// Defaults to false.
bool AvoidWeakIfComdat = false;
/// True if we have a .lglobl directive, which is used to emit the information
/// of a static symbol into the symbol table. Defaults to false.
bool HasDotLGloblDirective = false;
/// This attribute, if not MCSA_Invalid, is used to declare a symbol as having
/// hidden visibility. Defaults to MCSA_Hidden.
MCSymbolAttr HiddenVisibilityAttr = MCSA_Hidden;
@ -594,7 +586,6 @@ public:
bool hasIdentDirective() const { return HasIdentDirective; }
bool hasNoDeadStrip() const { return HasNoDeadStrip; }
bool hasAltEntry() const { return HasAltEntry; }
bool hasDotExternDirective() const { return HasDotExternDirective; }
const char *getWeakDirective() const { return WeakDirective; }
const char *getWeakRefDirective() const { return WeakRefDirective; }
bool hasWeakDefDirective() const { return HasWeakDefDirective; }
@ -605,8 +596,6 @@ public:
bool avoidWeakIfComdat() const { return AvoidWeakIfComdat; }
bool hasDotLGloblDirective() const { return HasDotLGloblDirective; }
MCSymbolAttr getHiddenVisibilityAttr() const { return HiddenVisibilityAttr; }
MCSymbolAttr getHiddenDeclarationVisibilityAttr() const {

View File

@ -395,9 +395,6 @@ void AsmPrinter::emitLinkage(const GlobalValue *GV, MCSymbol *GVSym) const {
GlobalValue::LinkageTypes Linkage = GV->getLinkage();
switch (Linkage) {
case GlobalValue::CommonLinkage:
assert(!TM.getTargetTriple().isOSBinFormatXCOFF() &&
"CommonLinkage of XCOFF should not come to this path.");
LLVM_FALLTHROUGH;
case GlobalValue::LinkOnceAnyLinkage:
case GlobalValue::LinkOnceODRLinkage:
case GlobalValue::WeakAnyLinkage:
@ -421,29 +418,13 @@ void AsmPrinter::emitLinkage(const GlobalValue *GV, MCSymbol *GVSym) const {
}
return;
case GlobalValue::ExternalLinkage:
if (MAI->hasDotExternDirective() && GV->isDeclaration())
OutStreamer->emitSymbolAttribute(GVSym, MCSA_Extern);
else
OutStreamer->emitSymbolAttribute(GVSym, MCSA_Global);
OutStreamer->emitSymbolAttribute(GVSym, MCSA_Global);
return;
case GlobalValue::PrivateLinkage:
return;
case GlobalValue::InternalLinkage:
if (MAI->hasDotLGloblDirective())
OutStreamer->emitSymbolAttribute(GVSym, MCSA_LGlobal);
return;
case GlobalValue::ExternalWeakLinkage:
if (TM.getTargetTriple().isOSBinFormatXCOFF()) {
OutStreamer->emitSymbolAttribute(GVSym, MCSA_Weak);
return;
}
LLVM_FALLTHROUGH;
case GlobalValue::AvailableExternallyLinkage:
if (MAI->hasDotExternDirective()) {
OutStreamer->emitSymbolAttribute(GVSym, MCSA_Extern);
return;
}
LLVM_FALLTHROUGH;
case GlobalValue::AppendingLinkage:
llvm_unreachable("Should never emit this");
}

View File

@ -32,8 +32,6 @@ MCAsmInfoXCOFF::MCAsmInfoXCOFF() {
COMMDirectiveAlignmentIsInBytes = false;
LCOMMDirectiveAlignmentType = LCOMM::Log2Alignment;
HasDotTypeDotSizeDirective = false;
HasDotExternDirective = true;
HasDotLGloblDirective = true;
SymbolsHaveSMC = true;
UseIntegratedAssembler = false;
NeedsFunctionDescriptors = true;

View File

@ -1603,8 +1603,6 @@ void PPCAIXAsmPrinter::emitLinkage(const GlobalValue *GV,
case GlobalValue::PrivateLinkage:
return;
case GlobalValue::InternalLinkage:
assert(MAI->hasDotLGloblDirective() &&
"Expecting .lglobl to be supported for AIX.");
OutStreamer->emitSymbolAttribute(GVSym, MCSA_LGlobal);
return;
case GlobalValue::AppendingLinkage: