I think I bought up this topic before, but I'd like to propose seriously removing the Native file format from LLD this time. IIUC, the Native file format was designed to be the fastest on-memory or on-disk file format for object files. The problem is that no one is working on that. No LLVM tools can produce object files in the Native, thus the feature of supporting the format is useless in the linker. I'm also skeptical about the very idea of defining a new file format since existing file formats look to be good enough. It's maintenance cost is real. I needed to submit a few patches for the Native format for global refactoring. Here I'm proposing removing the Native file format support from LLD unless there's a person who's going to take the ownership of the feature and push really hard to adopt the file format everywhere (not only in the linker). Opinions? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150409/f795f2b3/attachment.html>
On Thu, Apr 9, 2015 at 10:17 PM, Rui Ueyama <ruiu at google.com> wrote:> IIUC, the Native file format was designed to be the fastest on-memory or > on-disk file format for object files. The problem is that no one is working > on that. No LLVM tools can produce object files in the Native, thus the > feature of supporting the format is useless in the linker. > > I'm also skeptical about the very idea of defining a new file format since > existing file formats look to be good enough. > > It's maintenance cost is real. I needed to submit a few patches for the > Native format for global refactoring. > > Here I'm proposing removing the Native file format support from LLD unless > there's a person who's going to take the ownership of the feature and push > really hard to adopt the file format everywhere (not only in the linker).I agree that we need to stop supporting the Native file format. Now it is completely useless and just requires additional effort for maintenance. If we decide to support it again in the future it will not too hard to restore it. -- Simon Atanasyan
On Thu, Apr 9, 2015 at 12:17 PM, Rui Ueyama <ruiu at google.com> wrote:> I think I bought up this topic before, but I'd like to propose seriously > removing the Native file format from LLD this time. > > IIUC, the Native file format was designed to be the fastest on-memory or > on-disk file format for object files. The problem is that no one is working > on that. No LLVM tools can produce object files in the Native, thus the > feature of supporting the format is useless in the linker. > > I'm also skeptical about the very idea of defining a new file format since > existing file formats look to be good enough. > > It's maintenance cost is real. I needed to submit a few patches for the > Native format for global refactoring. > > Here I'm proposing removing the Native file format support from LLD unless > there's a person who's going to take the ownership of the feature and push > really hard to adopt the file format everywhere (not only in the linker). > > Opinions?With my FreeBSD hat on: FreeBSD doesn't talk anything that's not ELF, it's already pretty time-expensive implementing full support for that to even think about a different format. With my LLD hat on: I've been slowed down from time to time because my patches didn't have support for YAML or Native format. I personally would be very happy to not have to worry about yet-another-different-format that at the time of writing is just incomplete enough to be meaningful. Thanks, -- Davide "There are no solved problems; there are only problems that are more or less solved" -- Henri Poincare
+1. If we ever decide we want to conspire between LLD and LLVM to use a fast custom object file format, we can try again with buy-in from LLVM MC contributors. On Thu, Apr 9, 2015 at 12:17 PM, Rui Ueyama <ruiu at google.com> wrote:> I think I bought up this topic before, but I'd like to propose seriously > removing the Native file format from LLD this time. > > IIUC, the Native file format was designed to be the fastest on-memory or > on-disk file format for object files. The problem is that no one is working > on that. No LLVM tools can produce object files in the Native, thus the > feature of supporting the format is useless in the linker. > > I'm also skeptical about the very idea of defining a new file format since > existing file formats look to be good enough. > > It's maintenance cost is real. I needed to submit a few patches for the > Native format for global refactoring. > > Here I'm proposing removing the Native file format support from LLD unless > there's a person who's going to take the ownership of the feature and push > really hard to adopt the file format everywhere (not only in the linker). > > Opinions? > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150409/e7dc6b85/attachment.html>
On Thu, Apr 9, 2015 at 1:04 PM, Davide Italiano <davide at freebsd.org> wrote:> On Thu, Apr 9, 2015 at 12:17 PM, Rui Ueyama <ruiu at google.com> wrote: > > I think I bought up this topic before, but I'd like to propose seriously > > removing the Native file format from LLD this time. > > > > IIUC, the Native file format was designed to be the fastest on-memory or > > on-disk file format for object files. The problem is that no one is > working > > on that. No LLVM tools can produce object files in the Native, thus the > > feature of supporting the format is useless in the linker. > > > > I'm also skeptical about the very idea of defining a new file format > since > > existing file formats look to be good enough. > > > > It's maintenance cost is real. I needed to submit a few patches for the > > Native format for global refactoring. > > > > Here I'm proposing removing the Native file format support from LLD > unless > > there's a person who's going to take the ownership of the feature and > push > > really hard to adopt the file format everywhere (not only in the linker). > > > > Opinions? > > With my FreeBSD hat on: > FreeBSD doesn't talk anything that's not ELF, it's already pretty > time-expensive implementing full support for that to even think about > a different format. > With my LLD hat on: > I've been slowed down from time to time because my patches didn't have > support for YAML or Native format. I personally would be very happy to > not have to worry about yet-another-different-format that at the time > of writing is just incomplete enough to be meaningful. >Yup, I was slowed down too. I think the situation was mitigated because I removed the round-trip tests, which required us to serialize/de-serialize intermediate linker results from/to on-disk files, but yeah, it's there like tax. I'm not proposing removing YAML though, since it's useful for writing tests. I want to stop supporting the Native. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150409/454c89fd/attachment.html>
On Thu, Apr 9, 2015 at 12:17 PM, Rui Ueyama <ruiu at google.com> wrote:> I think I bought up this topic before, but I'd like to propose seriously > removing the Native file format from LLD this time. > > IIUC, the Native file format was designed to be the fastest on-memory or > on-disk file format for object files. The problem is that no one is working > on that. No LLVM tools can produce object files in the Native, thus the > feature of supporting the format is useless in the linker. > > I'm also skeptical about the very idea of defining a new file format since > existing file formats look to be good enough. > > It's maintenance cost is real. I needed to submit a few patches for the > Native format for global refactoring. > > Here I'm proposing removing the Native file format support from LLD unless > there's a person who's going to take the ownership of the feature and push > really hard to adopt the file format everywhere (not only in the linker). > > Opinions?I'm fine with it, we can add it back when lld is further along if needed. - Michael Spencer
I sent a patch for review. I'll wait for a while, probably submit that tomorrow. On Thu, Apr 9, 2015 at 2:14 PM, Michael Spencer <bigcheesegs at gmail.com> wrote:> On Thu, Apr 9, 2015 at 12:17 PM, Rui Ueyama <ruiu at google.com> wrote: > > I think I bought up this topic before, but I'd like to propose seriously > > removing the Native file format from LLD this time. > > > > IIUC, the Native file format was designed to be the fastest on-memory or > > on-disk file format for object files. The problem is that no one is > working > > on that. No LLVM tools can produce object files in the Native, thus the > > feature of supporting the format is useless in the linker. > > > > I'm also skeptical about the very idea of defining a new file format > since > > existing file formats look to be good enough. > > > > It's maintenance cost is real. I needed to submit a few patches for the > > Native format for global refactoring. > > > > Here I'm proposing removing the Native file format support from LLD > unless > > there's a person who's going to take the ownership of the feature and > push > > really hard to adopt the file format everywhere (not only in the linker). > > > > Opinions? > > I'm fine with it, we can add it back when lld is further along if needed. > > - Michael Spencer >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150409/04fee01e/attachment.html>