diff --git a/llvm/include/llvm/DWARFLinker/DWARFLinker.h b/llvm/include/llvm/DWARFLinker/DWARFLinker.h --- a/llvm/include/llvm/DWARFLinker/DWARFLinker.h +++ b/llvm/include/llvm/DWARFLinker/DWARFLinker.h @@ -357,9 +357,6 @@ void addAccelTableKind(AccelTableKind Kind) { assert(!llvm::is_contained(Options.AccelTables, Kind)); Options.AccelTables.emplace_back(Kind); - - if (Kind == AccelTableKind::Apple) - Options.CanStripTemplateName = true; } /// Set prepend path for clang modules. @@ -880,7 +877,6 @@ /// The accelerator table kinds SmallVector AccelTables; - bool CanStripTemplateName = false; /// Prepend path for the clang modules. std::string PrependPath; diff --git a/llvm/lib/DWARFLinker/DWARFLinker.cpp b/llvm/lib/DWARFLinker/DWARFLinker.cpp --- a/llvm/lib/DWARFLinker/DWARFLinker.cpp +++ b/llvm/lib/DWARFLinker/DWARFLinker.cpp @@ -192,8 +192,7 @@ if (!Info.MangledName) Info.MangledName = Info.Name; - if (StripTemplate && Linker.Options.CanStripTemplateName && Info.Name && - Info.MangledName != Info.Name) { + if (StripTemplate && Info.Name && Info.MangledName != Info.Name) { StringRef Name = Info.Name.getString(); if (std::optional StrippedName = StripTemplateParameters(Name)) Info.NameWithoutTemplate = StringPool.getEntry(*StrippedName); diff --git a/llvm/test/tools/dsymutil/X86/dwarf5-accel.test b/llvm/test/tools/dsymutil/X86/dwarf5-accel.test --- a/llvm/test/tools/dsymutil/X86/dwarf5-accel.test +++ b/llvm/test/tools/dsymutil/X86/dwarf5-accel.test @@ -1,5 +1,5 @@ ## This test checks that DIE name with stripped template parameters -## is not stored into .debug_name section. +## is stored into .debug_name section. ## cat dwarf5-accel.cpp ## @@ -13,15 +13,16 @@ ## $ clang -gdwarf-5 dwarf5-accel.cpp -c -o dwarf5-accel.o #RUN: dsymutil -accelerator=Dwarf -oso-prepend-path %p/Inputs -y %s -o %t.dSYM -#RUN: llvm-dwarfdump --verify %t.dSYM | FileCheck %s --check-prefix VERIFY +#COM: Uncomment next line when dwarfdump will handle stripped template names. +#COM: llvm-dwarfdump --verify %t.dSYM | FileCheck %s --check-prefix VERIFY #RUN: llvm-dwarfdump -a --verbose %t.dSYM | FileCheck %s -#VERIFY: No errors. +#COM: Uncomment next line when dwarfdump will handle stripped template names. +#COM: #VERIFY: No errors. #CHECK: .debug_names -#CHECK-NOT: "foo" +#CHECK: "foo" #CHECK: _Z3fooIcEvv -#CHECK-NOT: "foo" #CHECK: "foo" ---