[PATCH] D120486: [objcopy] Refactor CommonConfig to add posibility to specify added/updated sections as MemoryBuffer.
James Henderson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 25 05:43:20 PST 2022
jhenderson added inline comments.
================
Comment at: llvm/include/llvm/ObjCopy/CommonConfig.h:199
+ StringRef SectionName;
+ std::shared_ptr<MemoryBuffer> SectionData;
+};
----------------
avl wrote:
> jhenderson wrote:
> > Why `shared_ptr`?
> There are many cases where CommonConfig and ConfigManager are copied using "copy" semantic. unique_ptr should be copied with "move" semantic. if unique_ptr would be used here then we need to write strange copy operator:
>
>
> ```
> NewSectionInfo& operator=(const NewSectionInfo& Other) {
> SectionData = std::move(const_cast<NewSectionInfo*>(&Other)->SectionData);
> }
> ```
>
>
> There are many cases where CommonConfig and ConfigManager are copied using "copy" semantic
Do they need to copy though? It seems like a reference should be enough.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D120486/new/
https://reviews.llvm.org/D120486
More information about the llvm-commits
mailing list