[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-13 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar edited https://github.com/llvm/llvm-project/pull/139252 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-13 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar updated https://github.com/llvm/llvm-project/pull/139252 >From c5ffbd84f8b68bae2112e8cec68803cefe571a72 Mon Sep 17 00:00:00 2001 From: Jacques Pienaar Date: Fri, 9 May 2025 05:23:00 -0700 Subject: [PATCH 1/5] [lldb][plugin] Clear in same thread as set Here we were i

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. Thanks. https://github.com/llvm/llvm-project/pull/139252 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar updated https://github.com/llvm/llvm-project/pull/139252 Rate limit ยท GitHub body { background-color: #f6f8fa; color: #24292e; font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Pavel Labath via lldb-commits
labath wrote: > But if plain counter preferred, will switch to that. That is the first idea that crossed my mind, I'm not saying its the best one. I'm not really sure how would a condition variable help here (like, you still need some kind of a counter to trigger the condition), but I'm open t

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Pavel Labath via lldb-commits
@@ -189,17 +189,23 @@ DWARFUnit::ScopedExtractDIEs DWARFUnit::ExtractDIEsScoped() { } DWARFUnit::ScopedExtractDIEs::ScopedExtractDIEs(DWARFUnit &cu) : m_cu(&cu) { - m_cu->m_die_array_scoped_mutex.lock_shared(); + llvm::sys::ScopedLock lock(m_cu->m_die_array_scoped_mutex); +

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar updated https://github.com/llvm/llvm-project/pull/139252 >From c5ffbd84f8b68bae2112e8cec68803cefe571a72 Mon Sep 17 00:00:00 2001 From: Jacques Pienaar Date: Fri, 9 May 2025 05:23:00 -0700 Subject: [PATCH 1/3] [lldb][plugin] Clear in same thread as set Here we were i

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Jacques Pienaar via lldb-commits
jpienaar wrote: I agree a condition variable would work here. I realized this later too (wanted all destroyed at end), one could do that as follows too // In ManualDWARFIndex ... std::vector clear_cu_dies; clear_cu_dies.reserve(units_to_index.size()); for (auto &unit : units_to_index

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-12 Thread Pavel Labath via lldb-commits
https://github.com/labath requested changes to this pull request. This defeats the purpose of storing the sentinel object -- the goal was to clear it only after performing all the indexing. I think the ScopedExtractDIEs object needs to be implemented differently. It uses the RWMutex as a count

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-11 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar updated https://github.com/llvm/llvm-project/pull/139252 >From c5ffbd84f8b68bae2112e8cec68803cefe571a72 Mon Sep 17 00:00:00 2001 From: Jacques Pienaar Date: Fri, 9 May 2025 05:23:00 -0700 Subject: [PATCH 1/2] [lldb][plugin] Clear in same thread as set Here we were i

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-09 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar updated https://github.com/llvm/llvm-project/pull/139252 >From c5ffbd84f8b68bae2112e8cec68803cefe571a72 Mon Sep 17 00:00:00 2001 From: Jacques Pienaar Date: Fri, 9 May 2025 05:23:00 -0700 Subject: [PATCH 1/2] [lldb][plugin] Clear in same thread as set Here we were i

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-09 Thread via lldb-commits
llvmbot wrote: @llvm/pr-subscribers-lldb Author: Jacques Pienaar (jpienaar) Changes Here we were initializing & locking a shared_mutex in a thread, while releasing it in the parent which may/often turned out to be a different thread (shared_mutex::unlock_shared is undefined behavior if c

[Lldb-commits] [lldb] [lldb][plugin] Clear in same thread as set (PR #139252)

2025-05-09 Thread Jacques Pienaar via lldb-commits
https://github.com/jpienaar created https://github.com/llvm/llvm-project/pull/139252 Here we were initializing & locking a shared_mutex in a thread, while releasing it in the parent which may/often turned out to be a different thread (shared_mutex::unlock_shared is undefined behavior if called