[llvm] r240394 - Revert r240302 ("Bring r240130 back.").

Dimitry Andric via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 23 23:43:03 PDT 2015


Hm, the weird thing is that I'm now using exactly r242221, but I still get the null'd symbols, somehow.  Did I miss any commit afterwards, or something that got merged to release_37?  (I will be able to upgrade the project to the real 3.7 branch as soon as possible, but not immediately.)

-Dimitry

> On 24 Aug 2015, at 00:26, Rafael EspĂ­ndola <rafael.espindola at gmail.com> wrote:
> 
> This is in the 3.7 branch. The last trunk commit in the branch is
> r242220 and the revert is r240394.
> 
> On 22 August 2015 at 17:02, Dimitry Andric via llvm-commits
> <llvm-commits at lists.llvm.org> wrote:
>> [re-CC'ing this reply to the new llvm-commits address, sorry for any duplicates]
>> 
>> Hi Hans,
>> 
>> Shouldn't we apply this to the release_37 branch?  Since this also causes problems when building go, similar to:
>> 
>> # cmd/pprof
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#16: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#17: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#18: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#20: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#21: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#22: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#24: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#25: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#26: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#27: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#28: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#29: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#30: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#31: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#32: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#33: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#34: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#35: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#36: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#37: ignoring  in section 15 (type 0)
>> /wrkdirs/usr/ports/lang/go/work/go/pkg/freebsd_386/net.a(_all.o): sym#38: ignoring  in section 15 (type 0)
>> too many errors
>> 
>> With earlier versions of clang, most of those temporary symbols ended up like this:
>> 
>> 0000000c  00001001 R_386_32               00000000   .Linfo_string0
>> 
>> and go had a specific workaround for it: https://github.com/golang/go/issues/8876
>> 
>> I can obviously hack up go's ldelf.c with something similar to https://codereview.appspot.com/155030043, but maybe Rafael's original commit should be improved upon first?  (Rafael, please correct me if you have already did that.:)
>> 
>> -Dimitry
>> 
>>> On 23 Jun 2015, at 13:31, Daniel Jasper <djasper at google.com> wrote:
>>> 
>>> Author: djasper
>>> Date: Tue Jun 23 06:31:32 2015
>>> New Revision: 240394
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=240394&view=rev
>>> Log:
>>> Revert r240302 ("Bring r240130 back.").
>>> 
>>> This causes errors like:
>>> 
>>> ld: error: blah.o: requires dynamic R_X86_64_PC32 reloc against '' which
>>> may overflow at runtime; recompile with -fPIC
>>> blah.cc:function f(): error: undefined reference to ''
>>> blah.o:g(): error: undefined reference to ''
>>> 
>>> I have not yet come up with an appropriate reproduction.
>>> 
>>> Added:
>>>  llvm/trunk/test/MC/ELF/undef2.s
>>> Removed:
>>>  llvm/trunk/test/MC/ELF/undef-temp.s
>>> Modified:
>>>  llvm/trunk/include/llvm/MC/MCContext.h
>>>  llvm/trunk/lib/MC/ELFObjectWriter.cpp
>>>  llvm/trunk/lib/MC/MCContext.cpp
>>>  llvm/trunk/lib/MC/MachObjectWriter.cpp
>>>  llvm/trunk/test/CodeGen/SPARC/obj-relocs.ll
>>>  llvm/trunk/test/MC/ARM/elf-reloc-02.s
>>>  llvm/trunk/test/MC/ELF/basic-elf-32.s
>>>  llvm/trunk/test/MC/ELF/compression.s
>>>  llvm/trunk/test/MC/ELF/discriminator.s
>>>  llvm/trunk/test/MC/ELF/merge.s
>>>  llvm/trunk/test/MC/ELF/relocation-386.s
>>>  llvm/trunk/test/MC/ELF/undef.s
>>>  llvm/trunk/test/MC/MachO/AArch64/classrefs.s
>>>  llvm/trunk/test/MC/MachO/AArch64/darwin-ARM64-reloc.s
>>>  llvm/trunk/test/MC/MachO/AArch64/ld64-workaround.s
>>>  llvm/trunk/test/MC/MachO/AArch64/mergeable.s
>>>  llvm/trunk/test/MC/MachO/AArch64/reloc-crash.s
>>>  llvm/trunk/test/MC/MachO/x86_64-mergeable.s
>>>  llvm/trunk/test/MC/MachO/x86_64-symbols.s
>>>  llvm/trunk/test/MC/Mips/cpsetup.s
>>>  llvm/trunk/test/MC/Mips/elf-relsym.s
>>>  llvm/trunk/test/MC/Mips/xgot.s
>>>  llvm/trunk/test/MC/Sparc/sparc-pic.s
>>> 
>>> Modified: llvm/trunk/include/llvm/MC/MCContext.h
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCContext.h?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/include/llvm/MC/MCContext.h (original)
>>> +++ llvm/trunk/include/llvm/MC/MCContext.h Tue Jun 23 06:31:32 2015
>>> @@ -208,7 +208,8 @@ namespace llvm {
>>> 
>>>   MCSymbol *createSymbolImpl(const StringMapEntry<bool> *Name,
>>>                              bool CanBeUnnamed);
>>> -    MCSymbol *createSymbol(StringRef Name, bool AlwaysAddSuffix);
>>> +    MCSymbol *createSymbol(StringRef Name, bool AlwaysAddSuffix,
>>> +                           bool IsTemporary);
>>> 
>>>   MCSymbol *getOrCreateDirectionalLocalSymbol(unsigned LocalLabelVal,
>>>                                               unsigned Instance);
>>> @@ -248,9 +249,10 @@ namespace llvm {
>>> 
>>>   /// Create and return a new assembler temporary symbol with a unique but
>>>   /// unspecified name.
>>> -    MCSymbol *createTempSymbol();
>>> +    MCSymbol *createTempSymbol(bool CanBeUnnamed = true);
>>> 
>>> -    MCSymbol *createTempSymbol(const Twine &Name, bool AlwaysAddSuffix);
>>> +    MCSymbol *createTempSymbol(const Twine &Name, bool AlwaysAddSuffix,
>>> +                               bool CanBeUnnamed = true);
>>> 
>>>   /// Create the definition of a directional local symbol for numbered label
>>>   /// (used for "1:" definitions).
>>> 
>>> Modified: llvm/trunk/lib/MC/ELFObjectWriter.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/ELFObjectWriter.cpp?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/lib/MC/ELFObjectWriter.cpp (original)
>>> +++ llvm/trunk/lib/MC/ELFObjectWriter.cpp Tue Jun 23 06:31:32 2015
>>> @@ -787,15 +787,10 @@ void ELFObjectWriter::computeSymbolTable
>>>                   Renames.count(&Symbol)))
>>>     continue;
>>> 
>>> -    if (Symbol.isTemporary() && Symbol.isUndefined())
>>> -      Ctx.reportFatalError(SMLoc(), "Undefined temporary");
>>> -
>>>   ELFSymbolData MSD;
>>>   MSD.Symbol = cast<MCSymbolELF>(&Symbol);
>>> 
>>>   bool Local = Symbol.getBinding() == ELF::STB_LOCAL;
>>> -    assert(Local || !Symbol.isTemporary());
>>> -
>>>   if (Symbol.isAbsolute()) {
>>>     MSD.SectionIndex = ELF::SHN_ABS;
>>>   } else if (Symbol.isCommon()) {
>>> @@ -894,11 +889,9 @@ void ELFObjectWriter::computeSymbolTable
>>> unsigned Index = FileNames.size() + 1;
>>> 
>>> for (ELFSymbolData &MSD : LocalSymbolData) {
>>> -    unsigned StringIndex;
>>> -    if (MSD.Symbol->getType() == ELF::STT_SECTION || MSD.Name.empty())
>>> -      StringIndex = 0;
>>> -    else
>>> -      StringIndex = StrTabBuilder.getOffset(MSD.Name);
>>> +    unsigned StringIndex = MSD.Symbol->getType() == ELF::STT_SECTION
>>> +                               ? 0
>>> +                               : StrTabBuilder.getOffset(MSD.Name);
>>>   MSD.Symbol->setIndex(Index++);
>>>   writeSymbol(Writer, StringIndex, MSD, Layout);
>>> }
>>> 
>>> Modified: llvm/trunk/lib/MC/MCContext.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCContext.cpp?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/lib/MC/MCContext.cpp (original)
>>> +++ llvm/trunk/lib/MC/MCContext.cpp Tue Jun 23 06:31:32 2015
>>> @@ -116,7 +116,7 @@ MCSymbol *MCContext::getOrCreateSymbol(c
>>> 
>>> MCSymbol *&Sym = Symbols[NameRef];
>>> if (!Sym)
>>> -    Sym = createSymbol(NameRef, false);
>>> +    Sym = createSymbol(NameRef, false, false);
>>> 
>>> return Sym;
>>> }
>>> @@ -175,16 +175,17 @@ MCSymbol *MCContext::createSymbolImpl(co
>>>                                   IsTemporary);
>>> }
>>> 
>>> -MCSymbol *MCContext::createSymbol(StringRef Name, bool AlwaysAddSuffix) {
>>> +MCSymbol *MCContext::createSymbol(StringRef Name, bool AlwaysAddSuffix,
>>> +                                  bool CanBeUnnamed) {
>>> +  if (CanBeUnnamed && !UseNamesOnTempLabels)
>>> +    return createSymbolImpl(nullptr, true);
>>> +
>>> // Determine whether this is an user writter assembler temporary or normal
>>> // label, if used.
>>> -  bool IsTemporary = false;
>>> -  if (AllowTemporaryLabels)
>>> +  bool IsTemporary = CanBeUnnamed;
>>> +  if (AllowTemporaryLabels && !IsTemporary)
>>>   IsTemporary = Name.startswith(MAI->getPrivateGlobalPrefix());
>>> 
>>> -  if (IsTemporary && !UseNamesOnTempLabels)
>>> -    return createSymbolImpl(nullptr, true);
>>> -
>>> SmallString<128> NewName = Name;
>>> bool AddSuffix = AlwaysAddSuffix;
>>> unsigned &NextUniqueID = NextID[Name];
>>> @@ -205,20 +206,21 @@ MCSymbol *MCContext::createSymbol(String
>>> llvm_unreachable("Infinite loop");
>>> }
>>> 
>>> -MCSymbol *MCContext::createTempSymbol(const Twine &Name, bool AlwaysAddSuffix) {
>>> +MCSymbol *MCContext::createTempSymbol(const Twine &Name, bool AlwaysAddSuffix,
>>> +                                      bool CanBeUnnamed) {
>>> SmallString<128> NameSV;
>>> raw_svector_ostream(NameSV) << MAI->getPrivateGlobalPrefix() << Name;
>>> -  return createSymbol(NameSV, AlwaysAddSuffix);
>>> +  return createSymbol(NameSV, AlwaysAddSuffix, CanBeUnnamed);
>>> }
>>> 
>>> MCSymbol *MCContext::createLinkerPrivateTempSymbol() {
>>> SmallString<128> NameSV;
>>> raw_svector_ostream(NameSV) << MAI->getLinkerPrivateGlobalPrefix() << "tmp";
>>> -  return createSymbol(NameSV, true);
>>> +  return createSymbol(NameSV, true, false);
>>> }
>>> 
>>> -MCSymbol *MCContext::createTempSymbol() {
>>> -  return createTempSymbol("tmp", true);
>>> +MCSymbol *MCContext::createTempSymbol(bool CanBeUnnamed) {
>>> +  return createTempSymbol("tmp", true, CanBeUnnamed);
>>> }
>>> 
>>> unsigned MCContext::NextInstance(unsigned LocalLabelVal) {
>>> @@ -239,7 +241,7 @@ MCSymbol *MCContext::getOrCreateDirectio
>>>                                                      unsigned Instance) {
>>> MCSymbol *&Sym = LocalSymbols[std::make_pair(LocalLabelVal, Instance)];
>>> if (!Sym)
>>> -    Sym = createTempSymbol();
>>> +    Sym = createTempSymbol(false);
>>> return Sym;
>>> }
>>> 
>>> 
>>> Modified: llvm/trunk/lib/MC/MachObjectWriter.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MachObjectWriter.cpp?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/lib/MC/MachObjectWriter.cpp (original)
>>> +++ llvm/trunk/lib/MC/MachObjectWriter.cpp Tue Jun 23 06:31:32 2015
>>> @@ -565,8 +565,7 @@ void MachObjectWriter::computeSymbolTabl
>>> 
>>>   MachSymbolData MSD;
>>>   MSD.Symbol = &Symbol;
>>> -    StringRef Name = Symbol.getName();
>>> -    MSD.StringIndex = Name.empty() ? 0 : StringTable.getOffset(Name);
>>> +    MSD.StringIndex = StringTable.getOffset(Symbol.getName());
>>> 
>>>   if (Symbol.isAbsolute()) {
>>>     MSD.SectionIndex = 0;
>>> 
>>> Modified: llvm/trunk/test/CodeGen/SPARC/obj-relocs.ll
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/SPARC/obj-relocs.ll?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/CodeGen/SPARC/obj-relocs.ll (original)
>>> +++ llvm/trunk/test/CodeGen/SPARC/obj-relocs.ll Tue Jun 23 06:31:32 2015
>>> @@ -16,8 +16,8 @@
>>> ; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_PC10 _GLOBAL_OFFSET_TABLE_ 0x8
>>> ; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT22 AGlobalVar 0x0
>>> ; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT10 AGlobalVar 0x0
>>> -; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT22 - 0x0
>>> -; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT10 - 0x0
>>> +; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT22 .L.mystr 0x0
>>> +; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_GOT10 .L.mystr 0x0
>>> ; CHECK-PIC-NEXT:    0x{{[0-9,A-F]+}} R_SPARC_WPLT30 bar 0x0
>>> ; CHECK-PIC:      ]
>>> 
>>> 
>>> Modified: llvm/trunk/test/MC/ARM/elf-reloc-02.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/elf-reloc-02.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ARM/elf-reloc-02.s (original)
>>> +++ llvm/trunk/test/MC/ARM/elf-reloc-02.s Tue Jun 23 06:31:32 2015
>>> @@ -22,6 +22,6 @@
>>> 
>>> // OBJ:      Relocations [
>>> // OBJ:        Section {{.*}} .rel.text {
>>> -// OBJ-NEXT:     0x{{[0-9,A-F]+}} R_ARM_MOVW_ABS_NC -
>>> +// OBJ-NEXT:     0x{{[0-9,A-F]+}} R_ARM_MOVW_ABS_NC .L.str
>>> // OBJ:        }
>>> // OBJ:      ]
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/basic-elf-32.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/basic-elf-32.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/basic-elf-32.s (original)
>>> +++ llvm/trunk/test/MC/ELF/basic-elf-32.s Tue Jun 23 06:31:32 2015
>>> @@ -46,9 +46,9 @@ main:
>>> 
>>> // CHECK: Relocations [
>>> // CHECK:   Section {{.*}} .rel.text {
>>> -// CHECK:     0x6  R_386_32   -
>>> +// CHECK:     0x6  R_386_32   .L.str1
>>> // CHECK:     0xB  R_386_PC32 puts
>>> -// CHECK:     0x12 R_386_32   -
>>> +// CHECK:     0x12 R_386_32   .L.str2
>>> // CHECK:     0x17 R_386_PC32 puts
>>> // CHECK:   }
>>> // CHECK: ]
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/compression.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/compression.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/compression.s (original)
>>> +++ llvm/trunk/test/MC/ELF/compression.s Tue Jun 23 06:31:32 2015
>>> @@ -28,24 +28,9 @@
>>> 
>>> // In x86 32 bit named symbols are used for temporary symbols in merge
>>> // sections, so make sure we handle symbols inside compressed sections
>>> -// 386-SYMBOLS:        Symbol {
>>> -// 386-SYMBOLS-NEXT:    Name:  (0)
>>> -// 386-SYMBOLS-NEXT:    Value: 0x0
>>> -// 386-SYMBOLS-NEXT:    Size: 0
>>> -// 386-SYMBOLS-NEXT:    Binding: Local (0x0)
>>> -// 386-SYMBOLS-NEXT:    Type: None (0x0)
>>> -// 386-SYMBOLS-NEXT:    Other: 0
>>> -// 386-SYMBOLS-NEXT:    Section: Undefined (0x0)
>>> -// 386-SYMBOLS-NEXT:  }
>>> -// 386-SYMBOLS-NEXT:  Symbol {
>>> -// 386-SYMBOLS-NEXT:    Name:  (0)
>>> -// 386-SYMBOLS-NEXT:    Value: 0x0
>>> -// 386-SYMBOLS-NEXT:    Size: 0
>>> -// 386-SYMBOLS-NEXT:    Binding: Local (0x0)
>>> -// 386-SYMBOLS-NEXT:    Type: None (0x0)
>>> -// 386-SYMBOLS-NEXT:    Other: 0
>>> -// 386-SYMBOLS-NEXT:    Section: .zdebug_str (0xA)
>>> -// 386-SYMBOLS-NEXT:  }
>>> +// 386-SYMBOLS: Name: .Linfo_string0
>>> +// 386-SYMBOLS-NOT: }
>>> +// 386-SYMBOLS: Section: .zdebug_str
>>> 
>>>      .section        .debug_line,"", at progbits
>>> 
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/discriminator.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/discriminator.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/discriminator.s (original)
>>> +++ llvm/trunk/test/MC/ELF/discriminator.s Tue Jun 23 06:31:32 2015
>>> @@ -19,12 +19,12 @@ foo:
>>>       .long   .L.debug_abbrev_begin   # Offset Into Abbrev. Section
>>>       .byte   8                       # Address Size (in bytes)
>>>       .byte   1                       # Abbrev [1] 0xb:0x1b DW_TAG_compile_unit
>>> -        .long   info_string0            # DW_AT_producer
>>> +        .long   .Linfo_string0          # DW_AT_producer
>>>       .short  12                      # DW_AT_language
>>> -        .long   info_string1            # DW_AT_name
>>> +        .long   .Linfo_string1          # DW_AT_name
>>>       .quad   0                       # DW_AT_low_pc
>>>       .long   0                       # DW_AT_stmt_list
>>> -        .long   info_string2            # DW_AT_comp_dir
>>> +        .long   .Linfo_string2          # DW_AT_comp_dir
>>>                                       # DW_AT_APPLE_optimized
>>>       .section        .debug_abbrev,"", at progbits
>>> .L.debug_abbrev_begin:
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/merge.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/merge.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/merge.s (original)
>>> +++ llvm/trunk/test/MC/ELF/merge.s Tue Jun 23 06:31:32 2015
>>> @@ -22,9 +22,9 @@ foo:
>>> 
>>> // CHECK:      Relocations [
>>> // CHECK-NEXT:   Section {{.*}} .rela.text {
>>> -// CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_PC32     -    0x{{[^ ]+}}
>>> +// CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_PC32    .Lfoo 0x{{[^ ]+}}
>>> // CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_32      .sec1 0x{{[^ ]+}}
>>> -// CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_32       -    0x{{[^ ]+}}
>>> +// CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_32      .Lfoo 0x{{[^ ]+}}
>>> // CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_PLT32    foo  0x{{[^ ]+}}
>>> // CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_GOTPCREL foo  0x{{[^ ]+}}
>>> // CHECK-NEXT:     0x{{[^ ]+}} R_X86_64_32S      zed  0x{{[^ ]+}}
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/relocation-386.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/relocation-386.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/relocation-386.s (original)
>>> +++ llvm/trunk/test/MC/ELF/relocation-386.s Tue Jun 23 06:31:32 2015
>>> @@ -5,7 +5,7 @@
>>> 
>>> // CHECK:      Relocations [
>>> // CHECK-NEXT:   Section {{.*}} .rel.text {
>>> -// CHECK-NEXT:     0x2          R_386_GOTOFF     - 0x0
>>> +// CHECK-NEXT:     0x2          R_386_GOTOFF     .Lfoo 0x0
>>> // CHECK-NEXT:     0x{{[^ ]+}}  R_386_PLT32      bar2 0x0
>>> // CHECK-NEXT:     0x{{[^ ]+}}  R_386_GOTPC      _GLOBAL_OFFSET_TABLE_ 0x0
>>> // Relocation 3 (bar3 at GOTOFF) is done with symbol 7 (bss)
>>> 
>>> Removed: llvm/trunk/test/MC/ELF/undef-temp.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/undef-temp.s?rev=240393&view=auto
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/undef-temp.s (original)
>>> +++ llvm/trunk/test/MC/ELF/undef-temp.s (removed)
>>> @@ -1,4 +0,0 @@
>>> -// RUN: not llvm-mc -filetype=obj -triple x86_64-pc-linux %s -o - 2>&1 | FileCheck %s
>>> -
>>> -// CHECK: Undefined temporary
>>> -        .long .Lfoo
>>> 
>>> Modified: llvm/trunk/test/MC/ELF/undef.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/undef.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/undef.s (original)
>>> +++ llvm/trunk/test/MC/ELF/undef.s Tue Jun 23 06:31:32 2015
>>> @@ -2,6 +2,7 @@
>>> 
>>> // Test which symbols should be in the symbol table
>>> 
>>> +        .long        .Lsym1
>>> .Lsym2:
>>> .Lsym3:
>>> .Lsym4 = .Lsym2 - .Lsym3
>>> @@ -32,7 +33,7 @@ test2_b = undef + 1
>>> // CHECK-NEXT:     Section: Undefined
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: .Lsym8
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:     Size: 0
>>> // CHECK-NEXT:     Binding: Local
>>> @@ -41,6 +42,15 @@ test2_b = undef + 1
>>> // CHECK-NEXT:     Section: .rodata.str1.1
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> +// CHECK-NEXT:     Name: .Lsym1
>>> +// CHECK-NEXT:     Value: 0x0
>>> +// CHECK-NEXT:     Size: 0
>>> +// CHECK-NEXT:     Binding: Global
>>> +// CHECK-NEXT:     Type: None
>>> +// CHECK-NEXT:     Other: 0
>>> +// CHECK-NEXT:     Section: Undefined
>>> +// CHECK-NEXT:   }
>>> +// CHECK-NEXT:   Symbol {
>>> // CHECK-NEXT:     Name: sym6
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:     Size: 0
>>> 
>>> Added: llvm/trunk/test/MC/ELF/undef2.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/undef2.s?rev=240394&view=auto
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/ELF/undef2.s (added)
>>> +++ llvm/trunk/test/MC/ELF/undef2.s Tue Jun 23 06:31:32 2015
>>> @@ -0,0 +1,18 @@
>>> +// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -s -t | FileCheck %s
>>> +
>>> +// Test that this produces an undefined reference to .Lfoo
>>> +
>>> +        je   .Lfoo
>>> +
>>> +// CHECK:       Section {
>>> +// CHECK:         Name: .strtab
>>> +
>>> +// CHECK:       Symbol {
>>> +// CHECK:         Name: .Lfoo
>>> +// CHECK-NEXT:    Value:
>>> +// CHECK-NEXT:    Size:
>>> +// CHECK-NEXT:    Binding: Global
>>> +// CHECK-NEXT:    Type:
>>> +// CHECK-NEXT:    Other:
>>> +// CHECK-NEXT:    Section:
>>> +// CHECK-NEXT:  }
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/AArch64/classrefs.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/AArch64/classrefs.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/AArch64/classrefs.s (original)
>>> +++ llvm/trunk/test/MC/MachO/AArch64/classrefs.s Tue Jun 23 06:31:32 2015
>>> @@ -10,7 +10,7 @@
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: Lbar
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT: ]
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/AArch64/darwin-ARM64-reloc.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/AArch64/darwin-ARM64-reloc.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/AArch64/darwin-ARM64-reloc.s (original)
>>> +++ llvm/trunk/test/MC/MachO/AArch64/darwin-ARM64-reloc.s Tue Jun 23 06:31:32 2015
>>> @@ -41,7 +41,7 @@ L_.str:
>>> ; CHECK-NEXT:       PCRel: 1
>>> ; CHECK-NEXT:       Length: 2
>>> ; CHECK-NEXT:       Type: ARM64_RELOC_PAGE21 (3)
>>> -; CHECK-NEXT:       Symbol: -
>>> +; CHECK-NEXT:       Symbol: L_.str
>>> ; CHECK-NEXT:     }
>>> ; CHECK-NEXT:    Relocation {
>>> ; CHECK-NEXT:       Offset: 0x20
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/AArch64/ld64-workaround.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/AArch64/ld64-workaround.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/AArch64/ld64-workaround.s (original)
>>> +++ llvm/trunk/test/MC/MachO/AArch64/ld64-workaround.s Tue Jun 23 06:31:32 2015
>>> @@ -11,28 +11,28 @@
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: Llit16
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x10
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: Llit8
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x8
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: Llit4
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x0
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: Lcfstring
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT: ]
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/AArch64/mergeable.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/AArch64/mergeable.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/AArch64/mergeable.s (original)
>>> +++ llvm/trunk/test/MC/MachO/AArch64/mergeable.s Tue Jun 23 06:31:32 2015
>>> @@ -26,28 +26,28 @@ L1:
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L1
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x10
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L1
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x8
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L0
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x0
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L0
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT: ]
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/AArch64/reloc-crash.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/AArch64/reloc-crash.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/AArch64/reloc-crash.s (original)
>>> +++ llvm/trunk/test/MC/MachO/AArch64/reloc-crash.s Tue Jun 23 06:31:32 2015
>>> @@ -10,7 +10,7 @@
>>> ; CHECK-NEXT:       PCRel: 0
>>> ; CHECK-NEXT:       Length: 3
>>> ; CHECK-NEXT:       Type: ARM64_RELOC_UNSIGNED (0)
>>> -; CHECK-NEXT:       Symbol: -
>>> +; CHECK-NEXT:       Symbol: Lbar
>>> ; CHECK-NEXT:     }
>>> ; CHECK-NEXT:   }
>>> ; CHECK-NEXT: ]
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/x86_64-mergeable.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/x86_64-mergeable.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/x86_64-mergeable.s (original)
>>> +++ llvm/trunk/test/MC/MachO/x86_64-mergeable.s Tue Jun 23 06:31:32 2015
>>> @@ -24,7 +24,7 @@ L1:
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: X86_64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L1
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x10
>>> @@ -38,7 +38,7 @@ L1:
>>> // CHECK-NEXT:       PCRel: 0
>>> // CHECK-NEXT:       Length: 3
>>> // CHECK-NEXT:       Type: X86_64_RELOC_UNSIGNED (0)
>>> -// CHECK-NEXT:       Symbol: -
>>> +// CHECK-NEXT:       Symbol: L0
>>> // CHECK-NEXT:     }
>>> // CHECK-NEXT:     Relocation {
>>> // CHECK-NEXT:       Offset: 0x0
>>> 
>>> Modified: llvm/trunk/test/MC/MachO/x86_64-symbols.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/MachO/x86_64-symbols.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/MachO/x86_64-symbols.s (original)
>>> +++ llvm/trunk/test/MC/MachO/x86_64-symbols.s Tue Jun 23 06:31:32 2015
>>> @@ -130,7 +130,7 @@ D38:
>>> 
>>> // CHECK: Symbols [
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D0 ({{.*}})
>>> +// CHECK-NEXT:     Name: D0 (139)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __text (0x1)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -139,7 +139,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D1 ({{.*}})
>>> +// CHECK-NEXT:     Name: D1 (128)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __text (0x1)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -148,7 +148,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D2 ({{.*}})
>>> +// CHECK-NEXT:     Name: D2 (113)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __const (0x2)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -157,7 +157,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D3 ({{.*}})
>>> +// CHECK-NEXT:     Name: D3 (98)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __static_const (0x3)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -166,7 +166,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: L4 (84)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -175,7 +175,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D4 ({{.*}})
>>> +// CHECK-NEXT:     Name: D4 (87)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -184,7 +184,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D5 ({{.*}})
>>> +// CHECK-NEXT:     Name: D5 (69)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __literal4 (0x5)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -193,7 +193,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D6 ({{.*}})
>>> +// CHECK-NEXT:     Name: D6 (50)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __literal8 (0x6)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -202,7 +202,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D7 ({{.*}})
>>> +// CHECK-NEXT:     Name: D7 (31)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __literal16 (0x7)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -211,7 +211,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D8 ({{.*}})
>>> +// CHECK-NEXT:     Name: D8 (12)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __constructor (0x8)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -220,7 +220,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D9 ({{.*}})
>>> +// CHECK-NEXT:     Name: D9 (1)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __destructor (0x9)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -229,7 +229,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D12 ({{.*}})
>>> +// CHECK-NEXT:     Name: D12 (124)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __data (0xA)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -238,7 +238,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D13 ({{.*}})
>>> +// CHECK-NEXT:     Name: D13 (109)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __static_data (0xB)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -247,7 +247,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D16 ({{.*}})
>>> +// CHECK-NEXT:     Name: D16 (65)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __dyld (0xC)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -256,7 +256,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D17 ({{.*}})
>>> +// CHECK-NEXT:     Name: D17 (46)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __mod_init_func (0xD)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -265,7 +265,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D18 ({{.*}})
>>> +// CHECK-NEXT:     Name: D18 (27)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __mod_term_func (0xE)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -283,7 +283,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D20 ({{.*}})
>>> +// CHECK-NEXT:     Name: D20 (146)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __class (0x10)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -292,7 +292,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D21 ({{.*}})
>>> +// CHECK-NEXT:     Name: D21 (135)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __meta_class (0x11)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -301,7 +301,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D22 ({{.*}})
>>> +// CHECK-NEXT:     Name: D22 (120)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cat_cls_meth (0x12)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -310,7 +310,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D23 ({{.*}})
>>> +// CHECK-NEXT:     Name: D23 (105)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cat_inst_meth (0x13)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -319,7 +319,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D24 ({{.*}})
>>> +// CHECK-NEXT:     Name: D24 (94)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __protocol (0x14)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -328,7 +328,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D25 ({{.*}})
>>> +// CHECK-NEXT:     Name: D25 (80)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __string_object (0x15)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -337,7 +337,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D26 ({{.*}})
>>> +// CHECK-NEXT:     Name: D26 (61)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cls_meth (0x16)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -346,7 +346,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D27 ({{.*}})
>>> +// CHECK-NEXT:     Name: D27 (42)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __inst_meth (0x17)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -355,7 +355,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D28 ({{.*}})
>>> +// CHECK-NEXT:     Name: D28 (23)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cls_refs (0x18)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -364,7 +364,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D29 ({{.*}})
>>> +// CHECK-NEXT:     Name: D29 (4)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __message_refs (0x19)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -373,7 +373,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D30 ({{.*}})
>>> +// CHECK-NEXT:     Name: D30 (142)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __symbols (0x1A)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -382,7 +382,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D31 ({{.*}})
>>> +// CHECK-NEXT:     Name: D31 (131)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __category (0x1B)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -391,7 +391,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D32 ({{.*}})
>>> +// CHECK-NEXT:     Name: D32 (116)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __class_vars (0x1C)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -400,7 +400,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D33 ({{.*}})
>>> +// CHECK-NEXT:     Name: D33 (101)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __instance_vars (0x1D)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -409,7 +409,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D34 ({{.*}})
>>> +// CHECK-NEXT:     Name: D34 (90)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __module_info (0x1E)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -418,7 +418,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: L35 (72)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -427,7 +427,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D35 ({{.*}})
>>> +// CHECK-NEXT:     Name: D35 (76)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -436,7 +436,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: L36 (53)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -445,7 +445,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D36 ({{.*}})
>>> +// CHECK-NEXT:     Name: D36 (57)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -454,7 +454,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: L37 (34)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -463,7 +463,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D37 ({{.*}})
>>> +// CHECK-NEXT:     Name: D37 (38)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __cstring (0x4)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -472,7 +472,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: (0)
>>> +// CHECK-NEXT:     Name: L38 (15)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __selector_strs (0x1F)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> @@ -481,7 +481,7 @@ D38:
>>> // CHECK-NEXT:     Value: 0x0
>>> // CHECK-NEXT:   }
>>> // CHECK-NEXT:   Symbol {
>>> -// CHECK-NEXT:     Name: D38 ({{.*}})
>>> +// CHECK-NEXT:     Name: D38 (19)
>>> // CHECK-NEXT:     Type: Section (0xE)
>>> // CHECK-NEXT:     Section: __selector_strs (0x1F)
>>> // CHECK-NEXT:     RefType: UndefinedNonLazy (0x0)
>>> 
>>> Modified: llvm/trunk/test/MC/Mips/cpsetup.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Mips/cpsetup.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/Mips/cpsetup.s (original)
>>> +++ llvm/trunk/test/MC/Mips/cpsetup.s Tue Jun 23 06:31:32 2015
>>> @@ -79,9 +79,9 @@ t2:
>>> 
>>> # NXX: move     $2, $gp
>>> # NXX: lui      $gp, 0
>>> -# NXX: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16
>>> +# NXX: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16  $tmp0
>>> # NXX: addiu    $gp, $gp, 0
>>> -# NXX: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16
>>> +# NXX: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16  $tmp0
>>> # N32: addu     $gp, $gp, $25
>>> # N64: daddu    $gp, $gp, $25
>>> # NXX: nop
>>> @@ -108,4 +108,4 @@ t3:
>>> 
>>> # For .cpsetup with local labels, we need to check if $tmp0 is in the symbol
>>> # table:
>>> -# NXX: .text  00000000 {{$}}
>>> +# NXX: .text  00000000 $tmp0
>>> 
>>> Modified: llvm/trunk/test/MC/Mips/elf-relsym.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Mips/elf-relsym.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/Mips/elf-relsym.s (original)
>>> +++ llvm/trunk/test/MC/Mips/elf-relsym.s Tue Jun 23 06:31:32 2015
>>> @@ -4,16 +4,16 @@
>>> 
>>> // CHECK: Symbols [
>>> // CHECK:   Symbol {
>>> -// CHECK:     Name: (0)
>>> +// CHECK:     Name: $.str
>>> // CHECK:   }
>>> // CHECK:   Symbol {
>>> -// CHECK:     Name: (0)
>>> +// CHECK:     Name: $.str1
>>> // CHECK:   }
>>> // CHECK:   Symbol {
>>> -// CHECK:     Name: (0)
>>> +// CHECK:     Name: $CPI0_0
>>> // CHECK:   }
>>> // CHECK:   Symbol {
>>> -// CHECK:     Name: (0)
>>> +// CHECK:     Name: $CPI0_1
>>> // CHECK:   }
>>> // CHECK: ]
>>> 
>>> 
>>> Modified: llvm/trunk/test/MC/Mips/xgot.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Mips/xgot.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/Mips/xgot.s (original)
>>> +++ llvm/trunk/test/MC/Mips/xgot.s Tue Jun 23 06:31:32 2015
>>> @@ -10,8 +10,8 @@
>>> // CHECK:   0x1C R_MIPS_GOT_LO16 ext_1
>>> // CHECK:   0x24 R_MIPS_CALL_HI16 printf
>>> // CHECK:   0x30 R_MIPS_CALL_LO16 printf
>>> -// CHECK:   0x2C R_MIPS_GOT16 -
>>> -// CHECK:   0x38 R_MIPS_LO16 -
>>> +// CHECK:   0x2C R_MIPS_GOT16 $.str
>>> +// CHECK:   0x38 R_MIPS_LO16 $.str
>>> // CHECK: ]
>>> 
>>>      .text
>>> 
>>> Modified: llvm/trunk/test/MC/Sparc/sparc-pic.s
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Sparc/sparc-pic.s?rev=240394&r1=240393&r2=240394&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/test/MC/Sparc/sparc-pic.s (original)
>>> +++ llvm/trunk/test/MC/Sparc/sparc-pic.s Tue Jun 23 06:31:32 2015
>>> @@ -7,8 +7,8 @@
>>> ! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_PC10 _GLOBAL_OFFSET_TABLE_ 0x8
>>> ! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT22 AGlobalVar 0x0
>>> ! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT10 AGlobalVar 0x0
>>> -! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT22 - 0x0
>>> -! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT10 - 0x0
>>> +! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT22 .LC0 0x0
>>> +! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_GOT10 .LC0 0x0
>>> ! CHECK-NEXT:   0x{{[0-9,A-F]+}} R_SPARC_WPLT30 bar 0x0
>>> ! CHECK:      ]
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 194 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150824/3a8964ce/attachment-0001.sig>


More information about the llvm-commits mailing list