[all-commits] [llvm/llvm-project] 705788: [clang][analyzer] Improve BlockInCriticalSections...

Endre Fülöp via All-commits all-commits at lists.llvm.org
Mon Mar 18 09:56:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 705788c84623b4f1dab72a108e039a0de2d53cf6
      https://github.com/llvm/llvm-project/commit/705788c84623b4f1dab72a108e039a0de2d53cf6
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/test/Analysis/block-in-critical-section.cpp

  Log Message:
  -----------
   [clang][analyzer] Improve BlockInCriticalSectionsChecker (#80029)

* Add support for multiple, potentially overlapping critical sections:
  The checker can now simultaneously handle several mutex's critical
  sections without confusing them.
* Implement the handling of recursive mutexes:
  By identifying the lock events, recursive mutexes are now supported.
  A lock event is a pair of a lock expression, and the SVal of the mutex
  that it locks, so even multiple locks of the same mutex (and even by
  the same expression) is now supported.
* Refine the note tags generated by the checker:
  The note tags now correctly show just for mutexes that are
  active at the point of error, and multiple acquisitions of the same mutex
  are also noted.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list