[PATCH] D82320: [NPM] Attempt to run opt passes specified via -foo-pass under NPM
Yuanfang Chen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 22 19:21:00 PDT 2020
ychen added a comment.
In D82320#2107956 <https://reviews.llvm.org/D82320#2107956>, @aeubanks wrote:
> In D82320#2107899 <https://reviews.llvm.org/D82320#2107899>, @ychen wrote:
>
> > In D82320#2107835 <https://reviews.llvm.org/D82320#2107835>, @aeubanks wrote:
> >
> > > In D82320#2107762 <https://reviews.llvm.org/D82320#2107762>, @ychen wrote:
> > >
> > > > This is great! What are these failures look like? Do they look straightforward to fix?
> > >
> > >
> > > Updated the description.
> > > Most of them are passes either not ported to NPM
> >
> >
> > I would assume most of these are passes for codegen pipeline?
>
>
> No, codegen hasn't really been updated to work with NPM at all. For example we don't even have some sort of MachineFunctionPassManager yet (I found your older https://reviews.llvm.org/D67687 which hasn't been submitted yet).
> Under clang if NPM is enabled, it runs the pre-codegen passes under NPM, but then just runs the codegen passes separately under legacy PM.
> For tests, almost all codegen passes use llc instead of opt. The one odd pass I've run into was CodeGenPrepare, which is pre-codegen, but requires some codegen analysis (MachineModuleAnalysis I believe), which was part of https://reviews.llvm.org/D67687.
Thanks. I'm asking because I have vague memory that there are some codegen IR passes that are driven by `opt` instead of `llc`. But as you said, they are not. I guess @leonardchan got a better idea about our situation on passes (ported/not ported).
>>
>>
>> or don't have the same name in PassRegistry.def as their old name.
>>
>>> I was thinking about potentially creating some wrapper class around old PM passes but I don't think that would work.
>>
>> Not for this patch, how about adding the old name in the PassRegistry.def as an alternative name?
>
> Yes that works for some cases where the pass has been ported to NPM.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D82320/new/
https://reviews.llvm.org/D82320
More information about the llvm-commits
mailing list