Rust GCC backend: Why and how
blog.guillaume-gomez.fr
Rust GCC backend: Why and how
1–10 of 138 posts
Re: Rust GCC backend: Why and how
#2Re: Rust GCC backend: Why and how
#3I find it shocking that 20 years after LLVM was created, gcc still hasn't moved towards modularization of codegen.
Re: Rust GCC backend: Why and how
#4I find it shocking that 20 years after LLVM was created, gcc still hasn't moved towards modularization of codegen.
Isn't that very much intentional on the part of GCC?
I am not familiar enough with gcc to know how it impacts out-of-tree free projects or internal development.
The decision was taken a long time ago, it may be worth revisiting it.
Re: Rust GCC backend: Why and how
#5I find it shocking that 20 years after LLVM was created, gcc still hasn't moved towards modularization of codegen.
Isn't that very much intentional on the part of GCC?
The idea is that you should link the front and back ends, to prevent out-of-process GPL runarounds. But because of that, the mingling of the front and back ends ended up winning out over attempts to stay modular.
[0]: https://lists.gnu.org/archive/html/emacs-devel/2015-02/msg00...
[1]: https://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00...
Re: Rust GCC backend: Why and how
#6I'd be very interested if the author could provide a post with a more in depth view of the passes, as suggested!
Re: Rust GCC backend: Why and how
#7Earlier quoted context omitted.
Isn't that very much intentional on the part of GCC?
Somewhat. Stallman claims to have tried to make it modular,[0] but also that he wants to avoid "misuse of [the] front ends".[1] The idea is that you should link the front and back ends, to prevent out-of-process GPL runarounds. But because of that, the mingling of the front and back ends ended up winning out over attempts to stay modular. [0]: https://lists.gnu.org/archive/html/emacs-devel/2015-02/msg00... [1]: https…
Valid points, but also the reason people wanting to create a more modular compiler created LLVM under a different license - the ultimate GPL runaround. OTOH now we have two big and useful compilers!
Re: Rust GCC backend: Why and how
#8Earlier quoted context omitted.
Isn't that very much intentional on the part of GCC?
Somewhat. Stallman claims to have tried to make it modular,[0] but also that he wants to avoid "misuse of [the] front ends".[1] The idea is that you should link the front and back ends, to prevent out-of-process GPL runarounds. But because of that, the mingling of the front and back ends ended up winning out over attempts to stay modular. [0]: https://lists.gnu.org/archive/html/emacs-devel/2015-02/msg00... [1]: https…
--- From the post:
I let this drop back in March -- please forgive me.
> Maybe that's the issue for GCC, but for Emacs the issue is to get detailed
> info out of GCC, which is a different problem. My understanding is that
> you're opposed to GCC providing this useful info because that info would
> need to be complete enough to be usable as input to a proprietary
> compiler backend.
My hope is that we can work out a kind of "detailed output" that is
enough for what Emacs wants, but not enough for misuse of GCC front ends.I don't want to discuss the details on the list, because I think that would mean 50 messages of misunderstanding and tangents for each message that makes progress. Instead, is there anyone here who would like to work on this in detail?
Re: Rust GCC backend: Why and how
#9Earlier quoted context omitted.
Isn't that very much intentional on the part of GCC?
Somewhat. Stallman claims to have tried to make it modular,[0] but also that he wants to avoid "misuse of [the] front ends".[1] The idea is that you should link the front and back ends, to prevent out-of-process GPL runarounds. But because of that, the mingling of the front and back ends ended up winning out over attempts to stay modular. [0]: https://lists.gnu.org/archive/html/emacs-devel/2015-02/msg00... [1]: https…
If you're going to make it hard for anyone anywhere to integrate with your open source tooling for fear of commercial projects abusing them and not ever sharing their changes, why even use the GPL license?
Re: Rust GCC backend: Why and how
#10If the author reads this... I'd be very interested if the author could provide a post with a more in depth view of the passes, as suggested!
Yes, please!