[llvm] [DebugInfo][RemoveDIs] Find types hidden in DbgRecords (PR #106547)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 29 05:50:08 PDT 2024
================
@@ -88,6 +88,18 @@ void TypeFinder::run(const Module &M, bool onlyNamed) {
for (const auto &MD : MDForInst)
incorporateMDNode(MD.second);
MDForInst.clear();
+
+ // Incorporate types hiding in variable-location information.
+ for (const auto &Dbg : I.getDbgRecordRange()) {
+ // Pick out records that have Values.
+ if (Dbg.getRecordKind() != DbgRecord::Kind::ValueKind)
+ continue;
+ const DbgVariableRecord &DVI =
+ static_cast<const DbgVariableRecord &>(Dbg);
----------------
nikic wrote:
Prefer dyn_cast?
```suggestion
if (const DbgVariableRecord *DVI =
dyn_cast<const DbgVariableRecord>(Dbg)) {
```
https://github.com/llvm/llvm-project/pull/106547
More information about the llvm-commits
mailing list