From: Rafael Espindola Date: Wed, 22 Dec 2010 21:51:29 +0000 (+0000) Subject: Rename NeedsSetToChangeDiffSize to HasAggressiveSymbolFolding which is a much X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=90a5a0cd7c353651c953020b1e41b4c6e2f21883;p=oota-llvm.git Rename NeedsSetToChangeDiffSize to HasAggressiveSymbolFolding which is a much better name and matches what is used in the MachO writer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122443 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/MC/MCAsmInfo.h b/include/llvm/MC/MCAsmInfo.h index 0e6c4e7c75e..fb80cc4f3a9 100644 --- a/include/llvm/MC/MCAsmInfo.h +++ b/include/llvm/MC/MCAsmInfo.h @@ -197,12 +197,12 @@ namespace llvm { /// HasSetDirective - True if the assembler supports the .set directive. bool HasSetDirective; // Defaults to true. - /// NeedsSetToChangeDiffSize - True if the assembler requires that we do + /// HasAggressiveSymbolFolding - False if the assembler requires that we use /// Lc = a - b /// .long Lc - /// instead of doing + /// instead of /// .long a - b - bool NeedsSetToChangeDiffSize; // Defaults to false. + bool HasAggressiveSymbolFolding; // Defaults to true. /// HasLCOMMDirective - This is true if the target supports the .lcomm /// directive. @@ -407,7 +407,9 @@ namespace llvm { return ExternDirective; } bool hasSetDirective() const { return HasSetDirective; } - bool needsSetToChangeDiffSize() const { return NeedsSetToChangeDiffSize; } + bool hasAggressiveSymbolFolding() const { + return HasAggressiveSymbolFolding; + } bool hasLCOMMDirective() const { return HasLCOMMDirective; } bool hasDotTypeDotSizeDirective() const {return HasDotTypeDotSizeDirective;} bool getCOMMDirectiveAlignmentIsInBytes() const { diff --git a/lib/MC/MCAsmInfo.cpp b/lib/MC/MCAsmInfo.cpp index 1bc63d03fba..cc1afbd0892 100644 --- a/lib/MC/MCAsmInfo.cpp +++ b/lib/MC/MCAsmInfo.cpp @@ -54,7 +54,7 @@ MCAsmInfo::MCAsmInfo() { GPRel32Directive = 0; GlobalDirective = "\t.globl\t"; HasSetDirective = true; - NeedsSetToChangeDiffSize = false; + HasAggressiveSymbolFolding = true; HasLCOMMDirective = false; COMMDirectiveAlignmentIsInBytes = true; HasDotTypeDotSizeDirective = true; diff --git a/lib/MC/MCAsmInfoDarwin.cpp b/lib/MC/MCAsmInfoDarwin.cpp index a382741b5a2..13776f04437 100644 --- a/lib/MC/MCAsmInfoDarwin.cpp +++ b/lib/MC/MCAsmInfoDarwin.cpp @@ -41,7 +41,9 @@ MCAsmInfoDarwin::MCAsmInfoDarwin() { // FIXME: Darwin 10 and newer don't need this. LinkerRequiresNonEmptyDwarfLines = true; - NeedsSetToChangeDiffSize = true; + // FIXME: Change this once MC is the system assembler. + HasAggressiveSymbolFolding = false; + HiddenVisibilityAttr = MCSA_PrivateExtern; // Doesn't support protected visibility. ProtectedVisibilityAttr = MCSA_Global; diff --git a/lib/MC/MCStreamer.cpp b/lib/MC/MCStreamer.cpp index 076b4d608cb..68146de9c05 100644 --- a/lib/MC/MCStreamer.cpp +++ b/lib/MC/MCStreamer.cpp @@ -77,7 +77,7 @@ void MCStreamer::EmitSLEB128IntValue(int64_t Value, unsigned AddrSpace) { void MCStreamer::EmitAbsValue(const MCExpr *Value, unsigned Size, unsigned AddrSpace) { - if (!getContext().getAsmInfo().needsSetToChangeDiffSize()) { + if (getContext().getAsmInfo().hasAggressiveSymbolFolding()) { EmitValue(Value, Size, AddrSpace); return; }