From: Rafael Espindola Date: Thu, 1 May 2014 19:02:03 +0000 (+0000) Subject: Don't propagate StorageClass and ComplexType to aliases. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=dbd5d9d0b85e7b1c202f27aa3f7be6c3d42fed2d;p=oota-llvm.git Don't propagate StorageClass and ComplexType to aliases. This matches gas' behaviour on COFF. I think that this yak is now sufficiently shaved for aliases with offset to work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207786 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/MC/WinCOFFObjectWriter.cpp b/lib/MC/WinCOFFObjectWriter.cpp index 5cc239dce6e..7ae83134f3c 100644 --- a/lib/MC/WinCOFFObjectWriter.cpp +++ b/lib/MC/WinCOFFObjectWriter.cpp @@ -439,8 +439,7 @@ void WinCOFFObjectWriter::DefineSymbol(MCSymbolData const &SymbolData, coff_symbol->MCData = &SymbolData; } else { - const MCSymbolData &ResSymData = - Assembler.getSymbolData(Symbol.AliasedSymbol()); + const MCSymbolData &ResSymData = Assembler.getSymbolData(Symbol); const MCSymbol *Base = Layout.getBaseSymbol(Symbol); coff_symbol->Data.Value = getSymbolValue(ResSymData, Layout); diff --git a/test/MC/COFF/alias.s b/test/MC/COFF/alias.s index f6f6d46bf6a..dc4f65acf74 100644 --- a/test/MC/COFF/alias.s +++ b/test/MC/COFF/alias.s @@ -68,7 +68,7 @@ weak_aliased_to_external = external2 // CHECK-NEXT: Section: .text (1) // CHECK-NEXT: BaseType: Null (0x0) // CHECK-NEXT: ComplexType: Null (0x0) -// CHECK-NEXT: StorageClass: Static (0x3) +// CHECK-NEXT: StorageClass: External (0x2) // CHECK-NEXT: AuxSymbolCount: 0 // CHECK-NEXT: } // CHECK-NEXT: Symbol { diff --git a/test/MC/COFF/symbol-alias.s b/test/MC/COFF/symbol-alias.s index ccada3793ca..71ccec31b82 100644 --- a/test/MC/COFF/symbol-alias.s +++ b/test/MC/COFF/symbol-alias.s @@ -51,7 +51,7 @@ _bar_alias = _bar // CHECK-NEXT: Value: [[FOO_VALUE]] // CHECK-NEXT: Section: [[FOO_SECTION_NUMBER]] // CHECK-NEXT: BaseType: [[FOO_SIMPLE_TYPE]] -// CHECK-NEXT: ComplexType: [[FOO_COMPLEX_TYPE]] +// CHECK-NEXT: ComplexType: Null (0x0) // CHECK-NEXT: StorageClass: [[FOO_STORAGE_CLASS]] // CHECK-NEXT: AuxSymbolCount: [[FOO_NUMBER_OF_AUX_SYMBOLS]]