[llvm] 4010ddf - [MC, AArch64] Create mapping symbols with non-unique names
via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 22 09:03:09 PDT 2024
Author: Fangrui Song
Date: 2024-07-22T09:03:05-07:00
New Revision: 4010ddf780d90c42877c9ab8d28b7e084cfe197e
URL: https://github.com/llvm/llvm-project/commit/4010ddf780d90c42877c9ab8d28b7e084cfe197e
DIFF: https://github.com/llvm/llvm-project/commit/4010ddf780d90c42877c9ab8d28b7e084cfe197e.diff
LOG: [MC,AArch64] Create mapping symbols with non-unique names
Add `createLocalSymbol` to create a local, non-temporary symbol.
Different from `createRenamableSymbol`, the `Used` bit is ignored,
therefore multiple local symbols might share the same name.
Utilizing `createLocalSymbol` in AArch64 allows for efficient mapping
symbol creation with non-unique names, saving .strtab space.
The behavior matches GNU assembler.
Pull Request: https://github.com/llvm/llvm-project/pull/99836
Added:
Modified:
lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
lld/test/ELF/aarch64-gnu-ifunc.s
lld/test/ELF/aarch64-reloc-pauth.s
lld/test/ELF/aarch64-thunk-script.s
lld/test/ELF/basic-aarch64.s
lld/test/ELF/pack-dyn-relocs.s
llvm/include/llvm/MC/MCContext.h
llvm/lib/MC/MCContext.cpp
llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
llvm/test/MC/AArch64/CheckDataSymbol.s
llvm/test/MC/AArch64/mapping-across-sections.s
llvm/test/MC/AArch64/mapping-within-section.s
llvm/test/MC/AArch64/size-directive.s
llvm/test/MC/ELF/AArch64/cfi.s
llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test
Removed:
################################################################################
diff --git a/lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s b/lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
index 608b1aceb0a00..a9b95b1a63ef6 100644
--- a/lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
+++ b/lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
@@ -12,7 +12,7 @@
.type _start, %function
_start: ret
-// CHECK: Name: $x.0
+// CHECK: Name: $x
// CHECK-NEXT: Value: 0x0
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local (0x0)
diff --git a/lld/test/ELF/aarch64-gnu-ifunc.s b/lld/test/ELF/aarch64-gnu-ifunc.s
index d76b54eabf8a4..f39ae0cd84934 100644
--- a/lld/test/ELF/aarch64-gnu-ifunc.s
+++ b/lld/test/ELF/aarch64-gnu-ifunc.s
@@ -37,7 +37,7 @@
// CHECK-NEXT: Section: Undefined
// CHECK-NEXT: }
// CHECK-NEXT: Symbol {
-// CHECK-NEXT: Name: $x.0
+// CHECK-NEXT: Name: $x
// CHECK-NEXT: Value: 0x210188
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local
diff --git a/lld/test/ELF/aarch64-reloc-pauth.s b/lld/test/ELF/aarch64-reloc-pauth.s
index 19493fcfa1365..6b4d23d37babc 100644
--- a/lld/test/ELF/aarch64-reloc-pauth.s
+++ b/lld/test/ELF/aarch64-reloc-pauth.s
@@ -68,11 +68,11 @@
# RELR-EMPTY:
# RELR-NEXT: Relocation section '.relr.auth.dyn' at offset 0x[[ADDR2]] contains 5 entries:
# RELR-NEXT: Index: Entry Address Symbolic Address
-# RELR-NEXT: 0000: 0000000000030440 0000000000030440 $d.0
-# RELR-NEXT: 0001: 000000000000000f 0000000000030448 $d.0 + 0x8
-# RELR-NEXT: 0000000000030450 $d.0 + 0x10
-# RELR-NEXT: 0000000000030458 $d.0 + 0x18
-# RELR-NEXT: 0002: 0000000000030492 0000000000030492 $d.0 + 0x52
+# RELR-NEXT: 0000: 0000000000030440 0000000000030440 $d
+# RELR-NEXT: 0001: 000000000000000f 0000000000030448 $d + 0x8
+# RELR-NEXT: 0000000000030450 $d + 0x10
+# RELR-NEXT: 0000000000030458 $d + 0x18
+# RELR-NEXT: 0002: 0000000000030492 0000000000030492 $d + 0x52
# HEX: Hex dump of section '.test':
# HEX-NEXT: 0x00030440 01000000 2a000020 42040300 2b000000
@@ -201,7 +201,7 @@
# EMPTY-RELA-EMPTY:
# EMPTY-RELA-NEXT: Relocation section '.relr.auth.dyn' at offset {{.+}} contains 1 entries:
# EMPTY-RELA-NEXT: Index: Entry Address Symbolic Address
-# EMPTY-RELA-NEXT: 0000: 0000000000030310 0000000000030310 $d.0
+# EMPTY-RELA-NEXT: 0000: 0000000000030310 0000000000030310 $d
# EMPTY-RELA-RO-NOT: .rela.dyn
diff --git a/lld/test/ELF/aarch64-thunk-script.s b/lld/test/ELF/aarch64-thunk-script.s
index 08ff4e9871180..a6c524f548288 100644
--- a/lld/test/ELF/aarch64-thunk-script.s
+++ b/lld/test/ELF/aarch64-thunk-script.s
@@ -43,8 +43,8 @@ high_target:
// CHECK-NEXT: ret
/// Local symbols copied from %t.o
-// NM: t $x.0
-// NM-NEXT: t $x.1
+// NM: t $x
+// NM-NEXT: t $x
/// Local thunk symbols.
// NM-NEXT: t __AArch64AbsLongThunk_high_target
// NM-NEXT: t $x
diff --git a/lld/test/ELF/basic-aarch64.s b/lld/test/ELF/basic-aarch64.s
index 6b109e8da2c3e..1f59d33c4230b 100644
--- a/lld/test/ELF/basic-aarch64.s
+++ b/lld/test/ELF/basic-aarch64.s
@@ -119,7 +119,7 @@ _start:
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
# CHECK-NEXT: Offset: 0x1AA
-# CHECK-NEXT: Size: 13
+# CHECK-NEXT: Size: 11
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
# CHECK-NEXT: AddressAlignment: 1
@@ -189,7 +189,7 @@ _start:
# CHECK-NEXT: Section: Undefined (0x0)
# CHECK-NEXT: }
# CHECK-NEXT: Symbol {
-# CHECK-NEXT: Name: $x.0
+# CHECK-NEXT: Name: $x
# CHECK-NEXT: Value: 0x210120
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Binding: Local (0x0)
diff --git a/lld/test/ELF/pack-dyn-relocs.s b/lld/test/ELF/pack-dyn-relocs.s
index 3cbba68716972..dd18c92c7352e 100644
--- a/lld/test/ELF/pack-dyn-relocs.s
+++ b/lld/test/ELF/pack-dyn-relocs.s
@@ -264,30 +264,30 @@
// RELR64-EMPTY:
// RELR64-NEXT: Relocation section '.relr.dyn' at offset {{.*}} contains 24 entries:
// RELR64-NEXT: Symbolic Address
-// RELR64-NEXT: $d.0{{$}}
-// RELR64-NEXT: $d.0 + 0x8
-// RELR64-NEXT: $d.0 + 0x10
-// RELR64-NEXT: $d.0 + 0x18
-// RELR64-NEXT: $d.0 + 0x20
-// RELR64-NEXT: $d.0 + 0x28
-// RELR64-NEXT: $d.0 + 0x30
-// RELR64-NEXT: $d.0 + 0x38
-// RELR64-NEXT: $d.0 + 0x48
-// RELR64-NEXT: $d.0 + 0x50
-// RELR64-NEXT: $d.0 + 0x58
-// RELR64-NEXT: $d.0 + 0x60
-// RELR64-NEXT: $d.0 + 0x68
-// RELR64-NEXT: $d.0 + 0x70
-// RELR64-NEXT: $d.0 + 0x78
-// RELR64-NEXT: $d.0 + 0x90
-// RELR64-NEXT: $d.0 + 0x98
-// RELR64-NEXT: $d.0 + 0xa0
-// RELR64-NEXT: $d.0 + 0xa8
-// RELR64-NEXT: $d.0 + 0xb0
-// RELR64-NEXT: $d.0 + 0xb8
-// RELR64-NEXT: $d.0 + 0xc0
-// RELR64-NEXT: $d.0 + 0xc8
-// RELR64-NEXT: $d.0 + 0xd0
+// RELR64-NEXT: $d{{$}}
+// RELR64-NEXT: $d + 0x8
+// RELR64-NEXT: $d + 0x10
+// RELR64-NEXT: $d + 0x18
+// RELR64-NEXT: $d + 0x20
+// RELR64-NEXT: $d + 0x28
+// RELR64-NEXT: $d + 0x30
+// RELR64-NEXT: $d + 0x38
+// RELR64-NEXT: $d + 0x48
+// RELR64-NEXT: $d + 0x50
+// RELR64-NEXT: $d + 0x58
+// RELR64-NEXT: $d + 0x60
+// RELR64-NEXT: $d + 0x68
+// RELR64-NEXT: $d + 0x70
+// RELR64-NEXT: $d + 0x78
+// RELR64-NEXT: $d + 0x90
+// RELR64-NEXT: $d + 0x98
+// RELR64-NEXT: $d + 0xa0
+// RELR64-NEXT: $d + 0xa8
+// RELR64-NEXT: $d + 0xb0
+// RELR64-NEXT: $d + 0xb8
+// RELR64-NEXT: $d + 0xc0
+// RELR64-NEXT: $d + 0xc8
+// RELR64-NEXT: $d + 0xd0
// RELR64-EMPTY:
// RELR64-NEXT: Hex dump of section '.data':
// RELR64-NEXT: 0x00030490 90040300 00000000 91040300 00000000 .
diff --git a/llvm/include/llvm/MC/MCContext.h b/llvm/include/llvm/MC/MCContext.h
index 4c2be7353cdd6..57ba40f7ac26f 100644
--- a/llvm/include/llvm/MC/MCContext.h
+++ b/llvm/include/llvm/MC/MCContext.h
@@ -468,6 +468,10 @@ class MCContext {
/// true, behaves like getOrCreateSymbol, prefixed with PrivateLabelPrefix.
MCSymbol *createBlockSymbol(const Twine &Name, bool AlwaysEmit = false);
+ /// Create a local, non-temporary symbol like an ELF mapping symbol. Calling
+ /// the function with the same name will generate new, unique instances.
+ MCSymbol *createLocalSymbol(StringRef Name);
+
/// Create the definition of a directional local symbol for numbered label
/// (used for "1:" definitions).
MCSymbol *createDirectionalLocalSymbol(unsigned LocalLabelVal);
diff --git a/llvm/lib/MC/MCContext.cpp b/llvm/lib/MC/MCContext.cpp
index 44853f3bf43f3..228c4fb03a276 100644
--- a/llvm/lib/MC/MCContext.cpp
+++ b/llvm/lib/MC/MCContext.cpp
@@ -349,6 +349,11 @@ MCSymbol *MCContext::createNamedTempSymbol() {
return createNamedTempSymbol("tmp");
}
+MCSymbol *MCContext::createLocalSymbol(StringRef Name) {
+ MCSymbolTableEntry &NameEntry = getSymbolTableEntry(Name);
+ return createSymbolImpl(&NameEntry, /*IsTemporary=*/false);
+}
+
unsigned MCContext::NextInstance(unsigned LocalLabelVal) {
MCLabel *&Label = Instances[LocalLabelVal];
if (!Label)
diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
index 27751633017ca..ed670bce594ec 100644
--- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
+++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
@@ -181,7 +181,7 @@ class AArch64ELFStreamer : public MCELFStreamer {
std::unique_ptr<MCCodeEmitter> Emitter)
: MCELFStreamer(Context, std::move(TAB), std::move(OW),
std::move(Emitter)),
- MappingSymbolCounter(0), LastEMS(EMS_None) {}
+ LastEMS(EMS_None) {}
void changeSection(MCSection *Section, uint32_t Subsection = 0) override {
// We have to keep track of the mapping symbol state of any sections we
@@ -195,7 +195,6 @@ class AArch64ELFStreamer : public MCELFStreamer {
// Reset state between object emissions
void reset() override {
- MappingSymbolCounter = 0;
MCELFStreamer::reset();
LastMappingSymbols.clear();
LastEMS = EMS_None;
@@ -271,15 +270,12 @@ class AArch64ELFStreamer : public MCELFStreamer {
}
void emitMappingSymbol(StringRef Name) {
- auto *Symbol = cast<MCSymbolELF>(getContext().getOrCreateSymbol(
- Name + "." + Twine(MappingSymbolCounter++)));
+ auto *Symbol = cast<MCSymbolELF>(getContext().createLocalSymbol(Name));
emitLabel(Symbol);
Symbol->setType(ELF::STT_NOTYPE);
Symbol->setBinding(ELF::STB_LOCAL);
}
- int64_t MappingSymbolCounter;
-
DenseMap<const MCSection *, ElfMappingSymbol> LastMappingSymbols;
ElfMappingSymbol LastEMS;
};
diff --git a/llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll b/llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
index e601f03d524a4..8b6740667a229 100644
--- a/llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
+++ b/llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
@@ -7,10 +7,10 @@
@l = common hidden local_unnamed_addr global i32 0, align 4
; CHECK-LABEL: <test1>:
-; CHECK-LABEL: <$d.1>:
-; CHECK-LABEL: <$x.2>:
+; CHECK-LABEL: <$d>:
+; CHECK-LABEL: <$x>:
; CHECK-NEXT: b 0x2c <test1+0x2c>
-; CHECK-LABEL: <$x.4>:
+; CHECK-LABEL: <$x>:
; CHECK-NEXT: mov w0, wzr
; CHECK-NEXT: ldr x30, [sp], #16
; CHECK-NEXT: ret
@@ -41,8 +41,8 @@ declare dso_local i32 @i(...) local_unnamed_addr
; CHECK-LABEL: <test2>:
; CHECK: b {{.*}} <test2+0x1c>
-; CHECK-LABEL: <$d.5>:
-; CHECK-LABEL: <$x.6>:
+; CHECK-LABEL: <$d>:
+; CHECK-LABEL: <$x>:
; CHECK-NEXT: b {{.*}} <test2+0x18>
define hidden i32 @test2() local_unnamed_addr {
%1 = load i32, ptr @l, align 4
@@ -70,10 +70,10 @@ define hidden i32 @test2() local_unnamed_addr {
}
; CHECK-LABEL: <test3>:
-; CHECK-LABEL: <$d.9>:
-; CHECK-LABEL: <$x.10>:
+; CHECK-LABEL: <$d>:
+; CHECK-LABEL: <$x>:
; CHECK-NEXT: b {{.*}} <test3+0x34>
-; CHECK-LABEL: <$x.12>:
+; CHECK-LABEL: <$x>:
; CHECK-NEXT: ldr x30, [sp], #16
; CHECK-NEXT: ret
define internal i1 @test3() {
diff --git a/llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll b/llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
index f2b5e5f0064b7..f3623928d67bf 100644
--- a/llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
+++ b/llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
@@ -16,7 +16,7 @@ entry:
; CHECK: 58000040 ldr x0, 0x10
; CHECK: d65f03c0 ret
; Make sure the constant pool entry comes after the return
-; CHECK-LABEL: <$d.1>:
+; CHECK-LABEL: <$d>:
define i32 @bar() nounwind {
entry:
%0 = tail call i32 asm sideeffect "ldr $0,=0x10001", "=r"() nounwind
diff --git a/llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s b/llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
index 2f1140cf62910..6990a82c4acfe 100644
--- a/llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
+++ b/llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
@@ -7,9 +7,9 @@
## addresses.
# RUN: llvm-nm --special-syms %t | FileCheck %s -check-prefix MAPPING_SYM
-# MAPPING_SYM: 0000000000000000 t $d.0
-# MAPPING_SYM-NEXT: 000000000000000c t $d.2
-# MAPPING_SYM-NEXT: 0000000000000004 t $x.1
+# MAPPING_SYM: 0000000000000000 t $d
+# MAPPING_SYM-NEXT: 000000000000000c t $d
+# MAPPING_SYM-NEXT: 0000000000000004 t $x
# MAPPING_SYM-NEXT: 0000000000000000 T foo
# RUN: llvm-symbolizer --obj=%t 0 4 0xc | FileCheck %s -check-prefix SYMBOL
diff --git a/llvm/test/MC/AArch64/CheckDataSymbol.s b/llvm/test/MC/AArch64/CheckDataSymbol.s
index baa1158984386..13d1db7da091b 100644
--- a/llvm/test/MC/AArch64/CheckDataSymbol.s
+++ b/llvm/test/MC/AArch64/CheckDataSymbol.s
@@ -1,7 +1,7 @@
# RUN: llvm-mc -filetype=obj -assemble \
# RUN: -triple=aarch64- %s -o - \
# RUN: | llvm-readobj -S --symbols - | FileCheck %s
-# CHECK: Name: $d.1 ({{[1-9][0-9]+}})
+# CHECK: Name: $d ({{[1-9][0-9]+}})
# CHECK-NEXT: Value: 0x4
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Binding: Local (0x0)
diff --git a/llvm/test/MC/AArch64/mapping-across-sections.s b/llvm/test/MC/AArch64/mapping-across-sections.s
index 6bb5a8811b57d..f453c86d45fb6 100644
--- a/llvm/test/MC/AArch64/mapping-across-sections.s
+++ b/llvm/test/MC/AArch64/mapping-across-sections.s
@@ -1,4 +1,4 @@
-// RUN: llvm-mc -triple=aarch64 -filetype=obj %s | llvm-objdump -t - | FileCheck %s
+// RUN: llvm-mc -triple=aarch64 -filetype=obj %s | llvm-objdump -t - | FileCheck %s --match-full-lines
.section .text1,"ax"
add w0, w0, w0
@@ -28,13 +28,13 @@ add w0, w0, w0
.section ".note.GNU-stack","", at progbits
// CHECK: SYMBOL TABLE:
-// CHECK-NEXT: 0000000000000000 l .text1 0000000000000000 $x.0
-// CHECK-NEXT: 0000000000000000 l .text 0000000000000000 $x.1
-// CHECK-NEXT: 0000000000000004 l .text 0000000000000000 $d.2
-// CHECK-NEXT: 0000000000000000 l .data 0000000000000000 $d.3
-// CHECK-NEXT: 0000000000000008 l .text 0000000000000000 $x.4
-// CHECK-NEXT: 000000000000000c l .text 0000000000000000 $d.5
-// CHECK-NEXT: 0000000000000000 l .rodata 0000000000000000 $d.6
-// CHECK-NEXT: 0000000000000004 l .rodata 0000000000000000 $x.7
-// CHECK-NEXT: 0000000000000000 l .comment 0000000000000000 $d.8
+// CHECK-NEXT: 0000000000000000 l .text1 0000000000000000 $x
+// CHECK-NEXT: 0000000000000000 l .text 0000000000000000 $x
+// CHECK-NEXT: 0000000000000004 l .text 0000000000000000 $d
+// CHECK-NEXT: 0000000000000000 l .data 0000000000000000 $d
+// CHECK-NEXT: 0000000000000008 l .text 0000000000000000 $x
+// CHECK-NEXT: 000000000000000c l .text 0000000000000000 $d
+// CHECK-NEXT: 0000000000000000 l .rodata 0000000000000000 $d
+// CHECK-NEXT: 0000000000000004 l .rodata 0000000000000000 $x
+// CHECK-NEXT: 0000000000000000 l .comment 0000000000000000 $d
// CHECK-NOT: {{.}}
diff --git a/llvm/test/MC/AArch64/mapping-within-section.s b/llvm/test/MC/AArch64/mapping-within-section.s
index 07a2d3cc0fed9..c84e3a4d2fe64 100644
--- a/llvm/test/MC/AArch64/mapping-within-section.s
+++ b/llvm/test/MC/AArch64/mapping-within-section.s
@@ -1,4 +1,4 @@
-// RUN: llvm-mc -triple=aarch64-none-linux-gnu -filetype=obj %s | llvm-nm --special-syms - | FileCheck %s
+// RUN: llvm-mc -triple=aarch64-none-linux-gnu -filetype=obj %s | llvm-nm --no-sort --special-syms - | FileCheck %s --match-full-lines
.text
// $x at 0x0000
@@ -18,6 +18,13 @@
// $x at 0x0018
add x0, x0, x0
-// CHECK: 0000000000000004 t $d.1
-// CHECK-NEXT: 0000000000000000 t $x.0
-// CHECK-NEXT: 0000000000000064 t $x.2
+.globl $d
+$d:
+$x:
+
+// CHECK: 0000000000000000 t $x
+// CHECK-NEXT: 0000000000000004 t $d
+// CHECK-NEXT: 0000000000000064 t $x
+// CHECK-NEXT: 0000000000000068 t $x
+// CHECK-NEXT: 0000000000000068 T $d
+// CHECK-NOT: {{.}}
diff --git a/llvm/test/MC/AArch64/size-directive.s b/llvm/test/MC/AArch64/size-directive.s
index 0b19cda4eaa1e..d9bdf970cf68b 100644
--- a/llvm/test/MC/AArch64/size-directive.s
+++ b/llvm/test/MC/AArch64/size-directive.s
@@ -32,7 +32,7 @@ aarch64_size:
// CHECK-OBJ-NEXT: )
// SYMS: Type Bind Vis Ndx Name
-// SYMS: NOTYPE LOCAL DEFAULT 3 $d.0
+// SYMS: NOTYPE LOCAL DEFAULT 3 $d{{$}}
// SYMS-NEXT: FUNC GLOBAL DEFAULT 3 aarch64_size
// SYMS-NEXT: NOTYPE GLOBAL DEFAULT UND half_word
// SYMS-NEXT: NOTYPE GLOBAL DEFAULT UND full_word
diff --git a/llvm/test/MC/ELF/AArch64/cfi.s b/llvm/test/MC/ELF/AArch64/cfi.s
index 033c8d9c04094..6bdf03cc7bb85 100644
--- a/llvm/test/MC/ELF/AArch64/cfi.s
+++ b/llvm/test/MC/ELF/AArch64/cfi.s
@@ -227,7 +227,7 @@ f37:
.cfi_endproc
// CHECK: Section {
-// CHECK: Name: .eh_frame (20)
+// CHECK: Name: .eh_frame
// CHECK-NEXT: Type: SHT_PROGBITS (0x1)
// CHECK-NEXT: Flags [ (0x2)
// CHECK-NEXT: SHF_ALLOC (0x2)
@@ -355,7 +355,7 @@ f37:
// CHECK-NEXT: )
// CHECK-NEXT: }
// CHECK: Section {
-// CHECK: Name: .rela.eh_frame (15)
+// CHECK: Name: .rela.eh_frame
// CHECK-NEXT: Type: SHT_RELA (0x4)
// CHECK-NEXT: Flags [ (0x40)
// CHECK-NEXT: SHF_INFO_LINK (0x40)
diff --git a/llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test b/llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test
index cf24952a2d8d4..011e67cda8c32 100644
--- a/llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test
+++ b/llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test
@@ -4,11 +4,11 @@
# CHECK: Disassembly of section .mysection:
# CHECK-EMPTY:
-# ALL-NEXT: <$x.0>:
+# ALL-NEXT: <$x>:
# CHECK-NEXT: <_start>:
# CHECK-NEXT: 0: 10000021 adr x1, 0x4
# CHECK-EMPTY:
-# ALL-NEXT: <$d.1>:
+# ALL-NEXT: <$d>:
# CHECK-NEXT: <msg>:
# CHECK-NEXT: 4: 48 65 6c 6c .word
# CHECK-NEXT: 8: 6f 2c 20 77 .word
@@ -18,10 +18,10 @@
# CHECK-NEXT: Disassembly of section .myothersection:
# CHECK-EMPTY:
# NOALL-NEXT: <.myothersection>:
-# ALL-NEXT: <$x.2>:
+# ALL-NEXT: <$x>:
# CHECK-NEXT: 0: 90000001 adrp x1, 0x0
# CHECK-EMPTY:
-# ALL-NEXT: <$d.3>:
+# ALL-NEXT: <$d>:
# CHECK-NEXT: <mystr>:
# CHECK-NEXT: 4: 62 6c 61 68 .word
# CHECK-NEXT: 8: 9a .byte 0x9a
More information about the llvm-commits
mailing list