diff options
| author | Arthur Eubanks <aeubanks@google.com> | 2023-08-25 18:21:00 -0700 |
|---|---|---|
| committer | Arthur Eubanks <aeubanks@google.com> | 2023-08-25 18:34:15 -0700 |
| commit | 0a4fc4ac1c6e74eba7eb184d3da11772a06df65f (patch) | |
| tree | 7a4609631f01ed99dc348b70c1f04c7bcd446069 /llvm/lib/DebugInfo/CodeView | |
| parent | 08ed557714eed7f5cde9d1c5606f58280683884a (diff) | |
Revert "Emit the CodeView `S_ARMSWITCHTABLE` debug symbol for jump tables"
This reverts commit 8d0c3db388143f4e058b5f513a70fd5d089d51c3.
Causes crashes, see comments in https://reviews.llvm.org/D149367.
Some follow-up fixes are also reverted:
This reverts commit 636269f4fca44693bfd787b0a37bb0328ffcc085.
This reverts commit 5966079cf4d4de0285004eef051784d0d9f7a3a6.
This reverts commit e7294dbc85d24a08c716d9babbe7f68390cf219b.
Diffstat (limited to 'llvm/lib/DebugInfo/CodeView')
| -rw-r--r-- | llvm/lib/DebugInfo/CodeView/EnumTables.cpp | 18 | ||||
| -rw-r--r-- | llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp | 14 | ||||
| -rw-r--r-- | llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp | 13 | ||||
| -rw-r--r-- | llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp | 1 |
4 files changed, 0 insertions, 46 deletions
diff --git a/llvm/lib/DebugInfo/CodeView/EnumTables.cpp b/llvm/lib/DebugInfo/CodeView/EnumTables.cpp index 7e3087373bfa..b2f0099bd01c 100644 --- a/llvm/lib/DebugInfo/CodeView/EnumTables.cpp +++ b/llvm/lib/DebugInfo/CodeView/EnumTables.cpp @@ -434,20 +434,6 @@ static const EnumEntry<uint16_t> LabelTypeEnum[] = { CV_ENUM_CLASS_ENT(LabelType, Far), }; -static const EnumEntry<uint16_t> JumpTableEntrySizeNames[] = { - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Int8), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, UInt8), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Int16), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, UInt16), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Int32), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, UInt32), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Pointer), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, UInt8ShiftLeft), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, UInt16ShiftLeft), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Int8ShiftLeft), - CV_ENUM_CLASS_ENT(JumpTableEntrySize, Int16ShiftLeft), -}; - namespace llvm { namespace codeview { @@ -573,9 +559,5 @@ ArrayRef<EnumEntry<uint16_t>> getLabelTypeEnum() { return ArrayRef(LabelTypeEnum); } -ArrayRef<EnumEntry<uint16_t>> getJumpTableEntrySizeNames() { - return ArrayRef(JumpTableEntrySizeNames); -} - } // end namespace codeview } // end namespace llvm diff --git a/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp b/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp index c86fb244f688..cfb12dbae845 100644 --- a/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp +++ b/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp @@ -643,20 +643,6 @@ Error CVSymbolDumperImpl::visitKnownRecord(CVSymbol &CVR, return Error::success(); } -Error CVSymbolDumperImpl::visitKnownRecord(CVSymbol &CVR, - JumpTableSym &JumpTable) { - W.printHex("BaseOffset", JumpTable.BaseOffset); - W.printNumber("BaseSegment", JumpTable.BaseSegment); - W.printEnum("SwitchType", static_cast<uint16_t>(JumpTable.SwitchType), - getJumpTableEntrySizeNames()); - W.printHex("BranchOffset", JumpTable.BranchOffset); - W.printHex("TableOffset", JumpTable.TableOffset); - W.printNumber("BranchSegment", JumpTable.BranchSegment); - W.printNumber("TableSegment", JumpTable.TableSegment); - W.printNumber("EntriesCount", JumpTable.EntriesCount); - return Error::success(); -} - Error CVSymbolDumperImpl::visitUnknownSymbol(CVSymbol &CVR) { W.printNumber("Length", CVR.length()); return Error::success(); diff --git a/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp b/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp index b5e366b965a9..3b627930e271 100644 --- a/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp +++ b/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp @@ -483,19 +483,6 @@ Error SymbolRecordMapping::visitKnownRecord(CVSymbol &CVR, return Error::success(); } -Error SymbolRecordMapping::visitKnownRecord(CVSymbol &CVR, - JumpTableSym &JumpTable) { - error(IO.mapInteger(JumpTable.BaseOffset)); - error(IO.mapInteger(JumpTable.BaseSegment)); - error(IO.mapEnum(JumpTable.SwitchType)); - error(IO.mapInteger(JumpTable.BranchOffset)); - error(IO.mapInteger(JumpTable.TableOffset)); - error(IO.mapInteger(JumpTable.BranchSegment)); - error(IO.mapInteger(JumpTable.TableSegment)); - error(IO.mapInteger(JumpTable.EntriesCount)); - return Error::success(); -} - RegisterId codeview::decodeFramePtrReg(EncodedFramePtrReg EncodedReg, CPUType CPU) { assert(unsigned(EncodedReg) < 4); diff --git a/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp b/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp index e903a37a8c8e..682747a2b81f 100644 --- a/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp +++ b/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp @@ -442,7 +442,6 @@ static bool discoverTypeIndices(ArrayRef<uint8_t> Content, SymbolKind Kind, case SymbolKind::S_THUNK32: case SymbolKind::S_FRAMECOOKIE: case SymbolKind::S_UNAMESPACE: - case SymbolKind::S_ARMSWITCHTABLE: break; // Scope ending symbols. case SymbolKind::S_END: |
