diff options
author | Seiya Nuta <nuta@seiya.me> | 2019-10-28 15:40:37 +0900 |
---|---|---|
committer | Seiya Nuta <nuta@seiya.me> | 2019-10-28 16:00:20 +0900 |
commit | 7f19dd1ebff0456feaf18437bb231856b6e49b5c (patch) | |
tree | cd2df1153e4fec073471b5347977b359ba8bddec /llvm/tools/llvm-objcopy/MachO/Object.cpp | |
parent | f4d7caf6df819d18b4d5b460d21f7f8fe1e1b705 (diff) | |
download | bcm5719-llvm-7f19dd1ebff0456feaf18437bb231856b6e49b5c.tar.gz bcm5719-llvm-7f19dd1ebff0456feaf18437bb231856b6e49b5c.zip |
[llvm-objcopy][MachO] Implement --only-section
Reviewers: alexshap, rupprecht, jdoerfert, jhenderson
Reviewed By: alexshap, rupprecht, jhenderson
Subscribers: mgorny, jakehehrlich, abrachet, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65541
Diffstat (limited to 'llvm/tools/llvm-objcopy/MachO/Object.cpp')
-rw-r--r-- | llvm/tools/llvm-objcopy/MachO/Object.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/tools/llvm-objcopy/MachO/Object.cpp b/llvm/tools/llvm-objcopy/MachO/Object.cpp index 264f39c28ed..ba3e2ef8ba4 100644 --- a/llvm/tools/llvm-objcopy/MachO/Object.cpp +++ b/llvm/tools/llvm-objcopy/MachO/Object.cpp @@ -10,6 +10,13 @@ const SymbolEntry *SymbolTable::getSymbolByIndex(uint32_t Index) const { return Symbols[Index].get(); } +void Object::removeSections(function_ref<bool(const Section &)> ToRemove) { + for (LoadCommand &LC : LoadCommands) + LC.Sections.erase(std::remove_if(std::begin(LC.Sections), + std::end(LC.Sections), ToRemove), + std::end(LC.Sections)); +} + } // end namespace macho } // end namespace objcopy } // end namespace llvm |