[llvm] [llvm-debuginfo-analyzer] Add support for parsing DWARF / CodeView SourceLanguage (PR #137223)

Carlos Alberto Enciso via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 30 04:09:39 PDT 2025


================
@@ -19,6 +20,23 @@ using namespace llvm;
 using namespace llvm::codeview;
 using namespace llvm::logicalview;
 
+StringRef LVSourceLanguage::getName() const {
+  if (!isValid())
+    return {};
+  switch (Language.index()) {
+  case 1: // DWARF
+    return llvm::dwarf::LanguageString(
+        std::get<llvm::dwarf::SourceLanguage>(Language));
+  case 2: // CodeView
+  {
+    static auto LangNames = llvm::codeview::getSourceLanguageNames();
+    return LangNames[std::get<llvm::codeview::SourceLanguage>(Language)].Name;
+  }
+  default:
+    llvm_unreachable("Unsupported language");
+  }
+}
+
----------------
CarlosAlbertoEnciso wrote:

This logic can be used to store the `language string` in the `StringPool`.

https://github.com/llvm/llvm-project/pull/137223


More information about the llvm-commits mailing list