[all-commits] [llvm/llvm-project] b6b3fc: [lldb] Don't iterate over a std::set<Type*> in Sym...
Raphael Isemann via All-commits
all-commits at lists.llvm.org
Mon Mar 2 15:04:14 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: b6b3fcdcb8cdfb887e26d27bee03b997d2d65888
https://github.com/llvm/llvm-project/commit/b6b3fcdcb8cdfb887e26d27bee03b997d2d65888
Author: Raphael Isemann <teemperor at gmail.com>
Date: 2020-03-02 (Mon, 02 Mar 2020)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
Log Message:
-----------
[lldb] Don't iterate over a std::set<Type*> in SymbolFileDWARF::GetTypes to make it deterministic
Summary:
Currently `SymbolFileDWARF::TypeSet` is a typedef to a `std::set<Type *>`.
In `SymbolFileDWARF::GetTypes` we iterate over a TypeSet variable when finding
types so that logic is non-deterministic as it depends on the actual pointer address values.
This patch changes the `TypeSet` to a `llvm::UniqueVector` which always iterates in
the order in which we inserted the types into the list.
Reviewers: JDevlieghere, aprantl
Reviewed By: JDevlieghere
Subscribers: mgrang, abidh, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D75481
More information about the All-commits
mailing list