[all-commits] [llvm/llvm-project] a2fc96: [ELF] Replace SymbolTable::forEachSymbol with iter...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Tue Nov 26 09:11:39 PST 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: a2fc96441788fba1e4709d63677f34ed8e321dae
https://github.com/llvm/llvm-project/commit/a2fc96441788fba1e4709d63677f34ed8e321dae
Author: Fangrui Song <maskray at google.com>
Date: 2019-11-26 (Tue, 26 Nov 2019)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/LTO.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SymbolTable.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Replace SymbolTable::forEachSymbol with iterator_range symbols()
D62381 introduced forEachSymbol(). It seems that many call sites cannot
be parallelized because the body shared some states. Replace
forEachSymbol with iterator_range<filter_iterator<...>> symbols() to
simplify code and improve debuggability (std::function calls take some
frames).
It also allows us to use early return to simplify code added in D69650.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D70505
More information about the All-commits
mailing list