================
@@ -190,7 +190,59 @@ void ObjectFileXCOFF::ParseSymtab(Symtab &lldb_symtab) {}
 
 bool ObjectFileXCOFF::IsStripped() { return false; }
 
-void ObjectFileXCOFF::CreateSections(SectionList &unified_section_list) {}
+void ObjectFileXCOFF::CreateSections(SectionList &unified_section_list) {
+  if (m_sections_up)
+    return;
+
+  m_sections_up = std::make_unique<SectionList>();
+  ModuleSP module_sp(GetModule());
+
+  if (!module_sp)
+    return;
+
+  std::lock_guard<std::recursive_mutex> guard(module_sp->GetMutex());
+
+  const auto &sections = m_binary->sections64();
+  int idx = 0;
+  for (size_t i = 0; i < sections.size(); ++i) {
+    const llvm::object::XCOFFSectionHeader64 &section = sections[i];
----------------
labath wrote:

Does this not work for some reason?

```suggestion
  int idx = 0;
  for (const llvm::object::XCOFFSectionHeader64 &section = 
m_binary->sections64()) {
```

https://github.com/llvm/llvm-project/pull/131304
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to