[Lldb-commits] [PATCH] D113634: [lldb] Add support for DW_TAG_immutable_type

Luís Ferreira via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Wed Nov 10 17:29:45 PST 2021


ljmf00 created this revision.
Herald added a reviewer: shafik.
ljmf00 requested review of this revision.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D113634

Files:
  lldb/include/lldb/Symbol/Type.h
  lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
  lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp


Index: lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
===================================================================
--- lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
+++ lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
@@ -268,6 +268,9 @@
   case DW_TAG_const_type:
     s.PutCString("const ");
     break;
+  case DW_TAG_immutable_type:
+    s.PutCString("immutable ");
+    break;
   case DW_TAG_enumeration_type:
     s.PutCString("enum ");
     break;
Index: lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
===================================================================
--- lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
+++ lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
@@ -496,6 +496,7 @@
   case DW_TAG_reference_type:
   case DW_TAG_rvalue_reference_type:
   case DW_TAG_const_type:
+  case DW_TAG_immutable_type:
   case DW_TAG_restrict_type:
   case DW_TAG_volatile_type:
   case DW_TAG_atomic_type:
@@ -646,6 +647,9 @@
   case DW_TAG_const_type:
     encoding_data_type = Type::eEncodingIsConstUID;
     break;
+  case DW_TAG_immutable_type:
+    encoding_data_type = Type::eEncodingIsImmutableUID;
+    break;
   case DW_TAG_restrict_type:
     encoding_data_type = Type::eEncodingIsRestrictUID;
     break;
Index: lldb/include/lldb/Symbol/Type.h
===================================================================
--- lldb/include/lldb/Symbol/Type.h
+++ lldb/include/lldb/Symbol/Type.h
@@ -89,6 +89,9 @@
     eEncodingIsRValueReferenceUID,
     /// This type is the type whose UID is m_encoding_uid as an atomic type.
     eEncodingIsAtomicUID,
+    /// This type is the type whose UID is m_encoding_uid with the immutable
+    /// qualifier added.
+    eEncodingIsImmutableUID,
     /// This type is the synthetic type whose UID is m_encoding_uid.
     eEncodingIsSyntheticUID
   };


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D113634.386371.patch
Type: text/x-patch
Size: 1858 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20211111/5f036e80/attachment-0001.bin>


More information about the lldb-commits mailing list