[llvm] r240394 - Revert r240302 ("Bring r240130 back.").
Rafael EspĂndola via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 23 15:26:28 PDT 2015
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
>
More information about the llvm-commits
mailing list