[Lldb-commits] [lldb] a33db04 - Add DW_LNAME_HIP (#180999)
via lldb-commits
lldb-commits at lists.llvm.org
Mon Feb 16 10:09:08 PST 2026
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:
More information about the lldb-commits
mailing list