On Thu, Jun 25, 2020 at 9:59 AM Roman Lebedev <lebedev.ri at gmail.com> wrote:> On Thu, Jun 25, 2020 at 7:48 PM Arthur Eubanks via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > > > After talking with some NPM people, I believe the ultimate goal after > NPM is enabled by default is to only support `-passes=`, and remove support > for `-foo-pass`. > Hm, is there any written rationale behind such a decision? > I would have thought that -passes= is the temporary solution, not the > other way around. >This is really a separate issue that's somewhat orthogonal to the original issue, but someone like asbirlea may be able to chime in more. Maybe a new RFC thread?> > > However, until NPM is enabled by default, we still want tests using opt > to use the legacy PM by default. > > We could attempt to make `-passes=` work with the legacy PM and have a > legacy vs new PM flag, but given the design/syntax of `-passes=` I don't > think that's feasible (see llvm/include/llvm/Passes/PassBuilder.h). > > So for making sure everything works with NPM, I think we need to support > `-foo-pass` in NPM to be able to run all opt tests against NPM. Then at > some point after NPM is enabled by default we can attempt to migrate > everything to `-passes=`. > > Roman. >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200625/08bbda59/attachment.html>
Agree with @Arthur Eubanks<mailto:aeubanks at google.com> that we could leave the discussion (legacy PM versus new PM) on 1. Option compatibility 2. Pass name compatibility to the future. IMHO, the current issue about test correctness parity between legacy and new PM regarding pass name should be done with least disruptive way. Name alias seems to be proper to achieve that. - Yuanfang From: llvm-dev <llvm-dev-bounces at lists.llvm.org> On Behalf Of Arthur Eubanks via llvm-dev Sent: Thursday, June 25, 2020 10:09 AM To: Roman Lebedev <lebedev.ri at gmail.com> Cc: llvm-dev <llvm-dev at lists.llvm.org>; Alina Sbirlea <asbirlea at google.com> Subject: Re: [llvm-dev] Renaming passes On Thu, Jun 25, 2020 at 9:59 AM Roman Lebedev <lebedev.ri at gmail.com<mailto:lebedev.ri at gmail.com>> wrote: On Thu, Jun 25, 2020 at 7:48 PM Arthur Eubanks via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote:> > After talking with some NPM people, I believe the ultimate goal after NPM is enabled by default is to only support `-passes=`, and remove support for `-foo-pass`.Hm, is there any written rationale behind such a decision? I would have thought that -passes= is the temporary solution, not the other way around. This is really a separate issue that's somewhat orthogonal to the original issue, but someone like asbirlea may be able to chime in more. Maybe a new RFC thread?> However, until NPM is enabled by default, we still want tests using opt to use the legacy PM by default. > We could attempt to make `-passes=` work with the legacy PM and have a legacy vs new PM flag, but given the design/syntax of `-passes=` I don't think that's feasible (see llvm/include/llvm/Passes/PassBuilder.h). > So for making sure everything works with NPM, I think we need to support `-foo-pass` in NPM to be able to run all opt tests against NPM. Then at some point after NPM is enabled by default we can attempt to migrate everything to `-passes=`.Roman. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200625/d651f124/attachment.html>
Hi, First of all, I agree that the discussion on whether to keep `-passes=...` or `-foo-pass` is a separate discussion and deserves its own RFC thread. I don't know of a written rationale for the decision to move forward only with `passes=...`. This was mostly discussed verbally, and no firm decision is yet in place. I believe the high-level motivation was the precision/clarity with which the `passes=...` format can describe a pass pipeline (one example from the recent compatibility patch is that NPM cannot have AA passes arbitrarily interleaved with module/function/loop, it's using an AA pipeline instead). I'd suggest having a broader discussion on pros/cons, either now or after the switch to the NPM, as the community prefers. Thanks, Alina On Thu, Jun 25, 2020 at 11:20 AM Chen, Yuanfang <Yuanfang.Chen at sony.com> wrote:> Agree with @Arthur Eubanks <aeubanks at google.com> that we could leave the > discussion (legacy PM versus new PM) on 1. Option compatibility 2. Pass > name compatibility to the future. IMHO, the current issue about test > correctness parity between legacy and new PM regarding pass name should be > done with least disruptive way. Name alias seems to be proper to achieve > that. > > > > - Yuanfang > > > > *From:* llvm-dev <llvm-dev-bounces at lists.llvm.org> *On Behalf Of *Arthur > Eubanks via llvm-dev > *Sent:* Thursday, June 25, 2020 10:09 AM > *To:* Roman Lebedev <lebedev.ri at gmail.com> > *Cc:* llvm-dev <llvm-dev at lists.llvm.org>; Alina Sbirlea < > asbirlea at google.com> > *Subject:* Re: [llvm-dev] Renaming passes > > > > > > > > On Thu, Jun 25, 2020 at 9:59 AM Roman Lebedev <lebedev.ri at gmail.com> > wrote: > > On Thu, Jun 25, 2020 at 7:48 PM Arthur Eubanks via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > > > After talking with some NPM people, I believe the ultimate goal after > NPM is enabled by default is to only support `-passes=`, and remove support > for `-foo-pass`. > Hm, is there any written rationale behind such a decision? > I would have thought that -passes= is the temporary solution, not the > other way around. > > This is really a separate issue that's somewhat orthogonal to the original > issue, but someone like asbirlea may be able to chime in more. Maybe a new > RFC thread? > > > > However, until NPM is enabled by default, we still want tests using opt > to use the legacy PM by default. > > We could attempt to make `-passes=` work with the legacy PM and have a > legacy vs new PM flag, but given the design/syntax of `-passes=` I don't > think that's feasible (see llvm/include/llvm/Passes/PassBuilder.h). > > So for making sure everything works with NPM, I think we need to support > `-foo-pass` in NPM to be able to run all opt tests against NPM. Then at > some point after NPM is enabled by default we can attempt to migrate > everything to `-passes=`. > > Roman. > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200625/5d31ed34/attachment.html>