Doerfert, Johannes via llvm-dev
2020-Jun-11 14:28 UTC
[llvm-dev] [flang-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
On 6/11/20 3:32 AM, Andrzej Warzynski wrote:> > > On 11/06/2020 00:49, Michael Kruse wrote: >> Am Mi., 10. Juni 2020 um 10:04 Uhr schrieb Doerfert, Johannes via >> flang-dev <flang-dev at lists.llvm.org>: >>> I'm not against a subproject *but* if we also move the existing >>> llvm/lib/Frontend stuff, that would introduce a dependence from >>> llvm-core to this project, which I think is uncommon. We could also >>> have >>> both. At the end of the day it depends on the benefit we would get from >>> an independent subproject. >> >> If we have non-conditional dependencies llvm-core->frontend-support >> and frontend-support->llvm-core, what advantage is there left of >> making frontend-support a subproject? Both of them are required all >> the time. >> >> Michael >> > > Thanks for the feedback! It sounds like we should keep > llvm/lib/Frontend in LLVM and `frontend-support` would be a new > subproject for things unrelated to LLVM IR.Sure, if we expect usage of such a subproject without llvm-core. (Maybe there are other reasons to separate it but I'm not sure I understood them.) Thanks, Johannes> > -Andrzej
James Y Knight via llvm-dev
2020-Jun-11 21:04 UTC
[llvm-dev] [cfe-dev] [flang-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
I think the expectation is that LLVM remains at the bottom of the dependency tree, with frontend-support depending on LLVM, and Clang and Flang depending on frontend-support (and LLVM). Not everything which makes sense to share between clang and flang makes sense to be part of llvm core. E.g., implementation of a GCC-compatible command-line compiler-driver seems like it would be very much out-of-place in llvm core. On Thu, Jun 11, 2020 at 10:28 AM Doerfert, Johannes via cfe-dev < cfe-dev at lists.llvm.org> wrote:> On 6/11/20 3:32 AM, Andrzej Warzynski wrote: > > > > > > On 11/06/2020 00:49, Michael Kruse wrote: > >> Am Mi., 10. Juni 2020 um 10:04 Uhr schrieb Doerfert, Johannes via > >> flang-dev <flang-dev at lists.llvm.org>: > >>> I'm not against a subproject *but* if we also move the existing > >>> llvm/lib/Frontend stuff, that would introduce a dependence from > >>> llvm-core to this project, which I think is uncommon. We could also > >>> have > >>> both. At the end of the day it depends on the benefit we would get from > >>> an independent subproject. > >> > >> If we have non-conditional dependencies llvm-core->frontend-support > >> and frontend-support->llvm-core, what advantage is there left of > >> making frontend-support a subproject? Both of them are required all > >> the time. > >> > >> Michael > >> > > > > Thanks for the feedback! It sounds like we should keep > > llvm/lib/Frontend in LLVM and `frontend-support` would be a new > > subproject for things unrelated to LLVM IR. > > Sure, if we expect usage of such a subproject without llvm-core. (Maybe > there are other reasons to separate it but I'm not sure I understood them.) > > > Thanks, > > Johannes > > > > > > -Andrzej > > > _______________________________________________ > cfe-dev mailing list > cfe-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200611/1e16b37a/attachment.html>
Doerfert, Johannes via llvm-dev
2020-Jun-11 22:06 UTC
[llvm-dev] [cfe-dev] [flang-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
On 6/11/20 4:04 PM, James Y Knight wrote:> I think the expectation is that LLVM remains at the bottom of the > dependency tree, with frontend-support depending on LLVM, and Clang and > Flang depending on frontend-support (and LLVM). > > Not everything which makes sense to share between clang and flang makes > sense to be part of llvm core. E.g., implementation of a GCC-compatible > command-line compiler-driver seems like it would be very much out-of-place > in llvm core.That clears things up, thanks a lot. So we could have a frontend-support subproject for non-LLVM(-IR) related things and `llvm/lib/Frontend` for LLVM(-IR) related stuff, e.g., IR generation parts. Thanks, Johannes> On Thu, Jun 11, 2020 at 10:28 AM Doerfert, Johannes via cfe-dev < > cfe-dev at lists.llvm.org> wrote: > >> On 6/11/20 3:32 AM, Andrzej Warzynski wrote: >>> >>> On 11/06/2020 00:49, Michael Kruse wrote: >>>> Am Mi., 10. Juni 2020 um 10:04 Uhr schrieb Doerfert, Johannes via >>>> flang-dev <flang-dev at lists.llvm.org>: >>>>> I'm not against a subproject *but* if we also move the existing >>>>> llvm/lib/Frontend stuff, that would introduce a dependence from >>>>> llvm-core to this project, which I think is uncommon. We could also >>>>> have >>>>> both. At the end of the day it depends on the benefit we would get from >>>>> an independent subproject. >>>> If we have non-conditional dependencies llvm-core->frontend-support >>>> and frontend-support->llvm-core, what advantage is there left of >>>> making frontend-support a subproject? Both of them are required all >>>> the time. >>>> >>>> Michael >>>> >>> Thanks for the feedback! It sounds like we should keep >>> llvm/lib/Frontend in LLVM and `frontend-support` would be a new >>> subproject for things unrelated to LLVM IR. >> Sure, if we expect usage of such a subproject without llvm-core. (Maybe >> there are other reasons to separate it but I'm not sure I understood them.) >> >> >> Thanks, >> >> Johannes >> >> >>> -Andrzej >> >> _______________________________________________ >> cfe-dev mailing list >> cfe-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev >>
Reasonably Related Threads
- [flang-dev] [cfe-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
- [flang-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
- [flang-dev] [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
- [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM
- [RFC] Refactor Clang: move frontend/driver/diagnostics code to LLVM