Author: accauble Date: 2026-02-16T18:09:04Z New Revision: a33db04a63f4aa03178905529e01c4dcd5412cf8
URL: https://github.com/llvm/llvm-project/commit/a33db04a63f4aa03178905529e01c4dcd5412cf8 DIFF: https://github.com/llvm/llvm-project/commit/a33db04a63f4aa03178905529e01c4dcd5412cf8.diff LOG: Add DW_LNAME_HIP (#180999) In PR #89980, DW_LNAME_HIP was not added because of a value conflict with DW_LNAME_Assembly. The value of DW_LNAME_HIP has been updated (see https://dwarfstd.org/languages-v6.html). This commit adds DW_LNAME_HIP. Tests added by that PR accommodates the new SourceLanguageName. Added: Modified: lldb/unittests/Target/LanguageTest.cpp llvm/include/llvm/BinaryFormat/Dwarf.def llvm/include/llvm/BinaryFormat/Dwarf.h llvm/lib/BinaryFormat/Dwarf.cpp Removed: ################################################################################ diff --git a/lldb/unittests/Target/LanguageTest.cpp b/lldb/unittests/Target/LanguageTest.cpp index 720863bda68e4..f2e51a9e6cd87 100644 --- a/lldb/unittests/Target/LanguageTest.cpp +++ b/lldb/unittests/Target/LanguageTest.cpp @@ -26,11 +26,7 @@ TEST_F(LanguageTest, SourceLanguage_GetDescription) { auto lang_type = static_cast<lldb::LanguageType>(i); SourceLanguage lang(lang_type); - // eLanguageTypeHIP is not implemented as a DW_LNAME because of a conflict. - if (lang_type == lldb::eLanguageTypeHIP) - EXPECT_FALSE(lang); - else - EXPECT_TRUE(lang); + EXPECT_TRUE(lang); } EXPECT_EQ(SourceLanguage(eLanguageTypeC_plus_plus).GetDescription(), diff --git a/llvm/include/llvm/BinaryFormat/Dwarf.def b/llvm/include/llvm/BinaryFormat/Dwarf.def index fbf22cc6f760b..75f1061c471c6 100644 --- a/llvm/include/llvm/BinaryFormat/Dwarf.def +++ b/llvm/include/llvm/BinaryFormat/Dwarf.def @@ -1072,7 +1072,6 @@ HANDLE_DW_LNAME(0x001a, Swift, "Swift", 0) // VVMM HANDLE_DW_LNAME(0x001b, UPC, "Unified Parallel C (UPC)", 0) HANDLE_DW_LNAME(0x001c, Zig, "Zig", 0) HANDLE_DW_LNAME(0x001d, Assembly, "Assembly", 0) -// Conflict: HANDLE_DW_LNAME(0x001d, HIP, "HIP", 0) HANDLE_DW_LNAME(0x001e, C_sharp, "C#", 0) HANDLE_DW_LNAME(0x001f, Mojo, "Mojo", 0) HANDLE_DW_LNAME(0x0020, GLSL, "OpenGL Shading Language", 0) // VVMMPP @@ -1084,6 +1083,7 @@ HANDLE_DW_LNAME(0x0025, SYCL, "SYCL", 0) // YYYYRR HANDLE_DW_LNAME(0x0026, Ruby, "Ruby", 0) // VVMMPP HANDLE_DW_LNAME(0x0027, Move, "Move", 0) // YYYYMM HANDLE_DW_LNAME(0x0028, Hylo, "Hylo", 0) +HANDLE_DW_LNAME(0x0029, HIP, "HIP", 0) HANDLE_DW_LNAME(0x002c, Metal, "Metal", 0) // VVMMPP // DWARF attribute type encodings. diff --git a/llvm/include/llvm/BinaryFormat/Dwarf.h b/llvm/include/llvm/BinaryFormat/Dwarf.h index 211c0269c1f29..f4583e5bff924 100644 --- a/llvm/include/llvm/BinaryFormat/Dwarf.h +++ b/llvm/include/llvm/BinaryFormat/Dwarf.h @@ -301,8 +301,8 @@ inline std::optional<SourceLanguage> toDW_LANG(SourceLanguageName name, return DW_LANG_Go; case DW_LNAME_Haskell: return DW_LANG_Haskell; - // case DW_LNAME_HIP: - // return DW_LANG_HIP; + case DW_LNAME_HIP: + return DW_LANG_HIP; case DW_LNAME_Java: return DW_LANG_Java; case DW_LNAME_Julia: @@ -430,7 +430,7 @@ toDW_LNAME(SourceLanguage language) { case DW_LANG_Haskell: return {{DW_LNAME_Haskell, 0}}; case DW_LANG_HIP: - return {}; // return {{DW_LNAME_HIP, 0}}; + return {{DW_LNAME_HIP, 0}}; case DW_LANG_Java: return {{DW_LNAME_Java, 0}}; case DW_LANG_Julia: diff --git a/llvm/lib/BinaryFormat/Dwarf.cpp b/llvm/lib/BinaryFormat/Dwarf.cpp index a6c7e6afdbe7a..f31ca8caf886e 100644 --- a/llvm/lib/BinaryFormat/Dwarf.cpp +++ b/llvm/lib/BinaryFormat/Dwarf.cpp @@ -550,6 +550,7 @@ StringRef llvm::dwarf::LanguageDescription(dwarf::SourceLanguageName Name, case DW_LNAME_Dylan: case DW_LNAME_Go: case DW_LNAME_Haskell: + case DW_LNAME_HIP: case DW_LNAME_HLSL: case DW_LNAME_Java: case DW_LNAME_Julia: _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
