[all-commits] [llvm/llvm-project] 6cfc90: [Function] Lock the function when parsing call sit...
Vedant Kumar via All-commits
all-commits at lists.llvm.org
Thu Jul 9 10:37:32 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 6cfc90b9b791a023368b9384f57c2c3120894247
https://github.com/llvm/llvm-project/commit/6cfc90b9b791a023368b9384f57c2c3120894247
Author: Vedant Kumar <vsk at apple.com>
Date: 2020-07-09 (Thu, 09 Jul 2020)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Symbol/Function.cpp
Log Message:
-----------
[Function] Lock the function when parsing call site info
Summary:
DWARF-parsing methods in SymbolFileDWARF which update module state
typically take the module lock. ParseCallEdgesInFunction doesn't do
this, but higher-level locking within lldb::Function (which owns the
storage for parsed call edges) is necessary.
The lack of locking could explain some as-of-yet unreproducible crashes
which occur in Function::GetTailCallingEdges(). In these crashes, the
`m_call_edges` vector is non-empty but contains a nullptr, which
shouldn't be possible. (If this vector is non-empty, it _must_ contain a
non-null unique_ptr.)
This may address rdar://55622443 and rdar://65119458.
Reviewers: jasonmolenda, friss, jingham
Subscribers: aprantl, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D83359
Commit: f8f259ce4aca381896c114738a3d83a90c5c32be
https://github.com/llvm/llvm-project/commit/f8f259ce4aca381896c114738a3d83a90c5c32be
Author: Vedant Kumar <vsk at apple.com>
Date: 2020-07-09 (Thu, 09 Jul 2020)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
Log Message:
-----------
[lldb/Function] Reflow doxygen comments for member variables, NFC
As suggested in the review for https://reviews.llvm.org/D83359.
Compare: https://github.com/llvm/llvm-project/compare/0b72b9d07fcd...f8f259ce4aca
More information about the All-commits
mailing list