Rui Ueyama via llvm-dev
2017-Oct-28 23:07 UTC
[llvm-dev] lld: Merging Symbol and SymbolBody
Hi guys, I'm planning to merge Symbol and SymbolBody into one unified class, Symbol in lld. That would be a pretty much mechanical change, but because symbols are used everywhere, the patch would be a large one. This mail is to heads-up, and if you have any concern, please let me know. Background: Symbol and SymbolBody are defined as separate classes for a historical reason. Symbol used to be a pointer to SymbolBody, and the relationship between Symbol and SymbolBody was 1:n. However, because Peter made a change to allocate them next to each other, the relationship is now 1:1. So, there's no reason to keep them separated anymore. Unifying them simplifies the relationships between symbol classes. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171028/cea8c28e/attachment.html>
Rui Ueyama via llvm-dev
2017-Oct-29 16:20 UTC
[llvm-dev] lld: Merging Symbol and SymbolBody
I created this patch https://reviews.llvm.org/D39406 to merge them. It isn't as worrisome as I originally thought. I think it's rather small and mechanical change. On Sat, Oct 28, 2017 at 4:07 PM, Rui Ueyama <ruiu at google.com> wrote:> Hi guys, > > I'm planning to merge Symbol and SymbolBody into one unified class, Symbol > in lld. That would be a pretty much mechanical change, but because symbols > are used everywhere, the patch would be a large one. > > This mail is to heads-up, and if you have any concern, please let me know. > > Background: > > Symbol and SymbolBody are defined as separate classes for a historical > reason. Symbol used to be a pointer to SymbolBody, and the relationship > between Symbol and SymbolBody was 1:n. However, because Peter made a change > to allocate them next to each other, the relationship is now 1:1. So, > there's no reason to keep them separated anymore. Unifying them simplifies > the relationships between symbol classes. >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171029/b57f97c7/attachment.html>